Expressing Combinatorial Problems by Systems of Polynomial ...

6 downloads 18175 Views 395KB Size Report
3Department of Computer Science, University of California, Davis, California, USA ... Received 5 June 2007; revised 3 June 2008; first published online 28 April 2009 ... minimum degree of a Hilbert Nullstellensatz certificate of the associated ...
c 2009 Cambridge University Press Combinatorics, Probability and Computing (2009) 18, 551–582.  doi:10.1017/S0963548309009894 Printed in the United Kingdom

Expressing Combinatorial Problems by Systems of Polynomial Equations and Hilbert’s Nullstellensatz

J. A. L O E R A 1†, J. L E E 2 , S. M A R G U L I E S 3† and S. O N N 4‡ 1 Department

2 IBM

T. J. Watson Research Center, Yorktown Heights, New York, USA (e-mail: [email protected])

3 Department

4 Davidson

of Mathematics, University of California, Davis, California, USA (e-mail: [email protected])

of Computer Science, University of California, Davis, California, USA (e-mail: [email protected])

Faculty of IE & M, Technion – Israel Institute of Technology, Haifa, Israel (e-mail: [email protected])

Received 5 June 2007; revised 3 June 2008; first published online 28 April 2009

Systems of polynomial equations over the complex or real numbers can be used to model combinatorial problems. In this way, a combinatorial problem is feasible (e.g., a graph is 3-colourable, Hamiltonian, etc.) if and only if a related system of polynomial equations has a solution. For an infeasible polynomial system, the (complex) Hilbert Nullstellensatz gives a certificate that the associated combinatorial problem is infeasible. Thus, unless P = NP, there must exist an infinite sequence of infeasible instances of each hard combinatorial problem for which the minimum degree of a Hilbert Nullstellensatz certificate of the associated polynomial system grows. In the first part of the paper, we show that the minimum degree of a Nullstellensatz certificate for the non-existence of a stable set of size greater than the stability number of the graph is the stability number of the graph. Moreover, such a certificate contains at least one term per stable set of G. In contrast, for non-3-colourability, we proved that the minimum degree of a Nullstellensatz certificate is at least four. Our efforts so far have only yielded graphs with Nullstellensatz certificates of precisely that degree. In the second part of this paper, for the purpose of computation, we construct new polynomial encodings for the problems of finding in a graph its longest cycle, the largest planar subgraph, the edge-chromatic number, or the largest k-colourable subgraph. We include some applications to graph theory.

† ‡

Research supported in part by an IBM Open Collaborative Research Award and by NSF grant DMS-0608785. Research supported by the ISF (Israel Science Foundation) and by the fund for the promotion of research at the Technion.

552

J. A. De Loera, J. Lee, S. Margulies and S. Onn 1. Introduction

