Almost polynomial Complexity for Zero-dimensional Gröbner Bases Amir Hashemi co-author: Daniel Lazard INRIA SALSA-project/ LIP6 CALFOR-team http://www-calfor.lip6.fr/ hashemi/ Special semester on Gröbner Bases and related methods Linz, Austria, 2006 Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.1/17
Complexity of Gröbner basis computation [Lazard, 83]: Complexity d O(n) homogeneous zero-dim ideal homogeneous regular sequence in generic coordinates (degree) reverse lexicographical ordering Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.2/17
Complexity of Gröbner basis computation [Lazard, 83]: Complexity d O(n) homogeneous zero-dim ideal homogeneous regular sequence in generic coordinates (degree) reverse lexicographical ordering [Dickenstein et al., 91]: Bit complexity d O(n2 ) zero-dim ideal any ordering Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.2/17
Complexity of Gröbner basis computation [Lazard, 83]: Complexity d O(n) homogeneous zero-dim ideal homogeneous regular sequence in generic coordinates (degree) reverse lexicographical ordering [Dickenstein et al., 91]: Bit complexity d O(n2 ) zero-dim ideal any ordering [Lakshman, 91]: Arithmetic complexity (nd n ) O(1) zero-dim ideal any ordering (using FGLM) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.2/17
Motivation Our objective: To have an algorithm to compute the Gröbner basis of a zero-dim ideal within a bit complexity d O(n) : To be able to extend it to regular sequences in positive dimension and in generic coordinates Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.3/17
Motivation Our objective: To have an algorithm to compute the Gröbner basis of a zero-dim ideal within a bit complexity d O(n) : To be able to extend it to regular sequences in positive dimension and in generic coordinates To extend [Lazard, 83] to the non-homogeneous case by using a deformation method (already used in [Grigoriev, Chistov, 83], [Canny, 89], [Lakshman-Lazard, 91],...) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.3/17
Notation Input data: K : field, R = K[x 1,..., x n ] : ring of polynomials f 1,..., f k : polynomials in R I = f 1,..., f k d i = deg(f i ) ordered in order that d 2 d k d 1 Measures of complexity: S : sum of the size of f i in the dense representation D = (d 1 + + d n )/n (if i > k then d i = 1) T = max{s, D n } Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.4/17
Notation Monomial orderings for Gröbner bases: : degree reverse lexicographic ordering s.t. <: any other ordering x 0 x n x 1 deg(i, <) = maximal degree of the elements of the reduced Gröbner basis of I Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.5/17
Complexity model S k i=1 nh i ( n+di ) n where hi = max{coefficients off i } Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.6/17
Complexity model S k i=1 nh i ( n+di ) n where hi = max{coefficients off i } We replace the bounds d n and nd n by: T = max{s, D n } nhk(ed) n Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.6/17
Complexity model S k i=1 nh i ( n+di ) n where hi = max{coefficients off i } We replace the bounds d n and nd n by: Bézout theorem: = Complexity : T = max{s, D n } nhk(ed) n max{s, d 1 d n } = max{s, ((d 1 d n ) 1/n ) n } Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.6/17
Complexity model S k i=1 nh i ( n+di ) n where hi = max{coefficients off i } We replace the bounds d n and nd n by: Bézout theorem: = Complexity : T = max{s, D n } nhk(ed) n max{s, d 1 d n } = max{s, ((d 1 d n ) 1/n ) n } The gap: geometric mean arithmetic mean Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.6/17
Complexity model S k i=1 nh i ( n+di ) n where hi = max{coefficients off i } We replace the bounds d n and nd n by: Bézout theorem: = Complexity : T = max{s, D n } nhk(ed) n max{s, d 1 d n } = max{s, ((d 1 d n ) 1/n ) n } The gap: geometric mean arithmetic mean [Hashemi-Lazard, 05]: Complexity T O(1) for [Laz, 83], [Dick et al., 91], [Lak, 91] Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.6/17
Main results I zero dimensional (k n) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.7/17
Main results I zero dimensional (k n) deg(i, ) d 1 + + d n n + 1 = nd n + 1 deg(i, <) d 1 d n D n Complexity T O(1) to compute any Gröbner basis of I Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.7/17
Main results I zero dimensional (k n) deg(i, ) d 1 + + d n n + 1 = nd n + 1 deg(i, <) d 1 d n D n Complexity T O(1) to compute any Gröbner basis of I f 1,..., f k regular sequence (k n) x k+1,..., x n in generic position for I Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.7/17
Main results I zero dimensional (k n) deg(i, ) d 1 + + d n n + 1 = nd n + 1 deg(i, <) d 1 d n D n Complexity T O(1) to compute any Gröbner basis of I f 1,..., f k regular sequence (k n) x k+1,..., x n in generic position for I A precise definition of generic position for this problem deg(i, ) d 1 + + d k k + 1 Conjecture: Complexity T O(1) to compute the Gröbner basis of I Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.7/17
Proof s idea Transform the problem for using [Lazard, 81] and [Lazard, 83] Reduce back Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.8/17
Proof s idea Transform the problem First transformation: Elimination of linear polynomials: new system with a degree mean 2 Denote it by f 1,..., f k (abuse of notation) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.8/17
Proof s idea Transform the problem Second transformation: Change of polynomials: f 1,..., f n : a regular sequence If K < we do this change in K(α) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.9/17
Proof s idea Third transformation: Homogenization: Transform the problem Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.10/17
Proof s idea Third transformation: Homogenization: Transform the problem F i = x deg(f i) 0 f i ( x 1 x 0,..., x n x0 ) f i = F i (1, x 1,..., x n ) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.10/17
Proof s idea Third transformation: Homogenization: Transform the problem F i = x deg(f i) 0 f i ( x 1 x 0,..., x n x0 ) f i = F i (1, x 1,..., x n ) Problem: Introduces components {x 0 = 0}: These alien components may have any dimension Thus one may not apply directly [Lazard, 83] Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.10/17
Proof s idea Fourth transformation: Transform the problem Deformation: G i = (1 s)f i + sx d i i (s new indeterminate) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.11/17
Proof s idea Fourth transformation: Deformation: Transform the problem G i = (1 s)f i + sx d i i (s new indeterminate) Apply [Lazard, 83] for the G i in K(s)[x 0,..., x n ] Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.11/17
Proof s idea Fourth transformation: Deformation: Transform the problem G i = (1 s)f i + sx d i i (s new indeterminate) Apply [Lazard, 83] for the G i in K(s)[x 0,..., x n ] Problem: How to descend back to K[x 1,..., x n ]? Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.11/17
Proof s idea Fourth transformation: Deformation: Transform the problem G i = (1 s)f i + sx d i i (s new indeterminate) Apply [Lazard, 83] for the G i in K(s)[x 0,..., x n ] Problem: How to descend back to K[x 1,..., x n ]? With Gröbner basis: difficult to manage Thus we use matrix Macaulay in degree regularity Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.11/17
Proof s idea Transform the problem for using [Lazard, 81] and [Lazard, 83] Reduce back Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.12/17
Proof s idea Reduce back Substitution: s = 0, x 0 = 1 Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.13/17
Proof s idea Reduce back Substitution: s = 0, x 0 = 1 Problem: Divisions by s in K(s) = division by 0 Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.13/17
Proof s idea Reduce back Substitution: s = 0, x 0 = 1 Problem: Divisions by s in K(s) = division by 0 Using Smith normal form over K[s] instead of Gauss-Jordan diagonalization in K(s) allow to divide by s the polynomials which are multiple of s Replacing s 0 and x 0 1 To show the conservation of Macaulay matrices properties Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.13/17
Macaulay matrix S = K[s][x 0,..., x n ] Macaulay matrix in degree δ Mac δ ( G 1,..., G n ) = φ : S δ d1 S δ dn S δ where φ(h 1,..., H n ) = n i=1 H ig i Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.14/17
Macaulay matrix S = K[s][x 0,..., x n ] Macaulay matrix in degree δ Mac δ ( G 1,..., G n ) = φ : S δ d1 S δ dn S δ where φ(h 1,..., H n ) = n i=1 H ig i Quillen theorem: Includes all information about the ideal: - Verify if δ regularity - Gröbner basis of I δ - Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.14/17
Algorithm δ = nd n + 1, J = G 1,..., G n, G i = (1 s)f i + sx d i i Compute the Smith normal form over K[s] of Mac δ (J) Divide by s, as much as possible, the columns of Mac δ (J) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.15/17
Algorithm δ = nd n + 1, J = G 1,..., G n, G i = (1 s)f i + sx d i i Compute the Smith normal form over K[s] of Mac δ (J) Divide by s, as much as possible, the columns of Mac δ (J) s 0 = Macaulay matrix of Ĩ s.t. F 1,..., F n Ĩ F 1,..., F n : x 0 Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.15/17
Algorithm δ = nd n + 1, J = G 1,..., G n, G i = (1 s)f i + sx d i i Compute the Smith normal form over K[s] of Mac δ (J) Divide by s, as much as possible, the columns of Mac δ (J) s 0 = Macaulay matrix of Ĩ s.t. F 1,..., F n Ĩ F 1,..., F n : x 0 Macaulay matrix of F 1,..., F n : x 0 = Ĩ : x 0 : Gaussian elimination on a matrix formed by D O(n) of Macaulay Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.15/17
Algorithm δ = nd n + 1, J = G 1,..., G n, G i = (1 s)f i + sx d i i Compute the Smith normal form over K[s] of Mac δ (J) Divide by s, as much as possible, the columns of Mac δ (J) s 0 = Macaulay matrix of Ĩ s.t. F 1,..., F n Ĩ F 1,..., F n : x 0 Macaulay matrix of F 1,..., F n : x 0 = Ĩ : x 0 : Gaussian elimination on a matrix formed by D O(n) of Macaulay x 0 1 = the Gröbner basis of f 1,..., f n Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.15/17
Algorithm Computing the basis of f 1,..., f n for any ordering by [FGLM] Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.16/17
Algorithm Computing the basis of f 1,..., f n for any ordering by [FGLM] If k > n : compute the basis of the regular sequence f 1,..., f n f n+1,..., f k used for up-to-date the basis by linear algebra (as [FGLM]) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.16/17
Conclusion An algorithm to compute the zero-dim Gröbner basis: quasi-optimal complexity bit complexity [Lakshman, 91] arithmetic complexity = [Lakshman, 91] This algorithm is not designed to be implemented: does not verify the dimension zero it uses the Smith normal form whereas F 5 (by Faugère) uses the echelon form on almost the smaller matrices (no counter-example yet known) Almost polynomial Complexity for Zero-dimensional Gröbner Bases p.17/17