1 / 29

Gröbner Bases

Gröbner Bases. Bernd Sturmfels Mathematics and Computer Science University of California at Berkeley. Gröbner Bases. Method for computing with multivariate polynomials Generalizes well-known algorithms: Gaussian Elimination Euclidean Algorithm (for computing gcd)

hensons
Télécharger la présentation

Gröbner Bases

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Gröbner Bases Bernd Sturmfels Mathematics and Computer Science University of California at Berkeley

  2. Gröbner Bases • Method for computing with multivariate polynomials • Generalizes well-known algorithms: • Gaussian Elimination • Euclidean Algorithm (for computing gcd) • Simplex Algorithm (linear programming)

  3. General Setup • Set of input polynomials F = {f1,…,fn} • Set of output polynomials G = {g1,…,gm} Information about F easier to understand through inspection of G Buchberger’s Algorithm

  4. Gaussian Elimination • Example: 2x+3y+4z = 5 & 3x+4y+5z = 2  x = z-14 & y = 11-2z • In Gröbner bases notation • Input: F = {2x+3y+4z-5, 3x+4y+5z-2} • Output: G = {x-z+14, y+2z-11}

  5. Euclidean Algorithm • Computes the greatest common divisor of two polynomials in one variable. • Example: f1 =x4-12x3+49x2-78x+4, • f2 =x5-5x4+5x3+5x2-6x have gcd(f1,f2) = x2-3x+2 In Gröbner bases notation Input: F = {x4-12x3+49x2-78x+40, x5-5x4+5x3+5x2-6x} Output: G = {x2-3x+2}

  6. Integer Programming: Minimize the linear function P+N+D+Q Subject to P,N,D,Q > 0 integer and P+5N+10D+25Q = 117 This problem has the unique solution (P,N,D,Q) = (2,1,1,4)

  7. Integer Programming and Gröbner Bases • Represent a collection C of coins by a monomial panbdcqd in the variables p,n,d,q. • E.g., 2 pennies and 4 dimes is p2d4 • Input set F = {p5-n, p10-d, p25-q} • Represents the basic relationships among coins • Output set G = {p5-n, n2-d, d2n-q, d3-nq} • Expresses a more useful set of replacement rules. E.g., the expression d3-nq translates to: replace 3 dimes with a nickel and a quarter

  8. Integer Programming (cont’d) • Given a collection C of coins, we use rules encoded by G to transform (in any order) C into a set of coins C’ with equal monetary value but smallernumber of elements • Example (solving previous integer program): p17n10d5p12n11d5 . . . p2n13d5 p2ndq4 . . . p2n13dq2 p2n12d3q

  9. Integer Programming (cont’d) • Gröbner Bases give a method of transforming a feasible solution using local moves into a global optimum. • This transformation is analogous to running the Simplex Algorithm • Now, the general theory ….

  10. Polynomial Ideals • Let F be a set of polynomials in K[x1,…,xn]. • Here K is a field, e.g. the rationals Q, the real numbers R, or the complex numbers C. • The ideal generated by F is <F> = { p1f1+ ··· + prfr | fi F, pi  K[x] } These are all the polynomial linear combinations of elements in F.

  11. Hilbert Basis Theorem • Theorem: Every ideal in the polynomial ring K[x1,…,xn] is finitely generated. • This means that any ideal I has the form <F> for a finite set of polynomials F. • Note: for the 1-variable ring K[x1], every ideal I is principal; that is, I is generated by 1 polynomial. This is the Euclidean Algorithm.

  12. Examples of Ideals • For each example we have seen, <F> = <G> • <{2x+3y+4z-5, 3x+4y+5z-2}> = <{x-z+14, y+z-11}> • <{x4-12x3+49x2-78x+40, x5-5x4+5x3+5x2-6x}> = <{x2-3x+2}> • <{p5-n, p10-d, p25-q}> = <{p5-n, n2-d, d2n-q, d3-nq}> In each example, the polynomial consequences for each set (i.e. the ideal generated by them) are the same, but the elements of G reveal more structure than those of F.

  13. Ideal Equality • How to check that two ideals <F> and <G> are equal? • need to show that each element of F is in <G> and each element of G is in <F> • Coin example: d3-nq = n(p25-q) - (p20+p10d+d2)(p10-d) + p25(p5-n)

  14. Term Orders • A term order is a total order < on the set of all monomials xa = x1a1x2a2··· xnan such that: • it is multiplicative: xa < xb xa+c < xb+c • the constant monomial is smallest, i.e. 1 < xa for all a in Nn\{0}

  15. Example term orders • In one variable, there is only one term order: 1 < x < x2 < x3 < ··· • For n = 2, we have • degree lexicographic order 1 < x1 < x2 < x12 < x1x2 < x22 < x13 < x12x2 < ··· • purely lexicographic order 1 < x1 < x12 < x13 < ··· < x2 < x1x2 < x12x2 < ···

  16. Initial Ideal • Every polynomial f  K[x1,…,xn] has an initial monomial, denoted by in<(f). • For every ideal I of K[x1,…xn] the initial ideal of I is generated by all initial monomials of polynomials in I: in<(I) = < in<(f) | f is in I >

  17. Defining Gröbner Bases • A finite subset G of an ideal I is a Gröbner basis (with respect to the term order <) if { in<(g) | g is in G } generates in<(I) Note: there are many such generating sets. For instance, we can add any element of I to Gto get another Gröbner basis .

  18. Reduced Gröbner Bases • A reduced Gröbner basis satisfies: (1) For each g in G, the coeff of in<(g) is 1 (2) The set { in<(g) | g is in G } minimally generates in<(I) (nothing can be removed) (3) No trailing term of any g in G lies in the initial ideal in<(I) • Theorem: Fixing an ideal I in K[x1,…,xn] and a term order <, there is a unique reduced Gröbner basis for I

  19. Algebraic Geometry • If F is a set of polynomials, the variety of F over the complex numbers C equals V(F) = {(z1,…,zn)  Cn | f(z1,…,zn) = 0, f  F} Note: The variety depends only on the ideal of F. I.e. V(F) = V(<F>). If G is a Gröbner Basis for F, then V(G) = V(F)

  20. Hilbert’s Nullstellensatz • Theorem (David Hilbert, 1890): V(F) is empty if and only if G = {1}. • Easy direction: if G = {1}, then V(F) = V(G) = { } • Ex: F = {x2+xy-10, x3+xy2-25, x4+xy3-70}. Here, G = {1}, so there are no common solutions. Replacing 25 above by 26, we have G = {x-2,y-3} and V(F) = V(G) = {(2,3)}.

  21. Standard Monomials • I Q[x1,…,xn] an ideal, < a term order. A monomial xa = x1a1x2a2··· xnanis standard if it is not in the initial ideal in<(I). • Example: If n = 3 and in<(I) = <x13,x24,x35>, the number of standard monomials is 60. If in<(I) = <x13,x24, x1x34>, then the number of standard monomials is infinite.

  22. Fundamental Theorem of Algebra • Theorem: The number of standard monomials equals #V(I), where the zeroes are counted with multiplicity. • Example: F = {x2z-y, x2+xy-yz, xz2+xz-x}. Then, using purely lex order x > y > z, we get G = { x2-yz-y, xy+y, xz2+xz-x, yz2+yz-y, y2-yz }. Every power of z is standard, so #V(F) is infinite. • Replacing x2z-y with x2z-1 in F, we get G = { x-2yz+2y+z, y2+yz+y-z-3/2, z2+z-1 } so that #V(F) = 4.

  23. Dimension of a Variety • Calculating the dimension of a variety • Think of dimension intuitively: points have dimension 0, curves have dimension 1, …. • Let S  {x1,…,xn} have maximal cardinality with the property that no monomial in the variables in S appears in in<(I). • Theorem: dim V(I) = #S

  24. The Residue Ring • Theorem: The set of standard monomials is a Q-basis for the residue ringQ[x1,…,xn]/I. I.e., modulo the ideal I, every polynomial f can be written uniquely as a Q-linear combination of standard monomials. • Given f, there is an algorithm (the division algorithm) that produces this representation (called the normal form of f) in Q[x1,…,xn].

  25. Testing for Gröbner Bases • Question: How to test whether a set G of polynomials is a Gröbner basis? • Take g,g’ in G and form the S-polynomialm’g - mg’ where m,m’ are monomials of lowest degree s.t. m’in<(g) = min<(g’). • Theorem (Buchberger’s Criterion): G is a Gröbner basis if and only if every S-polynomial formed by pairs g,g’from G has normal form zero w.r.t. G.

  26. Buchberger’s Algorithm • Input: Finite list F of polynomials in Q[x1,…,xn] • Output: The reduced GröbnerbasisGfor <F>. • Step 1: Apply Buchberger’s Criterionto check whether F is a Gröbnerbasis. • Step 2: If “yes,” then F is a GB. Go to Step 4. • Step 3: If “no,” we found p = normalf(m’g-mg’) to be nonzero. Set F = F  {p} and go to Step 1. • Step 4: Replace F by the reduced Gröbner basisG (apply “autoreduction’’) and output G.

  27. Termination of Algorithm • Question: Why does this loop always terminate? Step 1 Step 3 • Answer: Hilbert’s Basis Theorem implies that there is no infinite ascending chain of ideals. Let F = {f1,…,fd}. Each nonzero p = normalf(m’f-mf’) gives a strict inclusion: <in<(f1),…,in<(fd)>  <in<(f1),…,in<(fd), in<(p)> . Hence the loop terminates.

  28. Simple Example • Example: n = 1, F = {x2+3x-4,x3-5x+4} • form the S-poly (Step 1): x(x2+3x-4) - 1(x3-5x+4) = 3x2+x-4 It has nonzero normal form p = -8x+8. • Therefore, F is not a Gröbnerbasis. We enlarge F by adding p (Step 3). • The new set F  {p} is a Gröbner basis. • The reduced GB is G = {x-1} (Step 4).

  29. Summary • Gröbner bases and the Buchberger algorithm are fundamental in algebra • Applications include optimization, coding, robotics, statistics, bioinformatics etc… • Advanced algebraic geometry algorithms: elimination theory, computing cohomology, resolution of singularities etc… • Try it today, using Maple, Mathematica, Macaulay2, Magma, CoCoA, or SINGULAR.

More Related