N. Alon [1] used the term ‘polynomial method’ to refer to the use of non-linear polynomials for solving combinatorial problems. Although the polynomial method is not yet as widely used by combinatorists as, for instance, polyhedral or probabilistic techniques, the literature in this subject continues to grow. Prior work on encoding combinatorial properties includes colourings [2, 11, 14, 17, 27, 30, 31, 32], stable sets [11, 26, 27, 39], matchings [15], and flows [2, 32, 33]. Non-linear encodings of combinatorial problems are often compact. This contrasts with the exponential sizes of systems of linear inequalities that describe the convex hull of incidence vectors of many combinatorial structures (see [40]). The polynomial method has been mostly used to obtain theoretical results but not so much for actual computation. But recent work demonstrates that one can derive good semidefinite programming relaxations for combinatorial optimization problems from the encodings of these problems as polynomial systems (see [24] and references therein for details). Lasserre [22], Laurent [23] and Parrilo [35, 34] studied the problem of minimizing a general polynomial function f(x) over an algebraic variety having only finitely many solutions. Laurent proved that when the variety consists of the solutions of a zero-dimensional ideal I, there is a way to set up the optimization problem min{f(x) : x ∈ variety(I)} as a finite sequence of semidefinite programs terminating with the optimal solution (see [23]). These SDP relaxations have been used in actual computation with great success (see, e.g., [4, 12]). The polynomial method combined with semidefinite programming is a way to approach optimization problems. In this paper, we look instead at feasibility or decision problems. Our key observation is that the sequence of SDPs is replaced by a simpler sequence of large-scale linear algebra problems. The main idea to generate these systems of linear equations is to rely on the (complex) Hilbert’s Nullstellensatz. For a combinatorial feasibility problem, e.g., deciding the k-colourability of graphs, we associate a system of polynomial equations J such that the system has a solution if and only if the combinatorial problem is indeed feasible. On the other hand, the famous Hilbert Nullstellensatz (see [9]) states that a system of polynomial equations J = {f1 (x) = 0, f2 (x) = 0, . . . , fr (x) = 0} with complex coefficients has no solution in Cn if  and only if there exist polynomials α1 , . . . , αr ∈ C[x1 , . . . , xn ] such that 1 = αi fi . Thus, if the polynomial system J has no solution, there exists a certificate that the associated combinatorial problem is infeasible. If the coefficients αi have fixed degree D, the Nullstellensatz certificate is equivalent to a linear algebra system whose number of variables grows with the number of monomials of degree D. We will explain details of the construction of this linear algebra system in Section 2. The main purpose of this article is to investigate the complexity and growth of these linear algebra systems. There are well-known upper bounds, due to Kollar [20], for the degrees of the coefficients αi in the Hilbert Nullstellensatz certificate for general systems of polynomials, and they turn out to be sharp. For instance, the following well-known example (due to Mora, Lazard, Masser, Philippon and Koll´ar) shows that the degree of α1 is at least dm : f1 = xd1 , f2 = x1 − xd2 , . . . , fm−1 = xm−2 − xdm−1 , fm = 1 − xm−1 xd−1 m . But polynomial systems for combinatorial optimization problems are not necessarily pathologically complicated. The natural question is: How large are the degrees of Nullstellensatz certificates

Combinatorial Problems and Polynomial Equations

553

of infeasibility for combinatorial ideals? A fundamental result by Lazard [25] (see also [6]) proves that for combinatorial ideals, like the ones discussed in Section 2, there is an upper bound that is linear on the number of variables, improving the exponential bound of [20]. In Section 2 we will see that the linear bound of Lazard is tight for the stability number of graphs but it seems too pessimistic for 3-colourability. There is a fascinating connection between the Nullstellensatz and computational complexity. As we will see in Section 2, unless P = NP, for every hard combinatorial problem there must exist an infinite sequence of infeasible instances for which the minimum degree of a Nullstellensatz certificate, for the associated system of polynomials, grows arbitrarily large. This was first observed by L. Lov´asz, who then proposed the problem of finding explicit graphs exhibiting such growth (see [27]). A main contribution of this article is to explicitly exhibit the growth of degree of specific families of graphs. In the first part of the paper we discuss the growth of degree for the NP-complete problems ‘stable set’ and ‘3-colourability’. We establish the following main theorem.

Theorem 1.1. (i) Given a graph G, let α(G) denote its stability number. A minimum-degree Nullstellensatz certificate for the non-existence of a stable set of size greater than α(G) has degree equal to α(G) and contains at least one term per stable set in G. (ii) Every Nullstellensatz certificate for non-3-colourability of a graph has degree at least four. Moreover, in the case of a graph containing an odd-wheel or a clique as a subgraph, a minimum-degree Nullstellensatz certificate for non-3-colourability has degree exactly four.

The motivation of our work is to use the Nullstellensatz linear algebra method as a computational tool much in the same way that linear and semidefinite programming have been used already by combinatorists. Our general scheme is as follows. If we can encode a combinatorial problem with polynomial equations in R[x1 , . . . , xn ] that generate a zero-dimensional (variety is finite) ideal, then we generate the finite sequence of linear algebra systems that can help decide feasibility of our combinatorial problem. This highlights the importance of finding systems of polynomials for various combinatorial optimization problems. The second part of this paper proposes new polynomial system encodings for the problems, with respect to an input graph, of finding a longest cycle, a largest planar subgraph, a largest k-colourable subgraph, or a minimum edge colouring. In particular, we establish the following result.

Theorem 1.2. (i) A simple graph G with nodes 1, . . . , n has a cycle of length L if and only if the following zero-dimensional system of polynomial equations has a solution. n  i=1

yi = L.

(1.1)

