Presentation is loading. Please wait.

Presentation is loading. Please wait.

Gröbner Bases Bernd Sturmfels Mathematics and Computer Science

Similar presentations


Presentation on theme: "Gröbner Bases Bernd Sturmfels Mathematics and Computer Science"— 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 & 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 smaller number of elements Example (solving previous integer program): p17n10d p12n11d p2n13d5 p2ndq p2n13dq 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 G to 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 V(F) = {(z1,…,zn)  Cn | f(z1,…,zn) = 0, f  F}
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 ··· xnan is 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 ring Q[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-polynomial m’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öbner basis G for <F>. Step 1: Apply Buchberger’s Criterion to check whether F is a Gröbner basis. 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 basis G (apply “autoreduction’’) and output G.

27 Termination of Algorithm
Question: Why does this loop always terminate? Step 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öbner basis. 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.


Download ppt "Gröbner Bases Bernd Sturmfels Mathematics and Computer Science"

Similar presentations


Ads by Google