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

Gröbner Bases

  • Upload
    nonnie

  • View
    69

  • Download
    0

Embed Size (px)

DESCRIPTION

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) - PowerPoint PPT Presentation

Citation preview

Page 1: Gröbner Bases

Gröbner Bases

Bernd SturmfelsMathematics and Computer

ScienceUniversity of California at

Berkeley

Page 2: Gröbner Bases

Gröbner Bases• Method for computing with

multivariate polynomials• Generalizes well-known algorithms:

– Gaussian Elimination– Euclidean Algorithm (for computing

gcd)– Simplex Algorithm (linear

programming)

Page 3: Gröbner Bases

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

Page 4: Gröbner Bases

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}

Page 5: Gröbner Bases

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 notationInput: F = {x4-12x3+49x2-78x+40, x5-5x4+5x3+5x2-6x}Output: G = {x2-3x+2}

Page 6: Gröbner Bases

Integer Programming:Minimize the linear function

P+N+D+QSubject to P,N,D,Q > 0 integer and

P+5N+10D+25Q = 117This problem has the unique solution

(P,N,D,Q) = (2,1,1,4)

Page 7: Gröbner Bases

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

Page 8: Gröbner Bases

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): p17n10d5 p12n11d5 . . . p2n13d5

p2ndq4 . . . p2n13dq2 p2n12d3q

Page 9: Gröbner Bases

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 ….

Page 10: Gröbner Bases

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.

Page 11: Gröbner Bases

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.

Page 12: Gröbner Bases

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.

Page 13: Gröbner Bases

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)

Page 14: Gröbner Bases

Term Orders• A term order is a total order <

on the set of all monomials xa = x1

a1x2a2 ··· xn

an such that:

(1) it is multiplicative: xa < xb xa+c < xb+c

(2) the constant monomial is smallest, i.e.

1 < xa for all a in Nn\{0}

Page 15: Gröbner Bases

Example term orders• In one variable, there is only one

term order: 1 < x < x2 < x3 < ··· • For n = 2, we have

– degree lexicographic order1 < x1 < x2 < x1

2 < x1x2 < x22 < x1

3 < x12x2

< ···

– purely lexicographic order1 < x1 < x1

2 < x13 < ··· < x2 < x1x2 <

x12x2 < ···

Page 16: Gröbner Bases

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 >

Page 17: Gröbner Bases

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 .

Page 18: Gröbner Bases

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

Page 19: Gröbner Bases

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)

Page 20: Gröbner Bases

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)}.

Page 21: Gröbner Bases

Standard Monomials

• I Q[x1,…,xn] an ideal, < a term order. A monomial xa = x1

a1x2a2 ··· xn

an is standard if it is not in the initial ideal in<(I).

• Example: If n = 3 and in<(I) = <x13,x2

4,x35>,

the number of standard monomials is 60. If in<(I) = <x1

3,x24, x1x3

4>, then the number of standard monomials is infinite.

Page 22: Gröbner Bases

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.

Page 23: Gröbner Bases

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

Page 24: Gröbner Bases

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].

Page 25: Gröbner Bases

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) = min<(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.

Page 26: Gröbner Bases

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.

Page 27: Gröbner Bases

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.

Page 28: Gröbner Bases

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).

Page 29: Gröbner Bases

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.