J. A. De Loera, J. Lee, S. Margulies and S. Onn

554

For every node i = 1, . . . , n, yi (yi − 1) = 0, yi

n 

(xi − s) = 0,

(1.2)

s=1



(xi − yj xj + yj )(xi − yj xj − yj (L − 1)) = 0.

(1.3)

j∈Adj(i)

Here Adj(i) denotes the set of nodes adjacent to node i. (ii) Let G be a simple graph with n nodes and m edges. G has a planar subgraph with K edges if and only if the following zero-dimensional system of equations has a solution. For every edge {i, j} ∈ E(G),  2 − z{ij} = 0, z{ij} − K = 0. z{ij} {i,j}∈E(G)

For k = 1, 2, 3, every node i ∈ V (G) and every edge {i, j} ∈ E(G), n+m 

n+m 

s=1

s=1

(x{i}k − s) = 0,

sk

 

x{i}k − x{j}k

i,j∈V (G)

i) be a poset, and C[xi (k), Δij , sk ] be a polynomial ring in p|E| + (|E|2 − |E|) + p variables (where i = 1, . . . , |E|, j = 1, . . . , |E|, j = i, and k = 1, . . . , p). Then P has poset dimension at most p if and only if the following system of equations has a solution. For k = 1, . . . , p, |E|  (xi (k) − s) = 0,

for every i ∈ {1, . . . , |E|},

s=1

sk

 

and

 xi (k) − xj (k)

(3.1) = 1.

{i,j}∈{1,...,|E|},

i ej in P , xi (k) − xj (k) − Δij (k) = 0.

(3.2)

Combinatorial Problems and Polynomial Equations

577

Figure 6. Via Schnyder’s theorem, the square is planar because P (square) has dimension at most three.

For every ordered pair of incomparable elements of P (i.e., ei > ej and ej > ei ), p  

 xi (k) − xj (k) − Δij (k) = 0,

k=1

p  

 xj (k) − xi (k) − Δji (k) = 0,

(3.3)

k=1

For k = 1, . . . , p, and for every pair {i, j} ∈ {1, . . . , |E|}, |E|−1

 d=1

(Δij (k) − d) = 0,

|E|−1



(Δji (k) − d) = 0.

d=1

Proof. With (3.1) and (3.2), we assign distinct numbers 1 to |E| to the poset elements, such that the properties of a linear extension are satisfied. Equations (3.1) and (3.2) are repeated p times, so p linear extensions are created. If the intersection of these extensions is indeed equal to the original poset P , then for every incomparable pair of elements in P at least one of the p linear extensions must detect the incomparability. But this is indeed the case for (3.3), which says that for the lth linear extension the values assigned to the incomparable pair ei , ej do not satisfy xi (l) < xj (l), but instead satisfy xj (l) > xi (l). Proof of Theorem 1.2(ii). We simply apply the above lemma to the particular pairs of order relations of the incidence poset of the graph. Note that in the formulation we added variables z{ij} that have the effect of turning on or off an edge of the input graph. Example 3 (posets and planar graphs). In Figure 6 we give a demonstration of how Schnyder’s theorem can be used to show planarity of graphs. Proof of Theorem 1.2(iii). Using Lemma 2.1, we can finish the proof of part (iii). For a kcolourable subgraph H of size R, we set yij = 1 if edge {i, j} ∈ E(H) or yij = 0 otherwise. By Lemma 2.1, the resulting subsystem of equations has a solution. Conversely, from a solution, the subgraph H in question is read off from those yij = 0. Solvability implies that H is k-colourable. Before we prove Theorem 1.2(iv), we recall that the edge-chromatic number of a graph is the minimum number of colours necessary to colour every edge of a graph such that no two edges of the same colour are incident on the same vertex.

578

J. A. De Loera, J. Lee, S. Margulies and S. Onn

