![Page 1: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/1.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Remarks on Faugere’s F5 algorithm
John Perry(based on joint work with Christian Eder)
Department of Mathematics, The University of Southern Mississippi
Sage Days 12, 21 January 2008
![Page 2: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/2.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
F5?F5: algorithm to compute Grobner bases of polynomial ideals
(J-C Faugere, 2002)
![Page 3: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/3.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 4: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/4.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Grobner bases?Grobner basis: “nice form” for generators of polynomial ideal
• “nice”:�����: easy!
difficult questions
(B Buchberger, 1965)
Generalizes linear algebra• Vector space: Gaussian elimination −→ echelon form
∗ ∗ ∗ ∗ = ∗∗ ∗ ∗ ∗ = ∗∗ ∗ ∗ ∗ = ∗∗ ∗ ∗ ∗ = ∗
−→
∗ ∗ ∗ ∗ = ∗∗ ∗ ∗ = ∗∗ ∗ = ∗∗ = ∗
• Polynomial ring: Buchberger’s algorithm −→ Grobner basis
![Page 5: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/5.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Grobner bases?Grobner basis: “nice form” for generators of polynomial ideal
• “nice”:�����: easy!
difficult questions
(B Buchberger, 1965)
Generalizes linear algebra• Vector space: Gaussian elimination −→ echelon form
∗ ∗ ∗ ∗ = ∗∗ ∗ ∗ ∗ = ∗∗ ∗ ∗ ∗ = ∗∗ ∗ ∗ ∗ = ∗
−→
∗ ∗ ∗ ∗ = ∗∗ ∗ ∗ = ∗∗ ∗ = ∗∗ = ∗
• Polynomial ring: Buchberger’s algorithm −→ Grobner basis
![Page 6: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/6.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Buchberger’s algorithmGiven F ∈ F
�
x1, . . . ,xn�m:
1 G := F2 Consider all p,q ∈G
1 Compute S := up− vq(u,p cancel lcm (ltp, ltq))
2 Top-reduce S over G(divisibility of lts: S− u1g1− u2g2− · · · )
3 S= 0? =⇒ Append S to G
3 Termination: no new polynomials created(Ascending Chain Condition)
• All GB algorithms follow this general outline(F5 too!)
• Omitting some details (lt=???)
![Page 7: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/7.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Buchberger’s algorithmGiven F ∈ F
�
x1, . . . ,xn�m:
1 G := F2 Consider all p,q ∈G
1 Compute S := up− vq(u,p cancel lcm (ltp, ltq))
2 Top-reduce S over G(divisibility of lts: S− u1g1− u2g2− · · · )
3 S= 0? =⇒ Append S to G
3 Termination: no new polynomials created(Ascending Chain Condition)
• All GB algorithms follow this general outline(F5 too!)
• Omitting some details (lt=???)
![Page 8: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/8.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Buchberger’s algorithmGiven F ∈ F
�
x1, . . . ,xn�m:
1 G := F2 Consider all p,q ∈G
1 Compute S := up− vq(u,p cancel lcm (ltp, ltq))
2 Top-reduce S over G(divisibility of lts: S− u1g1− u2g2− · · · )
3 S= 0? =⇒ Append S to G
3 Termination: no new polynomials created(Ascending Chain Condition)
• All GB algorithms follow this general outline(F5 too!)
• Omitting some details (lt=???)
![Page 9: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/9.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Buchberger’s algorithmGiven F ∈ F
�
x1, . . . ,xn�m:
1 G := F2 Consider all p,q ∈G
1 Compute S := up− vq(u,p cancel lcm (ltp, ltq))
2 Top-reduce S over G(divisibility of lts: S− u1g1− u2g2− · · · )
3 S= 0? =⇒ Append S to G
3 Termination: no new polynomials created(Ascending Chain Condition)
• All GB algorithms follow this general outline(F5 too!)
• Omitting some details (lt=???)
![Page 10: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/10.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick exampleProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.1 G=
�
xy+ 1,y2+ 1�
1 S= y (xy+ 1)− x�
y2+ 1�
= y− xNo top-reduction
2 G=�
xy+ 1,y2+ 1,x− y�
1 S= (xy+ 1)− y (x− y) = 1+ y2
Top-reduces to zero2 S= x
�
y2+ 1�
− y2 (x− y) = x+ y3
Top-reduces to zero
![Page 11: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/11.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick exampleProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.1 G=
�
xy+ 1,y2+ 1�
1 S= y (xy+ 1)− x�
y2+ 1�
= y− xNo top-reduction
2 G=�
xy+ 1,y2+ 1,x− y�
1 S= (xy+ 1)− y (x− y) = 1+ y2
Top-reduces to zero2 S= x
�
y2+ 1�
− y2 (x− y) = x+ y3
Top-reduces to zero
![Page 12: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/12.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick exampleProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.1 G=
�
xy+ 1,y2+ 1�
1 S= y (xy+ 1)− x�
y2+ 1�
= y− xNo top-reduction
2 G=�
xy+ 1,y2+ 1,x− y�
1 S= (xy+ 1)− y (x− y) = 1+ y2
Top-reduces to zero2 S= x
�
y2+ 1�
− y2 (x− y) = x+ y3
Top-reduces to zero
![Page 13: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/13.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick exampleProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.1 G=
�
xy+ 1,y2+ 1�
1 S= y (xy+ 1)− x�
y2+ 1�
= y− xNo top-reduction
2 G=�
xy+ 1,y2+ 1,x− y�
1 S= (xy+ 1)− y (x− y) = 1+ y2
Top-reduces to zero2 S= x
�
y2+ 1�
− y2 (x− y) = x+ y3
Top-reduces to zero
∴GB�
xy+ 1,y2+ 1��
=�
xy+ 1,y2+ 1,x− y�
.
![Page 14: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/14.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Bottleneck• Bottleneck
• New polynomials→ new information• Top-reduction to zero 6→ no new polynomial
6→ new information• (100− ε)% of time: verifying GB, not computing• Top-reduction very, very expensive
![Page 15: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/15.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Past work• Predict zero reductions
(B Buchberger 1985, R Gebauer-H Moller 1988,CKR 2002, H Hong-J Perry 2007)
• Selection strategy: Pick pairs in clever ways
(B Buchberger 1985, A Giovini et al 1991,H Moller et al 1992)
• Forbid some top-reductions: Involutive bases
(V Gerdt-Y Blinkov 1998)
• Homogenization: d-Grobner bases
![Page 16: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/16.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 17: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/17.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
F5: overviewF5: combined approach• Homogenize• d-Grobner bases• New point of view:
• New way to predict zero reductions• New selection strategy
• Some systems: no zero reductions!
“A new efficient algorithm for computing Grobner baseswithout reduction to zero (F5)”
![Page 18: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/18.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
View from linear algebra• Compute GB⇐⇒ Triangularize Sylvester matrix of G
(D Lazard, 1983)
• Triangularize sparse matrix (F4)
(Faugere, 1999)
• Avoid using different rows to re-compute reductions
(Faugere, 2002)
![Page 19: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/19.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick example, revisitedProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.Homogenize: G=
�
xy+ h2,y2+ h2�
![Page 20: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/20.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick example, revisitedProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.Homogenize: G=
�
xy+ h2,y2+ h2�
d = 2:
No cancellations of degree 2. . .
![Page 21: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/21.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick example, revisitedProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.Homogenize: G=
�
xy+ h2,y2+ h2�
d = 3:
x2y xy2 y3 xh2 yh2
1 1 xg11 1 yg11 1 xg2
1 1 yg2
Rows 2, 3 cancel. . .
![Page 22: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/22.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick example, revisitedProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.Homogenize: G=
�
xy+ h2,y2+ h2�
d = 3:
x2y xy2 y3 xh2 yh2
1 1 xg11 1 yg11 1 xg2
1 1 yg21 −1 g3
New! g3 = xh2− yh2
![Page 23: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/23.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick example, revisitedProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.Homogenize: G=
�
xy+ h2,y2+ h2�
d = 3:
x2y xy2 y3 xh2 yh2
1 1 xg11 1 yg1
�1 �1 ��*g3xg2
1 1 yg21 −1 g3
linear dependence:��*g3xg2
(xg2 = g3+ yg1)
![Page 24: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/24.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick example, revisitedProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.Homogenize: G=
�
xy+ h2,y2+ h2�
d = 4:
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
1 1 x2g11 1 xyg1
1 1 y2g11 1 h2g1
�1 �1 ���>
xg3
x2g2
�1 �1 ���*
yg3xyg21 1 y2g2
1 −1 xg31 −1 yg3
linear dependence:���>
xg3
x2g2,���*
yg3xyg2
![Page 25: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/25.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick example, revisitedProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.Homogenize: G=
�
xy+ h2,y2+ h2�
d = 4:
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
1 1 x2g11 1 xyg1
1 1 y2g11 1 h2g1
1 1 y2g21 −1 xg3
1 −1 yg3
Rows 4, 7 cancel. . .
![Page 26: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/26.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Quick example, revisitedProblem: Find Grobner basis of
xy+ 1,y2+ 1�
.Homogenize: G=
�
xy+ h2,y2+ h2�
d = 4:
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
1 1 x2g11 1 xyg1
1 1 y2g11 1 h2g1
1 1 y2g21 −1 xg3
1 −1 yg3
Rows 4, 7 cancel. . . but we will not consider them!Why not?
Later.
![Page 27: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/27.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 28: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/28.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Signatures• Relation b/w rows
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
...1 1 h2g1
...1 −1 yg3
and generators g1,g2?• h2g1: obvious• yg3: g3 = xg2− yg1
![Page 29: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/29.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Signatures• Relation b/w rows
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
...1 1 h2g1
...1 −1 yg3
and generators g1,g2?• h2g1: obvious• yg3: g3 = xg2− yg1
Signature of g3: Sig (g3) = xg2.∴ Sig (yg3) = xyg2.
![Page 30: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/30.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Signatures: Observations• Sig (p) = tgi?
• 1≤ i≤m (inputs:�
g1, . . . ,gm�
)• g= h1g1+ · · ·+ hi−1gi−1+(t+ · · · )gi (∃h1, . . . ,hi, lt
�
hi�
= t)
• this definition = algorithmic behavior6= Faugere’s definition
• “easy” record-keeping: list of rules• “easily” reject certain useless pairs:
• Use yg3 w/sig xyg2, not xyg2• Use xg3 w/sig x2g2, not x2g2• . . .
• Criterion “Rewritten”
( J-C Faugere 2007?, J Gash 2008,C Eder-J Perry submitted)
![Page 31: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/31.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Signatures: Observations• Sig (p) = tgi?
• 1≤ i≤m (inputs:�
g1, . . . ,gm�
)• g= h1g1+ · · ·+ hi−1gi−1+(t+ · · · )gi (∃h1, . . . ,hi, lt
�
hi�
= t)
• this definition = algorithmic behavior6= Faugere’s definition
• “easy” record-keeping: list of rules• “easily” reject certain useless pairs:
• Use yg3 w/sig xyg2, not xyg2• Use xg3 w/sig x2g2, not x2g2• . . .
• Criterion “Rewritten”
( J-C Faugere 2007?, J Gash 2008,C Eder-J Perry submitted)
![Page 32: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/32.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Faugere’s characterization
Theorem (Faugere, 2002)
(A)⇐⇒ (B) where
(A) G a Grobner basis(B) ∀p,q ∈G where• uSig (p), vSig (q) not rewritable, and• uSig (p), vSig (q)minimal
S-polynomial up− vq top-reduces to zero w/out changing signature
(highly paraphrased, slightly generalized)
![Page 33: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/33.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 34: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/34.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
How to predict zero reductions?• Recall
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
...1 −1 h2g1
...1 −1 yg3
We did not cancel. Why not?
• S-poly top-reduces to zero• can predict this
How?
![Page 35: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/35.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
How to predict zero reductions?• Recall
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
...1 −1 h2g1
...1 −1 yg3
We did not cancel. Why not?
• S-poly top-reduces to zero• can predict this
How?
![Page 36: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/36.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Faugere’s criterion
TheoremIf• uSig (p) = ugi; and• lt (q) | u, ∃q ∈GBprev
�
g1, . . . ,gi−1�
;
then uSig (p) is not minimal.
DefinitionFC(uSig (p)): lt (q) | u ∃q ∈Gprev
CorollaryIn S-polynomial up− vq,
if FC(uSig (p)) or FC(vSig (q))then we need not compute S.
![Page 37: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/37.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Faugere’s criterion
TheoremIf• uSig (p) = ugi; and• lt (q) | u, ∃q ∈GBprev
�
g1, . . . ,gi−1�
;
then uSig (p) is not minimal.
DefinitionFC(uSig (p)): lt (q) | u ∃q ∈Gprev
CorollaryIn S-polynomial up− vq,
if FC(uSig (p)) or FC(vSig (q))then we need not compute S.
![Page 38: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/38.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
In the example. . .• Recall
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
...1 −1 h2g1
...1 −1 yg3
• Gprev = (g1)• Sig (g3) = xg2
• ySig (g3) = xyg2, and lt (g1) | xy. . .
FC =⇒ no need to compute S-polynomial
Why?
![Page 39: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/39.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
In the example. . .• Recall
x3y x2y2 xy3 y4 x2h2 xyh2 y2h2 h4
...1 −1 h2g1
...1 −1 yg3
• Gprev = (g1)• Sig (g3) = xg2
• ySig (g3) = xyg2, and lt (g1) | xy. . .
FC =⇒ no need to compute S-polynomial
Why?
![Page 40: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/40.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Why? Trivial syzygies
Recall yg3 = y[xg2− yg1]. . .
![Page 41: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/41.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Why? Trivial syzygies
Recall yg3 = y[xg2− yg1]. . .
∴ yg3 = y[xg2− yg1]
= xyg2− y2g1
![Page 42: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/42.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Why? Trivial syzygies
Recall yg3 = y[xg2− yg1]. . .
∴ yg3 = y[xg2− yg1]
= xyg2− y2g1
Trivially g1g2− g2g1 = 0.
![Page 43: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/43.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Why? Trivial syzygies
Recall yg3 = y[xg2− yg1]. . .
∴ yg3 = y[xg2− yg1]
= xyg2− y2g1
Trivially g1g2− g2g1 = 0.
∴ yg3 = xyg2− y2g1
−��
xy+ h2�
g2−�
y2+ h2�
g1
�
=−h2g2+ h2g1
![Page 44: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/44.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Why? Trivial syzygies
Recall yg3 = y[xg2− yg1]. . .
∴ yg3 = y[xg2− yg1]
= xyg2− y2g1
Trivially g1g2− g2g1 = 0.
∴ yg3 = xyg2− y2g1
−��
xy+ h2�
g2−�
y2+ h2�
g1
�
=−h2g2+ h2g1
Sig (yg3) not minimal!
![Page 45: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/45.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 46: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/46.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
The F5 Algorithm1 Each stage: Incremental strategy
1 Compute GB (g1)2 Compute GB (g1,g2)3 . . .
2 d-GB’s GB�
g1, . . . ,gi�
3 only S-polys with• signatures that do not satisfy (FC); and• non-rewritable components.
4 Top-reduce, but not if reduction. . .
1 satisfies (FC); or2 rewritable.
5 Track new polys with signature
![Page 47: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/47.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
The F5 Algorithm1 Each stage: Incremental strategy
1 Compute GB (g1)2 Compute GB (g1,g2)3 . . .
2 d-GB’s GB�
g1, . . . ,gi�
3 only S-polys with• signatures that do not satisfy (FC); and• non-rewritable components.
4 Top-reduce, but not if reduction. . .
1 satisfies (FC); or2 rewritable.
5 Track new polys with signature
![Page 48: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/48.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
The F5 Algorithm1 Each stage: Incremental strategy
1 Compute GB (g1)2 Compute GB (g1,g2)3 . . .
2 d-GB’s GB�
g1, . . . ,gi�
3 only S-polys with• signatures that do not satisfy (FC); and• non-rewritable components.
4 Top-reduce, but not if reduction. . .
1 satisfies (FC); or2 rewritable.
5 Track new polys with signature
Certain details omitted. . .
![Page 49: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/49.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Zero reductions?
DefinitionIf G=
�
g1, . . . ,gm�
has trivial syzygies only,then G is a regular sequence.
Many systems are regular sequences;many non-regular systems can be rewritten as regular.
CorollaryIf input to F5 is a regular sequence,then no zero reductions occur.
![Page 50: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/50.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Zero reductions?
DefinitionIf G=
�
g1, . . . ,gm�
has trivial syzygies only,then G is a regular sequence.
Many systems are regular sequences;many non-regular systems can be rewritten as regular.
CorollaryIf input to F5 is a regular sequence,then no zero reductions occur.
![Page 51: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/51.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Relation to Buchberger’s criteria?None.
• F5 needs to compute signatures• Buchberger’s criteria ignorant of signatures• Mixing leads to non-termination• (but see Gash, 2008)
![Page 52: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/52.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Relation to Buchberger’s criteria?None.
• F5 needs to compute signatures• Buchberger’s criteria ignorant of signatures• Mixing leads to non-termination• (but see Gash, 2008)
![Page 53: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/53.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 54: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/54.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Motivation• little public code. . .
• Stegers: Magma• I don’t have Magma• I like Sage, can use Maple• FGb source code not public
• compare with other algorithms• selection strategy• predicting zero reduction• time/space tradeoff?
![Page 55: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/55.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 56: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/56.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Implementations (1)• Faugere (2002)
• C, interfaces w/Maple• Very fast• Several variants: F5, F5’, F5”, . . . ?• Souce code not publicly available, binary download
• Stegers (2005)• Interpreted Magma code• Respectable timings• Variant “F5R”• http://wwwcsif.cs.ucdavis.edu/~stegers/
• Others• Unstable implementations• Magma implementation?
![Page 57: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/57.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Implementations (2)• Perry (2007)
• Interpreted Maple code• Embarassingly slow
• Source code���
�����: unmaintained
publicly available
• Eder, Perry (2008)• Interpreted Singular code• Respectable timings• New variant “F5C”• http://www.math.usm.edu/perry/research.html
![Page 58: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/58.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Implementations (3)• Albrecht (2008)
• Interpreted Sage/Python code• Faster than Eder, Perry (2008)• Variants F5, F5R, F5C• http://bitbucket.org/malb/algebraic attacks/
• King (2008)• Compiled Sage/Cython code• Faster than Eder, Perry (2008) and Albrecht (2008)?• Variant F5R; variants F5 and F5C by Perry• http://www.math.usm.edu/perry/research.html
• Eder (in progress)• F5 in Singular kernel• Access to many Singular optimizations• Sage uses Singular, so direct benefit to Sage• Source code will be publicly available
![Page 59: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/59.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
So you want to implement F5. . .• Faugere’s pseudocode:
www-spaces.lip6.fr/@papers/F02a.pdf
(2004 edition, corrected!)
• Stegers’ pseudocode:
wwwcsif.cs.ucdavis.edu/~stegers/
(contains errors)
• Perry’s pseudocode:
www.math.usm.edu/perry/research.html
(used for Singular, Sage implementations)
![Page 60: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/60.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 61: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/61.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Reduced Grobner basis• Some inefficiency in F5
• Not all top-reductions allowed• Redundant lt’s added• Necessary this stage, but. . .• . . . not next stages, not for GB
• Reduced Grobner basis?• Pruning of redundant lt’s• Well-known optimization
• “Naıve” F5 does not use RGB
![Page 62: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/62.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Reduced Grobner basis• Some inefficiency in F5
• Not all top-reductions allowed• Redundant lt’s added• Necessary this stage, but. . .• . . . not next stages, not for GB
• Reduced Grobner basis?• Pruning of redundant lt’s• Well-known optimization
• “Naıve” F5 does not use RGB
![Page 63: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/63.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
F5R (Stegers, 2006)• Compute GB G of ⟨f1, . . . .fi⟩ (usual F5)• Compute RGB B of ⟨G⟩ (easy: interreduce G)• Compute GB of
f1, . . . , fi+1�
• Use G for critical pairs, B for top-reduction
• Many fewer reductions than F5, but. . .• Same # polys considered, generated
![Page 64: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/64.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
F5C (Eder and Perry, 2008–2009)• Compute GB G of ⟨f1, . . . , fi⟩ (usual F5)• Compute RGB B of ⟨G⟩ (usual F5R)• Compute GB of
f1, . . . , fi+1�
• Use B for top-reduction and for critical pairs• Modify rewrite rules
• Significantly fewer reductions than F5R, and. . .• Fewer polys considered, generated
![Page 65: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/65.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
#Critical pairs, #Polynomials invariants
F5, F5Ri #Gcurr max{#Pd}2 2 N/A3 4 14 8 25 16 46 32 87 60 178 132 299 524 8910 1165 276
F5Ci #Gcurr max{#Pd}2 2 N/A3 4 14 8 25 15 46 29 67 51 128 109 299 472 7110 778 89
![Page 66: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/66.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
#Reductions
variant: F5 F5R F5CKatsura-5 346 289 222Katsura-6 8,357 2,107 1,383Katsura-7 1,025,408 24,719 10,000Cyclic-5 441 457 415Cyclic-6 36,139 17,512 10,970
(Top-reduction, normal forms)(Many more in Gebauer-Moller: > 1,500,000 in Cyclic-6)
![Page 67: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/67.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 68: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/68.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Termination: the difficultyTermination?• Buchberger: ACC =⇒ S-polys reduce to zero eventually
• Faugere: S-polys w/minimal signatures computed, but. . .
![Page 69: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/69.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Termination: the difficultyTermination?• Buchberger: ACC =⇒ S-polys reduce to zero eventually
• Faugere: S-polys w/minimal signatures computed, but. . .• Some top-reductions forbidden• Regular system: no zero reductions• How recognize GB property?
![Page 70: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/70.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 71: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/71.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Faugere’s original argument
TheoremIf reduction stage concludes without zero reductions,then ideal of lt’s has increased.
ExampleS-polynomial of f1 = xy+ 1, f2 = y2+ 1 did not reduce to zero;new polynomial x− y;new lt x!
![Page 72: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/72.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Faugere’s original argument
TheoremIf reduction stage concludes without zero reductions,then ideal of lt’s has increased.
This theorem is wrong.
Example (Gash, 2008)
• Uses Faugere’s example (2002 paper)• Consider S-polynomials in different order• no reduction to zero
and ideal of lt’s does not increase.• “redundant polynomials”
![Page 73: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/73.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Redundant polynomials:necessary?
Why does F5 compute redundant polynomials?• Some top-reductions forbidden• Redundant polynomials restore necessary top-reductions
Example
• p1 top-reducible by p2, but forbidden• p1 added to GB new rewrite rule• p3 top-reducible by p1? now allowed• equivalent to top-reduction by p2
![Page 74: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/74.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Redundant polynomials:necessary?
Why does F5 compute redundant polynomials?• Some top-reductions forbidden• Redundant polynomials restore necessary top-reductions
Example
• p1 top-reducible by p2, but forbidden• p1 added to GB new rewrite rule• p3 top-reducible by p1? now allowed• equivalent to top-reduction by p2
![Page 75: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/75.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Possible resolution. . . ?An idea:• Suppose reduction stage returns redundant polynomials
• d-Grobner basis!
• keep polys, but. . .• not their S-polys
• multiples of reducers’ S-polynomials
• Guaranteed termination! but. . .
• No longer guaranteed correct!• Non-trivial concern: Cyclic-7 oops!• Rewrite rules =⇒ non-computed S-polys!
![Page 76: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/76.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Possible resolution. . . ?An idea:• Suppose reduction stage returns redundant polynomials
• d-Grobner basis!
• keep polys, but. . .• not their S-polys
• multiples of reducers’ S-polynomials
• Guaranteed termination! but. . .
• No longer guaranteed correct!• Non-trivial concern: Cyclic-7 oops!• Rewrite rules =⇒ non-computed S-polys!
![Page 77: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/77.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Regular case• General agreement: termination• Proof in Faugere’s HDR? (2007)• Another idea (J Gash, 2009)
• Non-termination? chain of divisible lt’s• Subchain of divisible signatures (ACC)• Cannot occur in regular case• Still working on this. . .
![Page 78: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/78.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 79: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/79.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Non-terminating examples• Widespread belief: F5 does not always terminate• Proposals for non-terminating systems
• Stegers’ nonTerminatingExample.mag• Brickenstein’s example(private communication, exploit iterative computation)
• However. . .• Singular and Sage: both systems terminate
![Page 80: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/80.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
nonTerminatingExample.magTermination in Singular and Sage, not in Magma?!?• Error in implementation
• Rewrite rules sometimes not assigned• Some top-reductions not completed
• Correction termination!
(R Dellaca-J Gash-J Perry, 2009)
![Page 81: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/81.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Outline1 F5
Grobner bases: reviewRough ideaSignaturesPredicting zero reductionsThe algorithm
2 ImplementationWhy?Where?Two variants
3 Termination (?)The difficultyFaugere’s original argumentNon-terminating example. . . terminates!Variants that guarantee termination
![Page 82: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/82.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Private communications• Faugere, 2007 HDR: proof fixed
• Regular sequences only?• Find me a copy?
• Zobnin, 2008: Restructured algorithm• Proceeds by increasing signature, other changes• Implementation?
![Page 83: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/83.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
F5tGash (2008 PhD Dissertation)• Redundant polynomials special bin D• Test for GB: force carefully-chosen zero reductions• If failure, add D to GB and proceed• Loss of efficiency via zero reductions vs.
guaranteed termination and correctness
![Page 84: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/84.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Another solution?Another idea: modified F5C• Suppose reduction stage returns redundant polynomials
• d-Grobner basis!
• Immediately interreduce, discard all redundant polynomials• Re-examine all pairs
• S-polynomials of degree ≤ d: good! new rewrite rule• S-polynomials of degree > d: bad! compute S-poly
• WARNING:
The above has not (yet) been proved or implemented.
![Page 85: F5 Remarks on Faug`ere’s F5 algorithm · 1 F5 Grobner bases: review¨ Rough idea Signatures Predicting zero reductions The algorithm 2 Implementation Why? Where? Two variants 3](https://reader035.vdocuments.us/reader035/viewer/2022070917/5fb79266eda4dd034d75de16/html5/thumbnails/85.jpg)
Remarks onFaugere’s F5
algorithm
John Perry
F5Grobner bases: review
Rough idea
Signatures
Predicting zeroreductions
The algorithm
ImplementationWhy?
Where?
Two variants
Termination (?)The difficulty
Faugere’s originalargument
Non-terminatingexample. . . terminates!
Variants that guaranteetermination
Finis
Thank you!