PowerPoint Presentation - Bernd Sturmfels Lecture 1

advertisement
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)
– Simplex Algorithm (linear programming)
General Setup
• Set of input polynomials F = {f1,…,fn}
Buchberger’s Algorithm
• Set of output polynomials G = {g1,…,gm}
Information about F easier to
understand through inspection of G
Gaussian Elimination
• Example:
2x+3y+4z = 5 & 3x+4y+5z = 2
 x = z-14 &
y = 11-2z
In Gröbner bases notation
Input:
Output:
F = {2x+3y+4z-5, 3x+4y+5z-2}
G = {x-z+14, y+2z-11}
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}
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)
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
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
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 ….
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.
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.
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.
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)
Term Orders
•
A term order is a total order <
on the set of all monomials
xa = x1a1x2a2 ··· xnan 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}
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 < ···
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 >
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 .
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
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)
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)}.
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.
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.
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
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].
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.
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.
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.
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).
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