Proof of Theorem 1.2(iv). If the system of equations has a solution, then (1.8) ensures that all variables xij are assigned Δ roots of unity. Equation (1.9) ensures that no node is incident on two edges of the same colour. Because the graph contains a vertex of degree Δ, the graph cannot have an edge-chromatic number less than Δ, and because the graph is edge-Δ-colourable, this implies that the graph has edge-chromatic number exactly Δ. Conversely, if the graph has an edge-Δ-colouring, simply map the colouring to the Δ roots of unity and all equations are satisfied. Because Vizing’s classic result shows that any graph with maximum vertex degree Δ can be edge-coloured with at most Δ + 1 colours, if there is no solution, then the graph must have an edge-chromatic number of Δ + 1. 3.2. Normal forms and dual colourings In [2] Alon and Tarsi show another polynomial encoding of k-colourability. Here we consider one curious consequence of the polynomial method for graph colourings when we use an algebraic encoding similar to that of [2]. By taking a closer look at the normal form of the polynomials involved, we can derive a notion of dual colouring, which has the nice property that a graph is dually d-colourable if and only if it is d-colourable. This gives rise to an appealing new graph invariant: the simultaneous chromatic number σ(G), defined to be the smallest d such that G has a d-labelling that is simultaneously a colouring and a dual colouring.   Fix a graph G = (V , E) with V := {1, . . . , n} and E ⊆ V2 , fix a positive integer d, and let D := {0, 1 . . . , d − 1}. Let α := exp( 2πi d ) ∈ C be the primitive complex dth root of unity, so that α0 , . . . , αd−1 are distinct and αd = 1. For a d-labelling c : V −→ D of the vertices of G, let  {(αc(i) − αc(j) ) : i < j, {i, j} ∈ E}. (c) := Clearly, c is a proper d-colouring of G if and only if (c) = 0. With every orientation O = (V , A) of G (where A denotes the set of ‘arrows’ or directed edges) associate a sign, signO = ±1, defined by the parity of the number |{(i, j) ∈ A : i > j}| of flips of O from the standard orientation (where every directed edge (i, j) has i < j), and an out-degree vector δ O := (δ1O , . . . , δnO ) with δiO the out-degree of vertex i in O. For a non-negative integer k let [k] ∈ D be the representative of k modulo d, and for a vector δ = (δ1 , . . . , δn ) ∈ V n let [δ] = ([δ1 ], . . . , [δn ]) ∈ DV . For a labelling c∗ : V −→ D of the vertices of G, let  {signO : O orientation of G with [δ O ] = c∗ }. ∗ (c∗ ) := Call c∗ a dual d-colouring of G if ∗ (c∗ ) = 0. Theorem 3.4. A graph has a d-colouring, namely c ∈ DV with (c) = 0 (so it is d-colourable) if and only if it has a dual d-colouring, namely c∗ ∈ DV with ∗ (c∗ ) = 0 (so it is dually d-colourable). Proof. Let G be a graph on n vertices. Consider the following radical zero-dimensional ideal I in C[x1 , . . . , xn ] and its variety variety(I) in Cn : I := xd1 − 1, . . . , xdn − 1 ,

variety(I) := {αc := (αc(1) , . . . , αc(n) ) ∈ Cn : c ∈ DV }.

It is easy to see that the set {xd1 − 1, . . . , xdn − 1} is a universal Gr¨obner basis (see [3] ∗ and references therein). Thus, the (congruence classes of) monomials xc , c∗ ∈ DV (where

Combinatorial Problems and Polynomial Equations

579

 ∗ ∗ xc := ni=1 xic (i) ), which are those monomials not divisible by any xdi , form a vector space  aδ · xδ has a unique basis for the quotient C[x1 , . . . , xn ]/I. Therefore, every polynomial f = normal form [f] with respect to this basis, namely the polynomial that lies in the vector space ∗ spanned by the monomials xc , c∗ ∈ DV , and satisfies f − [f] ∈ I. It is not very hard to show  that this normal form is given by [f] = aδ · x[δ] . Now consider the graph polynomial of G,  {(xi − xj ) : i < j, {i, j} ∈ E}. fG := The labelling c ∈ DV is a d-colouring of G if and only if (c) = fG (αc ) = 0. Thus, G is not d-colourable if and only if fG vanishes on every αc ∈ variety(I), which holds if and only if f ∈ I, because I is radical. It follows that G is d-colourable if and only if the representative of fG is not  O signO · xδ , with the sum extending over the 2|E| orientations O of G, we zero. Because fG = obtain   O ∗ signO · x[δ ] = ∗ (c∗ ) · xc . [fG ] = c∗ ∈DV

