signature-based gr bner basis algorithms in singularederc/download/elagb.pdf · signature-based...
Post on 16-Oct-2020
0 Views
Preview:
TRANSCRIPT
Signature-based Grobner basis algorithms inSingular
Christian Eder
University of Kaiserslautern
June 06, 2012
1 / 18
Preliminaries
Conventions
◮ R = K [x1, . . . , xn], K field, < well-ordering onMon(x1, . . . , xn)
2 / 18
Preliminaries
Conventions
◮ R = K [x1, . . . , xn], K field, < well-ordering onMon(x1, . . . , xn)
◮ f ∈ R can be represented in a unique way by <.⇒ Definitions as lc(f ), lm(f ), and lt(f ) make sense.
2 / 18
Preliminaries
Conventions
◮ R = K [x1, . . . , xn], K field, < well-ordering onMon(x1, . . . , xn)
◮ f ∈ R can be represented in a unique way by <.⇒ Definitions as lc(f ), lm(f ), and lt(f ) make sense.
◮ An ideal I in R is an additive subgroup of R such that forf ∈ I , g ∈ R it holds that fg ∈ I .
2 / 18
Preliminaries
Conventions
◮ R = K [x1, . . . , xn], K field, < well-ordering onMon(x1, . . . , xn)
◮ f ∈ R can be represented in a unique way by <.⇒ Definitions as lc(f ), lm(f ), and lt(f ) make sense.
◮ An ideal I in R is an additive subgroup of R such that forf ∈ I , g ∈ R it holds that fg ∈ I .
◮ G = {g1, . . . , gs} ⊂ R is a Grobner basis of I = 〈f1, . . . , fm〉w.r.t. <
:⇐⇒
L<(G ) = L<(I )
⇐⇒
For all f , g ∈ G spol(f , g) reduces to zero w.r.t. G .2 / 18
1 The basic problem
2 Generic signature-based algorithmsThe basic ideaGeneric signature-based Grobner basis algorithmSignature-based criteria
3 Implementations and recent workEfficient variantsTimingsRecent work
3 / 18
How to predict zero reductions?
Example
Let I = 〈g1, g2〉 ∈ Q[x , y , z ] be given where g1 = xy − z2,g2 = y2 − z2, and let < be the graded reverse lexicographicalordering.
4 / 18
How to predict zero reductions?
Example
Let I = 〈g1, g2〉 ∈ Q[x , y , z ] be given where g1 = xy − z2,g2 = y2 − z2, and let < be the graded reverse lexicographicalordering.
spol(g2, g1) = xg2 − yg1 = xy2 − xz2 − xy2 + yz2
= −xz2 + yz2,
so it reduces w.r.t. G to g3 = xz2 − yz2.
4 / 18
How to predict zero reductions?
Example
Let I = 〈g1, g2〉 ∈ Q[x , y , z ] be given where g1 = xy − z2,g2 = y2 − z2, and let < be the graded reverse lexicographicalordering.
spol(g2, g1) = xg2 − yg1 = xy2 − xz2 − xy2 + yz2
= −xz2 + yz2,
so it reduces w.r.t. G to g3 = xz2 − yz2.
spol(g3, g1) = xyz2 − y2z2 − xyz2 + z4 = −y2z2 + z4.
4 / 18
How to predict zero reductions?
Example
Let I = 〈g1, g2〉 ∈ Q[x , y , z ] be given where g1 = xy − z2,g2 = y2 − z2, and let < be the graded reverse lexicographicalordering.
spol(g2, g1) = xg2 − yg1 = xy2 − xz2 − xy2 + yz2
= −xz2 + yz2,
so it reduces w.r.t. G to g3 = xz2 − yz2.
spol(g3, g1) = xyz2 − y2z2 − xyz2 + z4 = −y2z2 + z4.
We can reduce even further with z2g2:
−y2z2 + z4 + y2z2 − z4 = 0.
4 / 18
How to predict zero reductions?
Example
Let I = 〈g1, g2〉 ∈ Q[x , y , z ] be given where g1 = xy − z2,g2 = y2 − z2, and let < be the graded reverse lexicographicalordering.
spol(g2, g1) = xg2 − yg1 = xy2 − xz2 − xy2 + yz2
= −xz2 + yz2,
so it reduces w.r.t. G to g3 = xz2 − yz2.
spol(g3, g1) = xyz2 − y2z2 − xyz2 + z4 = −y2z2 + z4.
We can reduce even further with z2g2:
−y2z2 + z4 + y2z2 − z4 = 0.
⇒ How can we discard such zero reductions in advance?4 / 18
1 The basic problem
2 Generic signature-based algorithmsThe basic ideaGeneric signature-based Grobner basis algorithmSignature-based criteria
3 Implementations and recent workEfficient variantsTimingsRecent work
5 / 18
Signatures of polynomials
Let I = 〈f1, . . . , fm〉.Idea: Give each f ∈ I a bit more structure:
6 / 18
Signatures of polynomials
Let I = 〈f1, . . . , fm〉.Idea: Give each f ∈ I a bit more structure:
1. Let Rm be generated by e1, . . . , em, ≺ a well-ordering on themonomials of Rm, and let π : Rm → R such that
π(ei ) = fi for all i .
6 / 18
Signatures of polynomials
Let I = 〈f1, . . . , fm〉.Idea: Give each f ∈ I a bit more structure:
1. Let Rm be generated by e1, . . . , em, ≺ a well-ordering on themonomials of Rm, and let π : Rm → R such that
π(ei ) = fi for all i .
2. Each p ∈ I can be represented by an
s =m∑
i=1
hiei ∈ Rm such that p = π(s).
6 / 18
Signatures of polynomials
Let I = 〈f1, . . . , fm〉.Idea: Give each f ∈ I a bit more structure:
1. Let Rm be generated by e1, . . . , em, ≺ a well-ordering on themonomials of Rm, and let π : Rm → R such that
π(ei ) = fi for all i .
2. Each p ∈ I can be represented by an
s =m∑
i=1
hiei ∈ Rm such that p = π(s).
3. A signature of p is given by
sig(p) = lm≺(s) with p = π(s).
6 / 18
Signatures of polynomials
Let I = 〈f1, . . . , fm〉.Idea: Give each f ∈ I a bit more structure:
1. Let Rm be generated by e1, . . . , em, ≺ a well-ordering on themonomials of Rm, and let π : Rm → R such that
π(ei ) = fi for all i .
2. Each p ∈ I can be represented by an
s =m∑
i=1
hiei ∈ Rm such that p = π(s).
3. A signature of p is given by
sig(p) = lm≺(s) with p = π(s).
4. A minimal signature of p exists due to ≺.6 / 18
Our example – now with signatures and ≺pot
We have already computed the following data:
g1 = xy − z2, sig(g1) = e1,
g2 = y2 − z2, sig(g2) = e2,
g3 = spol(g2, g1) = xg2 − yg1
⇒ sig(g3) = x sig(g2) = xe2.
7 / 18
Our example – now with signatures and ≺pot
We have already computed the following data:
g1 = xy − z2, sig(g1) = e1,
g2 = y2 − z2, sig(g2) = e2,
g3 = spol(g2, g1) = xg2 − yg1
⇒ sig(g3) = x sig(g2) = xe2.
spol(g3, g1) = yg3 − z2g1:
sig (spol(g3, g1)) = y sig(g3) = xye2.
7 / 18
Our example – now with signatures and ≺pot
We have already computed the following data:
g1 = xy − z2, sig(g1) = e1,
g2 = y2 − z2, sig(g2) = e2,
g3 = spol(g2, g1) = xg2 − yg1
⇒ sig(g3) = x sig(g2) = xe2.
spol(g3, g1) = yg3 − z2g1:
sig (spol(g3, g1)) = y sig(g3) = xye2.
Note that sig (spol(g3, g1)) = xye2 and lm(g1) = xy .
7 / 18
Our example – now with signatures and ≺pot
We have already computed the following data:
g1 = xy − z2, sig(g1) = e1,
g2 = y2 − z2, sig(g2) = e2,
g3 = spol(g2, g1) = xg2 − yg1
⇒ sig(g3) = x sig(g2) = xe2.
spol(g3, g1) = yg3 − z2g1:
sig (spol(g3, g1)) = y sig(g3) = xye2.
Note that sig (spol(g3, g1)) = xye2 and lm(g1) = xy .
⇒ We know that spol(g3, g1) will reduce to zero w.r.t. G .
7 / 18
Why do we know this?
The general idea is to check the signatures of the generateds-polynomials.
8 / 18
Why do we know this?
The general idea is to check the signatures of the generateds-polynomials.
If sig(
spol(f , g))
is not minimal for spol(f , g) then⇒ spol(f , g) is discarded.
8 / 18
Why do we know this?
The general idea is to check the signatures of the generateds-polynomials.
If sig(
spol(f , g))
is not minimal for spol(f , g) then⇒ spol(f , g) is discarded.
Our goal
Find and discard as many s-polynomials as possible for which thealgorithm computes a non-minimal signature.
8 / 18
Why do we know this?
The general idea is to check the signatures of the generateds-polynomials.
If sig(
spol(f , g))
is not minimal for spol(f , g) then⇒ spol(f , g) is discarded.
Our goal
Find and discard as many s-polynomials as possible for which thealgorithm computes a non-minimal signature.
Our task
We need to take care of the correctness of the signaturesthroughout the computations.
8 / 18
Generic signature-based Grobner basis algorithm
Input: Ideal I = 〈f1, . . . , fm〉Output: Grobner Basis poly(G) for I
1. G ← ∅
2. G ← G ∪ {(ei , fi )} for all i ∈ {1, . . . ,m}
3. P ← {(gi , gj ) | gi , gj ∈ G , i > j}
9 / 18
Generic signature-based Grobner basis algorithm
Input: Ideal I = 〈f1, . . . , fm〉Output: Grobner Basis poly(G) for I
1. G ← ∅
2. G ← G ∪ {(ei , fi )} for all i ∈ {1, . . . ,m}
3. P ← {(gi , gj ) | gi , gj ∈ G , i > j}
4. While P 6= ∅
(a) Choose (f , g) ∈ P such that sig (spol(f , g)) minimal,P ← P \ {(f , g)}
(b) If sig (spol(f , g)) minimal for spol(f , g):
9 / 18
Generic signature-based Grobner basis algorithm
Input: Ideal I = 〈f1, . . . , fm〉Output: Grobner Basis poly(G) for I
1. G ← ∅
2. G ← G ∪ {(ei , fi )} for all i ∈ {1, . . . ,m}
3. P ← {(gi , gj ) | gi , gj ∈ G , i > j}
4. While P 6= ∅
(a) Choose (f , g) ∈ P such that sig (spol(f , g)) minimal,P ← P \ {(f , g)}
(b) If sig (spol(f , g)) minimal for spol(f , g):
(i) h← spol(f , g)
(ii) If poly(h)G−→ 0
9 / 18
Generic signature-based Grobner basis algorithm
Input: Ideal I = 〈f1, . . . , fm〉Output: Grobner Basis poly(G) for I
1. G ← ∅
2. G ← G ∪ {(ei , fi )} for all i ∈ {1, . . . ,m}
3. P ← {(gi , gj ) | gi , gj ∈ G , i > j}
4. While P 6= ∅
(a) Choose (f , g) ∈ P such that sig (spol(f , g)) minimal,P ← P \ {(f , g)}
(b) If sig (spol(f , g)) minimal for spol(f , g):
(i) h← spol(f , g)
(ii) If poly(h)G−→ 0
(iii) If poly(h)G−→ poly(r) 6= 0
P ← P ∪ {(r , g) | g ∈ G}G ← G ∪ {r}
5. Return poly(G).
9 / 18
Generic signature-based Grobner basis algorithm
Input: Ideal I = 〈f1, . . . , fm〉Output: Grobner Basis poly(G) for I
1. G ← ∅
2. G ← G ∪ {(ei , fi )} for all i ∈ {1, . . . ,m}
3. P ← {(gi , gj ) | gi , gj ∈ G , i > j}
4. While P 6= ∅
(a) Choose (f , g) ∈ P such that sig (spol(f , g)) minimal,P ← P \ {(f , g)}
(b) If sig (spol(f , g)) minimal for spol(f , g):
(i) h← spol(f , g)
(ii) If poly(h)G−→ 0 ⇐ signature-safe
(iii) If poly(h)G−→ poly(r) 6= 0 ⇐ signature-safe
& ∄g ∈ G such that m sig(g) = sig(r) andm lm(poly(g)) = lm(poly(r))P ← P ∪ {(r , g) | g ∈ G}G ← G ∪ {r}
5. Return poly(G).
9 / 18
Signature-safe reductions
Let p and q in R be given such that m lm(q) = lm(p), c = lc(p)lc(q) .
Assumep − cmq.
10 / 18
Signature-safe reductions
Let p and q in R be given such that m lm(q) = lm(p), c = lc(p)lc(q) .
Assumep − cmq.
signature-safe: sig(p − cmq) = sig(p)
10 / 18
Signature-safe reductions
Let p and q in R be given such that m lm(q) = lm(p), c = lc(p)lc(q) .
Assumep − cmq.
signature-safe: sig(p − cmq) = sig(p)signature-safe:
signature-increasing: sig(p − cmq) = m sig(q)
10 / 18
Signature-safe reductions
Let p and q in R be given such that m lm(q) = lm(p), c = lc(p)lc(q) .
Assumep − cmq.
signature-safe: sig(p − cmq) = sig(p)signature-safe:
signature-increasing: sig(p − cmq) = m sig(q)signature-decreasing: sig(p − cmq) ≺ sig(p),m sig(q)
10 / 18
How does this work?
Termination
◮ If sig(r) = m sig(g) and lm (poly(r)) = m lm (poly(g)) is notadded to G .
◮ Each new element in G enlarges 〈(sig(r), lm(poly(r)))〉.
11 / 18
How does this work?
Termination
◮ If sig(r) = m sig(g) and lm (poly(r)) = m lm (poly(g)) is notadded to G .
◮ Each new element in G enlarges 〈(sig(r), lm(poly(r)))〉.
Correctness
◮ All possible s-polynomials are taken care of:signature-increasing reduction ⇒ new pair in the next step.
◮ All elements r with poly(r) 6= 0 are added to G besides thosefulfilling sig(r) = m sig(g) and lm (poly(r)) = m lm (poly(g)).
11 / 18
Signature-based criteria
Non-minimal signature ( NM )
sig(h) not minimal for h? ⇒ Remove h.
12 / 18
Signature-based criteria
Non-minimal signature ( NM )
sig(h) not minimal for h? ⇒ Remove h.
Sketch of proof
1. There exists a syzygy s ∈ Rm such that lm(s) = sig(h).⇒ We can represent h with a lower signature.
2. Pairs are handled by increasing signatures.⇒ All relations of lower signature are already taken care of.
12 / 18
Signature-based criteria
Non-minimal signature ( NM )
sig(h) not minimal for h? ⇒ Remove h.
Sketch of proof
1. There exists a syzygy s ∈ Rm such that lm(s) = sig(h).⇒ We can represent h with a lower signature.
2. Pairs are handled by increasing signatures.⇒ All relations of lower signature are already taken care of.
Our example with ≺pot revisited
sig (spol(g3, g1)) = xye2g1 = xy − z2
g2 = y2 − z2
}
⇒ psyz(g2, g1) = g1e2 − g2e1 = xye2 + . . .
12 / 18
Signature-based criteria
Rewritable signature ( RW )
sig(g) = sig(h)? ⇒ Remove either g or h.
13 / 18
Signature-based criteria
Rewritable signature ( RW )
sig(g) = sig(h)? ⇒ Remove either g or h.
Sketch of proof
1. sig(g − h) ≺ sig(g), sig(h).
2. Pairs are handled by increasing signatures.⇒ All necessary computations of lower signature have alreadytaken place.⇒ We can represent h by
h = g + elements of lower signature.
13 / 18
1 The basic problem
2 Generic signature-based algorithmsThe basic ideaGeneric signature-based Grobner basis algorithmSignature-based criteria
3 Implementations and recent workEfficient variantsTimingsRecent work
14 / 18
Efficient variants
F5Faugere(2002)
G2VGao,Guan,Volny
(2010)
GVWGao,Volny,Wang
(2011)iG2VE.
(2012)
F5CPerry,E.(2009) F5A
Perry,E.(2011)
iF5AE.
(2012)
iF5CE.
(2012)
nF5E.
(2012)
APArri,Perry(2009)
AP1Arri,Perry,E.
(2011) AP2Arri,Perry,E.
(2012)
SBRoune,
Stillmann
(2012)
15 / 18
Efficient variants
F5Faugere(2002)
G2VGao,Guan,Volny
(2010)
GVWGao,Volny,Wang
(2011)iG2VE.
(2012)
F5CPerry,E.(2009) F5A
Perry,E.(2011)
iF5AE.
(2012)
iF5CE.
(2012)
nF5E.
(2012)
APArri,Perry(2009)
AP1Arri,Perry,E.
(2011) AP2Arri,Perry,E.
(2012)
SBRoune,
Stillmann
(2012)
15 / 18
Efficient variants
F5Faugere(2002)
G2VGao,Guan,Volny
(2010)
GVWGao,Volny,Wang
(2011)
F5CPerry,E.(2009) F5A
Perry,E.(2011)
iF5AE.
(2012)
iF5CE.
(2012)
nF5E.
(2012)
APArri,Perry(2009)
AP1Arri,Perry,E.
(2011) AP2Arri,Perry,E.
(2012)
SBRoune,
Stillmann
(2012)
15 / 18
Efficient variants
F5Faugere(2002)
G2VGao,Guan,Volny
(2010)
GVWGao,Volny,Wang
(2011)iG2VE.
(2012)
F5CPerry,E.(2009) F5A
Perry,E.(2011)
iF5AE.
(2012)
iF5CE.
(2012)
nF5E.
(2012)
APArri,Perry(2009)
AP1Arri,Perry,E.
(2011)
SBRoune,
Stillmann
(2012)
15 / 18
Efficient variants
F5Faugere(2002)
G2VGao,Guan,Volny
(2010)
GVWGao,Volny,Wang
(2011)iG2VE.
(2012)
F5CPerry,E.(2009) F5A
Perry,E.(2011)
iF5AE.
(2012)
iF5CE.
(2012)
nF5E.
(2012)
APArri,Perry(2009)
AP1Arri,Perry,E.
(2011) AP2Arri,Perry,E.
(2012)
SBRoune,
Stillmann
(2012)
15 / 18
Efficient variants
F5Faugere(2002)
G2VGao,Guan,Volny
(2010)
GVWGao,Volny,Wang
(2011)iG2VE.
(2012)
F5CPerry,E.(2009) F5A
Perry,E.(2011)
iF5AE.
(2012)
iF5CE.
(2012)
nF5E.
(2012)
APArri,Perry(2009)
AP1Arri,Perry,E.
(2011) AP2Arri,Perry,E.
(2012)
SBRoune,
Stillmann
(2012)
15 / 18
Timings
20%
60%
100%
Virasoro-8 Red-Cyc-7 Fabrice-24 Noon-9 Rose Red-Eco-11 Sendra Wang-16
16 / 18
Timings
20%
60%
100%
Virasoro-8 Red-Cyc-7 Fabrice-24 Noon-9 Rose Red-Eco-11 Sendra Wang-16
20%
60%
100%
Cyclic-8 Ext-Cyc-6 Katsura-13 Berth Eco-11 F-855 Schrans-Troost RPBL
16 / 18
Recent work
◮ Heuristics:orderings on signatures; orderings for critical pairs (sugardegree), reducers
◮ F4:linear algebra for reduction purposes
◮ Parallelisation:modular methods, parallel criteria checks
◮ Computation of syzygies:implementation
◮ Generalization of signature-based criteria:more terms per signature, relaxing criteria for combinationwith Buchberger’s criteria
17 / 18
Bibliography
[AH09] G. Ars und A. Hashemi. Extended F5 Criteria
[AP11] A. Arri und J. Perry. The F5 Criterion revised
[E12a] C. Eder. Improving incremental signature-based Grobner bases algorithms
[E12b] C. Eder. Sweetening the sour taste of inhomogeneous signature-based Grobner basis computations
[EGP11] C. Eder, J. Gash and J. Perry. Modifying Faugere’s F5 Algorithm to ensure termination
[EP10] C. Eder and J. Perry. F5C: A variant of Faugere’s F5 Algorithm with reduced Grobner bases
[EP11] C. Eder and J. Perry. Signature-based algorithms to compute Grobner bases
[Fa02] J.-C. Faugere. A new efficient algorithm for computing Grobner bases without reduction to zero F5
[Ga12a] V. Galkin. Termination of original F5
[Ga12b] V. Galkin. Simple signature-based Groebner basis algorithm
[GGV10] S. Gao, Y. Guan and F. Volny IV. A New Incremental Algorithm for Computing Grobner Bases
[GVW11] S. Gao, F. Volny IV and M. Wang. A New Algorithm For Computing Grobner Bases
[HS12] B. H. Roune and M. Stillman. Practical Grobner Basis Computation
[SIN11] W. Decker, G.-M. Greuel, G. Pfister and H. Schonemann. Singular 3-1-4. A computer algebra system
for polynomial computations, University of Kaiserslautern, 2012, http://www.singular.uni-kl.de.
[SW10] Y. Sun und D. Wang. A new proof of the F5 Algorithm
[SW11] Y. Sun and D. Wang. A Generalized Criterion for Signature Related Grobner Basis Algorithms
18 / 18
top related