Now we are ready to gather all the ideas developed here and devise an algorithm to find the zeros of a system of polynomials. The algorithm works by successively computing the common zeros of theith elimination
ideal and then extending these to the common zeros of the (i−1)th ideal.
The algorithm involves computing the zeros of a univariate polynomial; while this is a hard problem for large-degree polynomials, the algorithm as- sumes this can be computed by someoracle. An interesting open problem, thus, is to study how this algorithm interfaces with various finite-precision (numeric) and infinite-precision (symbolic) algorithms available for com- puting the zeros of a univariate polynomial.
However, the main appeal of the following algorithm is that we can turn a multivariate problem into a sequence of univariate problems via the Gr¨obner basis.
150 Solving Systems of Polynomial Equations Chapter 4
FindZeros(F)
Input: F ={f1, . . . , fr} ⊂L[x1, . . . , xn],
L= An algebraically closed field.
Output: The zeros ofF in AnifF is finitely solvable. ComputeGa Gr¨obner basis of (F) with respect to >
LEX;
ifGis not in strongly triangular form then return with failure
end{if};
H:={g∈Gn−1};
pn−1:= the GCD of the polynomials inH;
Xn−1:={hξni : p(ξn) = 0};
fori:=n−1down to1loop
Xi−1 :=∅;
for allhξi+1,. . .,ξni ∈Xiloop
H:={g(xi,ξi+1,. . .,ξn) : g∈Gi−1};
pi−1:= the GCD of the polynomials inH;
ifpi−16∈L then
Xi−1:=Xi−1∪
{hξi,ξi+1,. . .,ξni : pi−1(ξi) = 0};
end{if}; end{loop}; end{loop}; return(X0);
end{FindZeros}
Theorem 4.4.1 Let F = {f1, . . ., fr} ⊂ L[x1, . . ., xn] and L, an alge- braically closed field. Assume that there is an effective procedure to compute the zeros of a univariate polynomial in L[x].
Then in finite number of steps, the algorithmFindZeroscomputes the zeros ofF in An if F is finitely solvable.
proof.
The termination of the algorithm easily follows from the fact that there are effective procedures to compute a Gr¨obner basis, to check if a system is in strongly triangular form, to compute the GCD of a set of univariate polynomials and to compute the zeros of a univariate polynomial.
Assume thatF is finitely solvable. We want to show that X0=Z(F).
It is easily seen that every element ofX0 is a zero of (G) and thus of
the polynomials inF: X0⊆ Z(F).
To see the converse, we argue by induction onithat for alli(0≤i < n),
Z((F)i)⊆Xi, where (F)i is theith elimination ideal ofF.
•Base Case: i=n−1.
By a previous theorem, we know that (F)n−1= (Gn−1∪Gn) = (Gn), since
(Gn) = (0), by assumption. SinceGn−1⊆L[xn], a principal ideal domain,
(Gn−1) = (pn−1), wherepn−1is a GCD of Gn−1. Thus, ifhξniis a zero of Gn−1, thenhξniis also a zero ofpn−1, andhξni ∈Xn−1.
•Induction Case: i < n−1.
By the inductive hypothesis, the zeros of (F)i+1 are inXi+1. Let Π be the
projection map defined as follows: Π : An−i→An−i−1
: hξi+1, ξi+2, . . . , ξni 7→ hξi+2, . . . , ξni. Lethξi+1,ξi+2,. . ., ξnibe a zero of (F)i. Then
hξi+2, . . . , ξni= Π(hξi+1, ξi+2, . . . , ξni)∈ Z((F)i+1)⊆Xi+1. Since (F)i= n [ j=i Gj ,
we see thathξi+1,ξi+2,. . .,ξniis a zero ofGi, andhξiiis a zero of the set H={g(xi+1, ξi+2, . . . , ξn):g∈Gi}.
But sinceH ⊆L[xi+1], a principal ideal domain, we see thathξi+1iis also
a zero ofpi, the GCD of the polynomials inH. Thus
hξi+1, ξi+2, . . . , ξni ∈Xi, and we see that
X0⊆ Z(F) =Z((F)0)⊆X0,
152 Solving Systems of Polynomial Equations Chapter 4
Problems
Problem 4.1Prove that ifIandJ are ideals thenZ(I)∪ Z(J) andZ(I)∩ Z(J) are algebraic sets and
Z(I)∪ Z(J) = Z(I∩J) = Z(I·J),
Z(I)∩ Z(J) = Z(I+J). Problem 4.2
(i)Letf1,. . .,fr,g1,. . .,gs∈L[x1,. . .,xn] be a finite set of multivari-
ate polynomials over an algebraically closed fieldL. Devise a procedure to decide if there is a pointp∈Ln such that
f1(p) = 0, . . . , fr(p) = 0 and g1(p) 6= 0, . . . , gs(p) 6= 0.
(ii) Let f1, . . ., fr, g1, . . ., gs and h ∈ L[x1, . . ., xn] be a finite set
of multivariate polynomials over an algebraically closed fieldL. Devise a procedure to decide if the following statement is true:
∀p∈Ln f1(p) = 0∧ · · · ∧fr(p) = 0∧g1(p)6= 0∧ · · · ∧gs(p)6= 0 ⇒ h(p) = 0 . Problem 4.3
Given f ∈L[x1, . . ., xn] and a finite set of polynomialsF ={f1, . . ., fr} ⊆L[x1,. . .,xn] (L= an algebraically closed field), devise an algorithm
for theradical ideal membership problem, i.e., an algorithm that decides if f ∈p(F).
If so, expressfq (for an appropriateq
∈N) as follows:
fq =h1f1+· · ·+hrfr where fi∈L[x1, . . . , xn].
Problem 4.4
Consider the following well-known NP-complete problems:
(i) Satisfiability: Let u1, . . ., un be a set of Boolean variables that can take one of two truth values: true andfalse. Ifuis a variable, thenu anduare literals with the condition that ifuholds true, thenuholds false
and vice versa. A 3-CNF formula is a conjunction of clauses where each clause is a disjunction of exactly three literals. For instance:
(u1∨u3∨u8)∧(u2∨u3∨u7)∧(u4∨u5∨u6)∧(u3∨u5∨u8).
A 3-CNF formula is said to besatisfiable if it is possible to assign to each variable a truth value so that the formula evaluates to true (i.e., at least one literal in each clause has the value true).
Satisfiability(C)
Input: A 3-CNF formulaC over a set of variablesu1,. . .,un.
Output: IfCis satisfiable then returnTrue; Otherwise, returnFalse.
(ii) Graph 3-Colorability: Given an undirected graph G= (V, E), it is said to beK-colorable, if there is a mappingf :V →[1..K] such that every pair of adjacent vertices are assigned distinct colors.
3-Colorability(G)
Input: An undirected graphG= (V, E). Output: IfGis 3-colorable then returnTrue;
Otherwise, returnFalse.
(iii) Hamiltonian Path: For an undirected graph G = (V, E), a simple path in G is a sequence of distinct vertices, hv1, v2, . . ., vki, such that [vi, vi+1] ∈ E (1 ≤ i < k). A Hamiltonian path in G from s to t
(s, t∈V,sandtare distinct) is a simple path fromstotthat includes all the vertices ofG.
Hamiltonian(G, s, t)
Input: An undirected graphGand two distinct verticessandt. Output: IfGhas a Hamiltonian path fromstotthen returnTrue;
Otherwise, returnFalse.
Show that in each case, one can find a set of polynomialsf1, . . ., fr∈ L[x1, . . ., xm] [where m, r, max(deg(fi)) are polynomially bounded by
the input size of the problem instances] such that the problem has an affirmative answer if and only if the corresponding system of polynomial equations is solvable.
154 Solving Systems of Polynomial Equations Chapter 4
Problem 4.5
One can define inductively a mapping from the class of Boolean formulas over{u1,. . .,un} to the ringZ2[x1,. . ., xn] as follows:
Φ : Boolean formulas → Z2[x1, . . . , xn]
: ui 7→ xi
: F∨G 7→ Φ(F)·Φ(G) + Φ(F) + Φ(G) : F∧G 7→ Φ(F)·Φ(G)
: ¬F 7→ Φ(F) + 1.
This mapping usually follows from the classical Stone isomorphism lemma of logic.
(i.a) Consider a system of polynomials overZ2:
G= x2 1+x1 = 0 x2 2+x2 = 0 .. . x2 n+xn = 0 (4.1)
Show that the set of solutions of equation 4.1 in any algebraically closed field containingZ2 is simply (Z2)⋉.
(i.b)Letf ∈Z2[x1,. . .,xn] be a polynomial that vanishes at all the points of (Z2)⋉. Show thatf ∈(G).
(ii.a)Consider a truth assignment
T :{u1, . . . , un} → {true,false} and a vectorvT associated with it:
vT =ha1, . . . , ani where ai= 1 ifT(ui) = true 0 ifT(ui) = false
Show that a Boolean formula evaluates to true (respectively, false) under a truth assignmentT if and only if Φ(F)(vT) = 1 (respectively, = 0).
(ii.b) Show thatF = satisfiable if and only if Φ(F)6∈(G). (ii.c) Show thatF = tautology if and only if 1 + Φ(F)∈(G).
Problem 4.6
We use the same notations as those of the preceding problem. Let g=∀u1, . . . , un−m ∃un−m+1, . . . , un
h
F(u1, . . . , um)
i
be a statement, in which F is a quantifier-free logical formula over the variablesu1,. . .,un.
Let NFcG(Φ(F)) = f0(x1, . . . , xn−m) + X i>0 fi(x1, . . . , xn−m)pi(xn−m+1, . . . , xn)
wherepi∈PP(xn−m+1,. . ., xn). (See Problem 3.9).
Prove thatg holds if and only if 1 +f0∈ f1, f2, . . . , x21+x1, x22+x2,· · ·, x2n+xn . Problem 4.7
IfI is a zero-dimensionalprime ideal inK[x1,. . .,xn], then show that I can be generated by n polynomials: I = (g1, . . ., gn) where gi ∈ K[xi, . . ., xn].
Problem 4.8
Consider two planar curvesP(x, y) andQ(x,y) in R[x,y]. Let Gbe a reduced Gr¨obner basis of the following ideal inR[a, b,u,x, y]:
(P(a, b), Q(a, b), u−(a−x)(b−y))
computed with respect to a pure lexicographic ordering witha >
LEXb >LEXu.
LetV(u, x, y) be the polynomial inG∩R[≅,x,y].
Assume that Vp(u) = V(u, x0, y0) (for some p = hx0, y0i ∈ R2) is a
nonzero square-free polynomial inR[≅].
Show that the number of positive real roots of Vp(u) is exactly equal to the number of real zeros of (P, Q) lying in the top-right and bottom-left orthants centered atp, i.e.,
{ha, bi : (a > x0, b > y0) or (a < x0, b < y0)}.
Problem 4.9
Let R = K[x1, . . ., xn] be a polynomial ring over the field K and I
an ideal ofR. Then the equivalence relation ≡modI partitions the ring R into equivalence classes such that f,g ∈ R belong to the same class if f ≡ gmodI. The equivalence classes of R are called itsresidue classes moduloI. We use the notation R/I to represent the set of residue classes ofRwith respect to I.
Letf denote the set{g:f ≡gmodI}. Check that the mapf 7→f is thenatural ring homomorphism ofRontoR/I. We sometimes writef+I forf. R/Iis called theresidue class ring moduloI.
156 Solving Systems of Polynomial Equations Chapter 4
1. R/I is a vector space overK. 2. LetGbe a Gr¨obner basis, and let
B = {p : p∈PP(x1, . . . , xn) such thatpis not a multiple
of the Hterm of any of the polynomials inG}. ThenB is a linearly independent (vector space) basis ofR/(G) over K.
(ii)Devise an algorithm to decide ifR/(F) is a finite-dimensional vector space for a given set of polynomialsF ⊆R.
(iii) Devise an algorithm to compute the basis of a residue class ring R/(F), whereF ⊆R and (F) is a zero-dimensional ideal. Also compute the “multiplication table” for the computed basis B; if pi, pj ∈ B, then the (pi,pj)th entry of the multiplication table gives a linear representation
ofpi·pj in terms of the basis elements inB.
Problem 4.10
LetKbe a computable field and <
A be a fixed but arbitrary computable
admissible ordering on PP(x1,. . .,xn). Assume thatG⊆K[x1,. . .,xn] is
a finite Gr¨obner basis of (G) with respect to <
A. Devise an algorithm to
find
p∈(G)∩K[x1]
wherepis a univariate polynomial of minimal degree inx1. Your algorithm
must not recompute a new Gr¨obner basis.
Problem 4.11
Let I ⊆ k[x1, x2, . . ., xn] be a zero-dimensional ideal in a ring of
multivariate polynomials over an arbitrary field. LetD1,D2,. . .,Dn be a sequence of nonnegative numbers such that
∀1≤i≤n ∃fi∈I∩k[xi] h fi6= 0 and deg(fi)≤Di i . Show thatI has a Gr¨obner basis Gwith respect to total lexicographic ordering such that
∀g∈G " deg(g)≤ n X i=1 Di # .
Problem 4.12
A plane curveCis said to be given by its (polynomial)parametric form
hp(t),q(t)i, if
C=nhα, βi ∈R2 : ∃τ∈R hα=p(τ) andβ =q(τ)io.
Similarly, a plane curveC is said to be given by itsimplicit form f(x,y), if
C={hα, βi ∈R2 : ℧(α, β) =0}.
Give an algorithm that takes as its input a curve in its polynomial parametric form and produces its implicit form.
Solutions to Selected Problems
Problem 4.1First, we show thatZ(I)∪ Z(J) =Z(IJ) =Z(I∩J).
(1) P ∈ Z(IJ)∧P 6∈ Z(I) ⇒ ∀f ∈I ∀g∈J hf g(P) = 0i ∧ ∃f ∈I hf(P)6= 0i ⇒ ∀g∈J hg(P) = 0i ⇒ P ∈ Z(J) Hence, Z(I)∪ Z(J)⊇ Z(IJ). (2) SinceIJ ⊆I∩J, we have Z(IJ)⊇ Z(I∩J). (3) Lastly, we see that
(I∩J ⊆I) ∧ (I∩J ⊆J)
⇒ Z(I∩J)⊇ Z(I) ∧ Z(I∩J)⊇ Z(J)
⇒ Z(I∩J)⊇ Z(I)∪ Z(J).
Hence,
Z(I)∪ Z(J)⊇ Z(IJ)⊇ Z(I∩J)⊇ Z(I)∪ Z(J), thus implying that all of these sets are equal.
158 Solving Systems of Polynomial Equations Chapter 4
Next, we show thatZ(I)∩ Z(J) =Z(I+J).
P ∈ Z(I)∩ Z(J)
⇔ ∀f ∈I hf(P) = 0i ∧ ∀g∈J hg(P) = 0i
⇔ ∀h∈I+J hh(P) = 0i
⇔ P ∈ Z(I+J).
Problem 4.2
(i)The problem can be reduced to an instance of solvability of a system ofpolynomial equations by means of the following artifice due to A. Rabi- nowitsch (Math. Ann., 102:518). Consider the following set of equations inL[x1,. . .,xn, z]: f1 = 0 .. . (4.2) fr = 0 (1−g1· · ·gs·z) = 0.
Then, we claim that the following system is solvable if and only if the system in equation 4.2 is solvable:
f1 = 0 .. . fr = 0 (4.3) g1 6= 0 .. . gs 6= 0.
Assume that p=hξ1, . . ., ξni ∈ Ln is a solution for the system in equa- tion 4.3. Letζ=g1(p)· · ·gs(p)
−1
.Such aζexists, sinceg1(p)· · ·gs(p)6=
0 and we are working in a fieldL. It is now trivial to see thatp′=hξ1,. . ., ξn,ζi ∈Ln+1 is a solution for the system in equation 4.2.
Conversely, if p′ = hξ1, . . ., ξn, ζi ∈ Ln+1 is a solution for the sys-
tem in equation 4.3, then p = hξ1, . . ., ξni ∈ Ln is a solution for the system in equation 4.3. Clearly, f1(p) = 0, . . ., fr(p) = 0. Additionally, g1(p)· · ·gs(p)6= 0,since, otherwise, (1−g1· · ·gs·z)(p′) would have been 1. Since, we are working over a field, it follows thatg1(p)6= 0,. . .,gs(p)6= 0.
Thus it suffices to check that
16∈f1, . . . , fr,(1−g1· · ·gs·z)
.
(ii)By using a sequence of logical identities, it is easy to show that the formula ∀p∈Ln f1(p) = 0∧ · · · ∧fr(p) = 0 ∧ g1(p)6= 0∧ · · · ∧gs(p)6= 0 ⇒ h(p) = 0 (4.4) is equivalent to the following:
¬∃p∈Ln f1(p) = 0∧ · · · ∧fr(p) = 0 ∧ g1(p)6= 0∧ · · · ∧gs(p)6= 0∧h(p)6= 0 . Thus formula 4.4 holds true if and only if the following system of equations inL[x1,. . .,xn, z] is unsolvable: f1 = 0 .. . fr = 0 (1−g1· · ·gs·h·z) = 0 is unsolvable, i.e, if 1∈f1, . . . , fr,(1−g1· · ·gs·h·z) . Problem 4.4
(i) We shall construct a set of polynomials overC[x1T,x1F,. . .,xnT, xnF,z] such that the system of equations has a solution if and only if the given 3-CNF formula is satisfiable. For each variableui we introduce two variables,xiT andxiF, and the following set of equations:
x2
iT −xiT = 0
x2iF−xiF = 0 (4.5)
160 Solving Systems of Polynomial Equations Chapter 4
These equations guarantee that xiT andxiF only take the values 0 and 1 and that ifxiT takes the value 1, thenxiF must take the value 0, and vice versa.
Now for each literal we define a mappingT where T(ui) =xiT and T(ui) =xiF.
Now, extend the mappingT to a clauseC= (u∨u′∨u′′) as follows: T(u∨u′∨u′′) =T(u) +T(u′) +T(u′′).
Finally, extend the mapping T to a 3-CNF formulaC1∧ · · · ∧Cm: T(C1∧ · · · ∧Cm) = 1−z
m
Y
i=1
T(Ci). (4.6)
For instance, the polynomial associated with the 3-CNF example in the problem will be
1−z(x1T+x3F+x8T) (x2F+x3T+x7F) (x4F+x5F+x6F) (x3F+x5T+x8F). Clearly, if the 3-CNF formula is satisfiable, then the system of equations (4.5) and (4.6) have a solution. (Ifuiis true then letxiT = 1 andxiF = 0, etc., and since for each clauseCi evaluates to true,T(Ci)6= 0 and for some value ofz∈Cequation 4.6 vanishes.)
Conversely, if the constructed system of equations has a solution then for each such solution,xiT takes a value in{0,1}; assignui the truth value true iffxiT = 1. Such a truth assignment obviously satisfies the 3-CNF.
The solution uses 2n+ 1 variables and 3n+ 1 equations each of total degree≤(m+ 1). Note that the equationT(C1∧ · · · ∧Cm) can be reduced
in polynomial time (using complete-reduction) by the equations {x2
iT − xiT, x2iF −xiF : 1 ≤ i ≤ n} to yield an equation of degree 1 in each variable.
A much simpler solution can be constructed, by considering the follow- ing polynomials inC[x1,. . .,xn]. For each Boolean variableui, associate a variablexi. Define a mappingTe over the literals as follows:
e
T(ui) = (xi−1) and Te(ui) =xi.
Now, extend the mappingTe to a clauseC= (u∨u′∨u′′) as follows:
e
T(u∨u′∨u′′) =Te(u)·Te(u′)·Te(u′′).
For the given 3-CNF formulaC1∧ · · · ∧Cm, construct the following system
of equations:
e
It is easily seen that the system of equations is solvable if and only if the original 3-CNF formula is satisfiable.
For the example 3-CNF formula, the system of equations is the follow- ing:
(x1−1)x3(x8−1) = 0 x2(x3−1)x7 = 0 x4x5x6 = 0 x3(x5−1)x8 = 0.
This solution usesnvariables andm equations each of total degree 3. (ii)Again we shall work over the fieldCand make use of the three cube roots of unity: 1,ωandω2—these three constants will be used to represent the three colors. For each vertexvi, associate a variablexi and introduce the following equation into the system:
x3i −1 = 0.
This “enforces” that the vertexvitakes a color in{1, ω, ω2}. Now the con- dition that each pair of adjacent vertices [vi, vj]∈E are assigned distinct colors can be “enforced” by the following set of equations:
x2i +xixj+x2j = 0, where [vi, vj]∈E.
It is not hard to show that the graph is 3-colorable if and only if the constructed system of equations inC[x1,. . .,xn] (n=|V|) has a solution inC⋉.
The solution uses |V| variables and|V|+|E| equations each of total degree at most 3.
(iii) As before, our construction will be over the algebraically closed field, C. Without loss of generality assume that s = v1 and t = vn. It
suffices to find a bijective mapf :V →[1..n] such thatf(v1) = 1, f(vn) = n and such that if f maps two vertices to successive values (i.e., k and k+ 1), then the vertices must be adjacent.
For each vertex vi, associate a variable xi and additionally, introduce two auxiliary variablez andz′. The bijectivity of f can be “enforced” by the following sets of equations:
x1−1 = 0, xn−n= 0
(xi−1) (xi−2)· · ·(xi−n) = 0 for 1< i < k 1−z Y
1≤i<j≤n
(xi−xj) = 0
The last condition (i.e., (∀[vi, vj]6∈E) [|f(vi)−f(vj)| 6= 1] ) can be “en- forced” by the following set of equations:
1 +z′−(x
162 Solving Systems of Polynomial Equations Chapter 4
The solution uses|V|+ 2 variables and O(|V|2) equations of each of
total degree at most|V|2.
Problem 4.5
(i.a) Note thatG is already in strongly triangular form and one can