Therefore [fG ] = 0 and G is d-colourable if and only if there is a c∗ ∈ DV with ∗ (c∗ ) = 0. Example 4. Consider the graph G = (V , E), V = {1, 2, 3, 4} and E = {12, 13, 23, 24, 34}, and let d = 3. The normal form of the graph polynomial can be shown to be [fG ] = x21 x22 x3 − x21 x22 x4 + x21 x2 x24 − x21 x2 x23 + x21 x23 x4 − x21 x3 x24 + x1 x2 − x1 x2 x23 x4 + x1 x23 x24 − x1 x3 + x1 x22 x3 x4 − x1 x22 x24 + x23 − x3 x4 + x22 x3 x24 − x22 + x2 x4 − x2 x23 x24 . Note that, in general, the number of monomials appearing in the expansion of fG can be as much as the number of orientations 2|E| ; but usually it will be smaller due to cancellations that occur. Moreover, there will usually be further cancellations when moving to the normal form, so typically [fG ] will have fewer monomials. In our example, out of the 2|E| = 25 = 32 monomials corresponding to the orientations, in the expansion of fG only 20 appear, and in the normal form [fG ] only 18 appear due to the additional cancellation, −[x1 x33 x4 ] + [x1 x32 x4 ] = −x1 x4 + x1 x4 = 0. Note that the graph G in this example has only six 3-colourings (which are in fact the same up to relabelling of the colours), but as many as 18 dual 3-colourings c∗ corresponding to ∗ monomials xc appearing in [fG ]. For instance, consider the labelling c∗ (1) = c∗ (2) = c∗ (4) = 0, c∗ (3) = 2: the only orientation O that satisfies [δjO ] = c∗ (j) for all j is one with edges oriented as 21, 23, 24, 31, 34, having signO = 1 and out-degrees δ1O = δ4O = 0, δ3O = 2 and δ2O = 3,  ∗ contributing to [fG ] the non-zero term ∗ (c∗ ) · 4j=1 xjc (j) = 1 · x01 x02 x23 x04 = x23 . Thus, c∗ is a dual 3-colouring (but, because c∗ (1) = c∗ (2), it is neither a usual 3-colouring nor a simultaneous 3-colouring; see below).

580

J. A. De Loera, J. Lee, S. Margulies and S. Onn

Figure 7. Left: a vertex labelling. Right: an acyclic orientation labelled with out-degrees.

Note that in this example, and seemingly often, there are many more dual colourings than colourings; this suggests a randomized heuristic to find a dual d-colouring for verifying d-colourability. A particularly appealing notion that arises is the following: call a vertex labelling s : V −→ D a simultaneous d-colouring of a graph G if it is simultaneously a d-colouring and a dual d-colouring of G. The simultaneous chromatic number σ(G) is then the minimum d such that G has a simultaneous d-colouring. This is a strong notion that may prove useful for inductive arguments, perhaps in the study of the 4-colour problem of planar graphs, and which provides an upper bound on the usual chromatic number χ(G). First note that, like the usual chromatic number, it can be bounded in terms of the maximum degree Δ(G) as follows. Theorem 3.5. The simultaneous chromatic number of any graph G satisfies σ(G)  Δ(G) + 1. Moreover, for any G and d  Δ(G) + 1, there is an acyclic orientation O whose out-degree vector δ O = (δ1O , . . . , δnO ) provides a simultaneous d-colouring s defined by s(i) := δiO for every vertex i. Proof. We prove the second (stronger) claim, by induction on the number n of vertices. For n = 1, this is trivially true. Suppose n > 1, and let d := Δ(G) + 1. Pick any vertex i of maximum degree Δ(G), and let G be the graph obtained from G by removing vertex i and all edges incident on i. Let O be an acyclic orientation of G and s the corresponding simultaneous d-colouring of G guaranteed to exist by induction. Extend O to an orientation O of G by orienting all edges incident on i away from i, and extend s to the corresponding vertex labelling of G by setting s(i) := δiO = d − 1. Then O is acyclic, and therefore O is the unique orientation of G with outdegree vector δ O . Thus,  ∗ (s) = {signθ : θ orientation of G with [δ θ ] = s = δ O } = ±1 = 0, and therefore s is a dual d-colouring of G. Moreover, if j is any neighbour of i in G, then the  degree of j in G is at most d − 2, and therefore its label s (j) = δ O (j)  d − 2, and hence s(j) = s (j) = d − 1 = s(i). Therefore, s is also a d-colouring of G, completing the induction.

Example 5 (simultaneous 4-colouring of the Petersen graph). According to Figure 7, δ O = (2, 1, 0, 2, 0, 3, 1, 2, 3, 1). By inspection of Figure 7, s(i) := δiO does indeed describe a valid 4-colouring of the Petersen graph.

Combinatorial Problems and Polynomial Equations

581

There are many new combinatorial and computational problems related to this new graph invariant, which behaves quite differently from the usual chromatic number. For instance, the direct analogue of Brooks’ theorem (every connected graph with maximum degree Δ that is neither complete nor an odd cycle is Δ-colourable) fails. It is not hard to verify that the simultaneous chromatic number of the cycle Cn is 2 if and only if n is a multiple of 4; thus, the hexagon satisfies σ(C6 ) = 3 > Δ(C6 ). Which are the simultaneous chromatic Brooks graphs, i.e., those with σ(G) = Δ(G)? What is the complexity of deciding if a graph is simultaneously d-colourable? Which graphs are simultaneously d-colourable for small d? For d = 2, the complete answer was given by L. Lov´asz [28] during a discussion at the Oberwolfach Mathematical Institute, as follows. Theorem 3.6 (Lov´asz). A connected bipartite graph G = (A, B, E) has simultaneous chromatic number σ(G) = 2 if and only if at least one of |A| and |B| has the same parity as |E|. Acknowledgements The authors are grateful to the anonymous referees, whose suggestions greatly improved the presentation of our paper. We would also like to thank Monique Laurent, Peter Malkin, Pablo Parrilo, Bernd Sturmfels, Frank Vallentin, Robert Weismantel, and Alexander Woo for their helpful comments and support. References [1] Alon, N. (1999) Combinatorial Nullstellensatz. Combin. Probab. Comput. 8 7–29. [2] Alon, N. and Tarsi, M. (1992) Colorings and orientations of graphs. Combinatorica 12 125–134. [3] Babson, E., Onn, S. and Thomas, R. R. (2003) The Hilbert zonotope and a polynomial time algorithm for universal Gr¨obner bases. Adv. Appl. Math. 30 529–544. [4] Bachoc, C. and Vallentin, F. (2008) New upper bounds for kissing numbers from semidefinite programming. J. Amer. Math. Soc. 21 909–924. [5] Bayer, D. A. (1982) The division algorithm and the Hilbert scheme. PhD thesis, Harvard University. [6] Brownawell, W. D. (1987) Bounds for the degrees in the Nullstellensatz. Ann. of Math. 126 577–591. [7] Buss, S. and Pitassi, T. (1996) Good degree bounds on Nullstellensatz refutations of the induction principle. In IEEE Conference on Computational Complexity, pp. 233–242. [8] Chao, C.-Y. and Chen, Z. (1993) On uniquely 3-colorable graphs. Discrete Math. 112 374–383. [9] Cox, D., Little, J. and O’Shea, D. (1992) Ideals, Varieties and Algorithms, Springer Undergraduate Texts in Mathematics. [10] Cox, D., Little, J. and O’Shea, D. (1998) Using Algebraic Geometry, Springer Graduate Texts in Mathematics. [11] De Loera, J. A. (1995) Gr¨obner bases and graph colorings. Beitrage zur Algebra und Geometrie 36 89–96. [12] de Klerk, E., Pasechnik, D. and Schrijver, A. (2007) Reduction of symmetric semidefinite programs using the regular *-representation. Math. Programm. Ser. B 109 613–624. [13] Dyer, M. and Greenhill, C. (2000) On Markov chains for independent sets. J. Algorithms 35 17–49. [14] Eliahou, S. (1992) An algebraic criterion for a graph to be four-colourable. In Aportaciones Matem´aticas, Vol. 6 of Soc. Matem´atica Mexicana, Notas de Investigacion, pp. 3–27. [15] Fischer, K. G. (1988) Symmetric polynomials and Hall’s theorem. Discrete Math. 69 225–234. [16] Garey, M. and Johnson, D. (1979) Computers and Intractability: A Guide to the Theory of NPCompleteness, Freeman.

582

J. A. De Loera, J. Lee, S. Margulies and S. Onn

[17] Hillar, C. J. and Windfeldt, T. (2008) An algebraic characterization of uniquely vertex colorable graphs. J. Combin. Theory Ser. B 98 400–414. [18] Impagliazzo, P., Pudl´ak, P. and Sgall, J. (1999) Lower bounds for polynomial calculus and the Groebner basis algorithm. Comput. Complexity 8 127–144. [19] Jin, G. (1995) Triangle-free four-chromatic graphs. Discrete Math. 145 151–170. [20] Koll´ar, J. (1988) Sharp effective Nullstellensatz. J. Amer. Math. Soc. 1 963–975. [21] Kreuzer, M. and Robbiano, L. (2000) Computational Commutative Algebra I, Springer, Heidelberg. [22] Lasserre, J. B. (2001) Polynomials nonnegative on a grid and discrete optimization. Trans. Amer. Math. Soc. 354 631–649. [23] Laurent, M. (2007) Semidefinite representations for finite varieties. Math. Programm. 109 1–26. [24] Laurent, M. and Rendl, F. (2005) Semidefinite programming and integer programming. In Handbook on Discrete Optimization (K. Aardal, G. Nemhauser and R. Weismantel, eds), Elsevier, pp. 393–514. [25] Lazard, D. (1977) Alg`ebre lin´eaire sur K[X1 , . . . , Xn ] et e´ limination. Bull. Soc. Math. France 105 165– 190. [26] Li, S. R. and Li, W. W. (1981) Independence number of graphs and generators of ideals. Combinatorica 1 55–61. [27] Lov´asz, L. (1994) Stable sets and polynomials. Discrete Math. 124 137–153. [28] Lov´asz, L. (2002) Oberwolfach Meeting on Geometric Convex Combinatorics, Mathematisches Forschungsinstitut Oberwolfach, Germany, June 2002. [29] Margulies, S. (2008) Computer algebra, combinatorics, and complexity: Hilbert’s Nullstellensatz and NP-complete problems. PhD dissertation, UC Davis. [30] Matiyasevich, Y. (1974) A criteria for colorability of vertices stated in terms of edge orientations (in Russian). Discrete Analysis (Novosibirsk) 26 65–71. [31] Matiyasevich, Y. (2001) Some algebraic methods for calculation of the number of colorings of a graph (in Russian). Zapiski Nauchnykh Seminarov POMI 293 193–205 (available via www.pdmi.ras.ru). [32] Mnuk, M. (2001) Representing graph properties by polynomial ideals. In Computer Algebra in Scientific Computing CASC 2001: Proc. Fourth International Workshop on Computer Algebra in Scientific Computing, Konstanz 2001 (V. G. Ganzha, E. W. Mayr and E. V. Vorozhtsov, eds), Springer, pp. 431–444. [33] Onn, S. (2004) Nowhere-zero flow polynomials. J. Combin. Theory Ser. A 108 205–215. [34] Parrilo, P. (2002) An explicit construction of distinguished representations of polynomials nonnegative over finite sets. IfA Technical Report AUT02-02. [35] Parrilo, P. (2003) Semidefinite programming relaxations for semialgebraic problems. Math. Programm. Ser. B 96 293–320. [36] Schnyder, W. (1989) Planar graphs and poset dimension, Order 5 323–343. [37] Schrijver, A. (1986) Theory of Linear and Integer Programming, Wiley InterScience Series in Discrete Mathematics and Optimization, Wiley, Chichester. [38] Shauger, S. E. (1998) Results on the Erd˝os–Gy´arf´as conjecture in K1,m -free graphs. In Proc. Twentyninth Southeastern International Conference on Combinatorics Graph Theory and Computing (Boca Raton, FL, 1998). Congr. Numer. 134 61–65. [39] Simis, A., Vasconcelos, W. and Villarreal, R. (1994) On the ideal theory of graphs. J. Algebra 167 389–416. [40] Yannakakis, M. (1991) Expressing combinatorial optimization problems by linear programs. J. Comput. Syst. Sci. 43 441–466.