Annotation of OpenXM/src/Ti/paper/tiger.tex, Revision 1.1.1.1
1.1 maekawa 1: \documentclass[11pt]{article}
2: \oddsidemargin 0pt
3: \evensidemargin 0pt
4: \marginparwidth 40pt
5: \marginparsep 10pt
6: \topmargin 0pt
7: \headsep 10pt
8: \textheight 8.4in
9: \textwidth 6.5in
10: \renewcommand{\baselinestretch}{1.2}
11:
12: \begin{document}
13: \newtheorem{lemma}{Lemma}[subsection]
14: \newtheorem{theorem}[lemma]{Theorem}
15: \newtheorem{definition}[lemma]{Definition}
16: \newtheorem{observation}[lemma]{Observation}
17: \newtheorem{remark}[lemma]{Remark}
18: \newtheorem{corollary}[lemma]{Corollary}
19: \newtheorem{proposition}[lemma]{Proposition}
20: \newtheorem{example}[lemma]{Example}
21: \newtheorem{algorithm}[lemma]{Algorithm}
22:
23: \title{\bf Computing Gr\"obner Fans of Toric Ideals}
24: \author{Birkett Huber \\ \\
25: MSRI\\
26: 1000 Centennial Drive\\
27: Berkeley, CA 94720\\
28: {\tt birk@msri.org} \and
29: Rekha R. Thomas\\ \\
30: Dept. of Mathematics\\
31: Texas A \& M University\\
32: College Station, TX 77843\\
33: {\tt rekha@math.tamu.edu}}
34: \maketitle
35:
36: \begin{abstract}
37: The monomial initial ideals of a graded
38: polynomial ideal are in bijection with the vertices of a convex
39: polytope known as the state polytope of the ideal. The Gr\"obner fan
40: of the ideal is the normal fan of its state polytope.
41: In this paper we present a software system called TiGERS for computing
42: the Gr\"obner fan of a toric ideal by enumerating the edge graph of
43: its state polytope. The key contributions are an inexpensive algorithm
44: for local change of Gr\"obner bases in toric ideals and the
45: identification of a reverse search tree on the vertices of the state
46: polytope. Using these ideas we obtain a combinatorial Gr\"obner walk
47: procedure for toric ideals. TiGERS has been used to compute state
48: polytopes with over 200,000 vertices.
49: \end{abstract}
50:
51: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
52: \section{Introduction}
53:
54: Consider the polynomial ring $k[{\bf x}] := k[x_1, \ldots, x_n]$ where
55: $k$ is a field and an ideal $I \subset k[{\bf x}]$ that is
56: homogeneous with respect to a positive grading $degree(x_i) =
57: \omega_i \in {\bf N} \backslash \{0\}$.
58: We use ${\bf N}$ to denote the set of non-negative integers. The
59: {\em initial ideal} of $I$ with respect to a {\em term order} $\succ$
60: on $k[{\bf x}]$ is the {\em monomial ideal} $in_{\succ}(I) := \langle
61: in_{\succ}(f) \, : \, f \in I \rangle$ where $in_{\succ}(f)$ is the
62: {\em initial term} of $f \in I$ with respect to $\succ$. The {\em
63: reduced Gr\"obner basis} of $I$ with respect to $\succ$ is the unique
64: finite set of monic polynomials ${\cal G}_{\succ}(I) = \{g_1,
65: \ldots, g_t \} \subset I$ such that (i) $in_{\succ}(I) = \langle
66: in_{\succ}(g_1), \ldots, in_{\succ}(g_t) \rangle$ and (ii) for $i \neq j$,
67: no term of $g_i$ is divisible by $in_{\succ}(g_j)$. Reduced Gr\"obner
68: bases of polynomial ideals can be computed using {\em Buchberger's
69: algorithm}. See \cite{AL} or \cite{CLO} for further details.
70:
71: Given an arbitrary {\em weight vector} $c \in {\bf R}^n$, and a
72: polynomial $f = \sum k_{\alpha}x^{\alpha} \in k[{\bf x}]$, the
73: {\em initial term} of $f$ with respect to $c$ is defined to be the sum of all
74: terms $k_{\alpha}x^{\alpha}$ in $f$ such that the inner product
75: $c \cdot \alpha$ is maximal. The {\em initial ideal} of $I$ with
76: respect to $c$ is then $in_c(I) := \langle in_c(f) \, : \, f \in I
77: \rangle$. If $in_c(I)$ is a monomial ideal then $c$ is said to be
78: {\em generic} for $I$. It is known that for a term order $\succ$ on
79: $k[{\bf x}]$, there exists a weight vector $c \in {\bf N}^n$ such that
80: $in_c(I) = in_{\succ}(I)$. In this case we say that $c$ represents $\succ$
81: and it can be shown that $in_c(I) = in_{\succ}(I)$ if and only if
82: $in_c(g) = in_{\succ}(g)$ for each $g$ in ${\cal G}_{\succ}(I)$.
83:
84: Two weight vectors $c_1$ and $c_2$ in ${\bf R}^n$ are said to be
85: {\em equivalent modulo $I$} whenever $in_{c_1}(I) = in_{c_2}(I)$. The
86: set of all weight vectors that are equivalent to $c \in {\bf R}^n$ form
87: a relatively open polyhedral cone in ${\bf R}^n$, the closure of which
88: is called the {\em Gr\"obner cone} of $c$. The Gr\"obner cone of $c$
89: is $n$-dimensional if and only if $c$
90: is generic for $I$. The collection of all Gr\"obner cones
91: of $I$ form a {\em polyhedral fan} in ${\bf
92: R}^n$ called the {\em Gr\"obner fan} of $I$ \cite{MR}. Since $I$ is
93: homogeneous with respect to a positive grading,
94: this fan is, in fact, {\em complete} (i.e., covers ${\bf R}^n$) and
95: further, each Gr\"obner cone of $I$ contains a strictly positive vector
96: of ${\bf R}^n$.
97:
98: The Gr\"obner fan of $I$ is the {\em normal fan} of a polytope in
99: ${\bf R}^n$ called the {\em state polytope} of $I$ \cite{BM}, denoted
100: as $St(I)$. Therefore, $I$ has only
101: finitely many distinct reduced Gr\"obner bases as $c$ varies over
102: all weight vectors in ${\bf R}^n$. (See \cite{Mac} for a new proof.)
103: The faces of $St(I)$ are
104: in bijection with the distinct initial ideals of $I$, with the
105: vertices of $St(I)$ corresponding bijectively to the distinct monomial
106: initial ideals of $I$. The distinct monomial initial ideals of $I$, in turn,
107: are in bijection with the distinct reduced Gr\"obner bases of $I$
108: obtained from term orders. Hence,
109: computing all such initial ideals amounts to searching the {\em edge graph}
110: of $St(I)$. Two monomial initial ideals $in_{c_1}(I)$ and
111: $in_{c_2}(I)$ are said to be {\em adjacent} if
112: the corresponding vertices of $St(I)$ are adjacent or equivalently, if
113: the Gr\"obner cones of the generic weight vectors $c_1$ and $c_2$ share a
114: common {\em facet}. See
115: Chapters 1-3 in \cite{Stu} for proofs of the results quoted above
116: and a full discussion of Gr\"obner fans and state polytopes of graded
117: polynomial ideals. Algorithms for their construction are also included.
118:
119: Given a matrix $A = [a_1, \ldots, a_n] \in {\bf Z}^{d \times n}$ of
120: rank $d$, the {\em toric ideal} of $A$, denoted as $I_A$, is the
121: kernel of the homomorphism $k[x_1,\ldots,x_n]
122: \rightarrow k[t_1^{\pm 1}, \ldots, t_d^{\pm 1}]$, such that $x_j
123: \mapsto t^{a_j}$ (see Chapter 4 in \cite{Stu}). The ideal $I_A$ is a
124: $d$-dimensional prime ideal that is
125: generated by the {\em binomials} $x^{u^+} - x^{u^-}$ where $u = u^+ -
126: u^-$ lies in the $(n-d)$-dimensional saturated lattice $ker_{\bf Z}(A):=
127: \{ u \in {\bf Z}^n : Au = 0 \}$. Here $u^- = (-u)^+$ and $u^+$ is
128: defined as $u^+_i = u_i$ if $u_i > 0$ and $u^+_i = 0$ otherwise. Hence
129: $u^+, u^- \in {\bf N}^n$. The mechanics of the Buchberger algorithm ensure
130: that every reduced Gr\"obner basis of $I_A$ again consists of finitely
131: many binomials of the above type. We will assume that $ker_{\bf Z}(A)
132: \cap {\bf N}^n = \{0\}$ which guarantees a positive integral vector
133: $\omega$ in the row space of $A$. Then $I_A$ is homogeneous
134: with respect to the grading $degree(x_i) = \omega_i$.
135:
136: Let ${\cal G}_c = \{x^{\alpha_i} -
137: x^{\beta_i} \, : \, i = 1, \ldots, t \}$ be the reduced Gr\"obner
138: basis of $I_A$ with respect to a generic weight vector $c \in {\bf
139: R}^n$. (The positive term of a binomial in ${\cal G}_c$ is always
140: assumed to be the initial term with respect to $c$.) The Gr\"obner
141: cone of $c$ is then the $n$-dimensional polyhedral cone
142: $ {\cal K}_c := \{ u \in {\bf R}^n : \alpha_i \cdot u \geq \beta_i
143: \cdot u, \, i = 1, \ldots, t \}$
144: whose lineality space (${\cal K}_c \cap -{\cal K}_c$)
145: is the row space of $A$. We may assume that $c$ is a strictly positive
146: integral vector since
147: ${\cal K}_c$ is a rational cone and $\omega \in {\cal K}_c$. Further,
148: $c'$ is equivalent to $c$ if and only if
149: $in_{c'}(x^{\alpha_i} - x^{\beta_i}) = x^{\alpha_i}$ for each binomial
150: $x^{\alpha_i} - x^{\beta_i} \in {\cal G}_c$. State polytopes and
151: Gr\"obner fans of toric ideals were studied in \cite{ST}. This paper
152: gives several custom-tailored construction methods for these entities
153: when the ideal is toric.
154:
155: The Gr\"obner fan of $I_A$ has various applications: In \cite{ST} it
156: was used as a model for {\em sensitivity analysis} for the family
157: of {\em integer programs} $min \{ c \cdot x \, :\, Ax = b, \, x \in
158: {\bf N}^n \}$ as $b$ varies in ${\bf Z}^d$ and $c$ in ${\bf R}^n$.
159: The {\em secondary fan} of $A$ \cite{BFS}, \cite{GKZ} is a coarsening
160: of the Gr\"obner fan of $I_A$ (see Chapter 8 in \cite{Stu}). This fan has
161: important applications to problems in discrete geometry. In between
162: the secondary fan and the Gr\"obner fan of $A$ lives the {\em
163: hypergeometric fan} of $A$ which has been used for studying
164: $A$-{\em hypergeometric} differential equations using
165: {\em Gr\"obner deformations}
166: \cite{SST}. Both these coarser fans can be obtained from the Gr\"obner
167: fan of $I_A$. Finally, the {\em Gr\"obner walk} procedure introduced in
168: \cite{CKM} uses the Gr\"obner fan for Gr\"obner basis conversions.
169:
170: \begin{example}\label{EX1}
171: Let $A := \left( \begin{array}{ccccc}
172: 1 & 1 & 1 & 1 & 1 \\
173: 0 & 1 & 2 & 1 & 0 \\
174: 0 & 0 & 1 & 2 & 1
175: \end{array} \right )$. For ease of exposition we associate the
176: variables $a,b,c,d,e$ to the five columns of $A$ and consider the
177: toric ideal $I_A \subset k[a,b,c,d,e]$. This ideal
178: yields eight distinct monomial initial ideals. The state polytope
179: $St(I_A)$ is an
180: octagon in ${\bf R}^5$ and the Gr\"obner fan of $I_A$ can be drawn in
181: ${\bf R}^2$ after moding out the row space of $A$ from each Gr\"obner
182: cone. Figure \ref{FIG1} shows a schematic representation of the resulting {\em
183: pointed} Gr\"obner fan of $I_A$. Each maximal cone is labeled by the
184: reduced Gr\"obner basis induced by the weight vectors in the
185: interior of that cone. The binomials in
186: a reduced Gr\"obner basis that contribute the facet inequalities of
187: its Gr\"obner cone are marked with dots. Notice that for two adjacent
188: reduced Gr\"obner bases, their common facet binomial $x^{\alpha} -
189: x^{\beta}$ appears in both reduced Gr\"obner bases with
190: $x^{\alpha}$ as initial term in one basis and $x^{\beta}$ as
191: initial term in the other.
192: \end{example}
193:
194: \begin{figure}[h]
195: \fbox{
196: \setlength{\unitlength}{1.7cm}
197: \begin{picture}(9,6)
198: \put(0,2.1){
199: \makebox(1.8,1.2){ %G1
200: $\begin{array}{ll}
201: \bullet & a^2c-b^2e\\
202: & a^2d-be^2\\
203: \bullet & bd-ce
204: \end{array}$ }}
205:
206: \put(0.2,4.3){
207: \makebox(1.8,1.2){ %G2
208: $\begin{array}{ll}
209: \bullet& b^2e-a^2c\\
210: \bullet& a^2d-be^2\\
211: &bd-ce\\
212: \end{array}$ }}
213: \put(3.4,4.5){%G4
214: \makebox(1.8,1.5){
215: $\begin{array}{ll}
216: \bullet & a^2d^2-ce^3\\
217: & b^2e-a^2c\\
218: \bullet & be^2-a^2d\\
219: & bd-ce
220: \end{array}$ }}
221: \put(6.4,4.4){ %G6
222: \makebox(1.8,1.6){
223: $\begin{array}{ll}
224: \bullet & ce^3-a^2d^2\\
225: & b^2e-a^2c\\
226: & be^2-a^2d\\
227: \bullet & bd-ce
228: \end{array}$ }}
229: \put(7.2,2.2){ %G8
230: \makebox(1.8,1.5){
231: $\begin{array}{ll}
232: \bullet & b^3d-a^2c^2 \\
233: & b^2e-a^2c\\
234: & be^2-a^2d\\
235: \bullet & ce-bd
236: \end{array}$ }}
237: \put(6.4,0.4){ %G7
238: \makebox(1.8,1.4){ %G4
239: $\begin{array}{ll}
240: \bullet & a^2c^2-b^3d\\
241: \bullet & b^2e-a^2c\\
242: & be^2-a^2d\\
243: & ce-bd
244: \end{array}$ }}
245: \put(3.4,0){
246: \makebox(1.8,1.2){ %G5
247: $\begin{array}{ll}
248: \bullet & a^2c-b^2e\\
249: \bullet & be^2-a^2d\\
250: & ce-bd
251: \end{array}$ }}
252: \put(1.0,0.6){
253: \makebox(0.2,0.2){ %G3
254: $\begin{array}{ll}
255: & a^2c-b^2e\\
256: \bullet & a^2d-be^2\\
257: \bullet & ce-bd\\
258: \end{array}$ }}
259:
260: \put(4.5,3){\line( 1,2 ){1.5}}
261: \put(4.5,3){\line( 1,-2){1.5}}
262: \put(4.5,3){\line( -3,4 ){2.25}}
263: \put(4.5,3){\line( -2,-3){2}}
264: \put(4.5,3){\line( -4,1 ){4.5}}
265: \put(4.5,3){\line( -3,-1){4.5}}
266: \put(4.5,3){\line( 4,1 ){4.5}}
267: \put(4.5,3){\line( 3,-1){4.5}}
268: \end{picture}
269: }
270: \caption{\label{FIG1}A schematic of the Gr\"obner fan in Example \ref{EX1}}
271: \end{figure}
272:
273: In this paper we introduce a software system called TiGERS for computing the
274: Gr\"obner fan of a toric ideal.
275: The program searches the edge graph of the state polytope $St(I_A)$ to find all
276: the distinct monomial initial ideals (reduced Gr\"obner bases) of $I_A$.
277: This search can be done in two ways: For moderate
278: sized examples, the graph is searched by a breadth-first search strategy
279: on the entire edge-graph of $St(I_A)$. This approach needs to maintain
280: and search the list of all Gr\"obner bases found. When $St(I_A)$ is too
281: large this approach will bog down and we use a {\em reverse search technique}\/
282: instead. This involves a depth-first search
283: on a subgraph of the edge graph of $St(I_A)$ called the reverse search tree,
284: and can be implemented so that no more than one Gr\"obner basis ever
285: needs to be stored.
286: In Section 2 we give an overview of the main algorithm in
287: TiGERS and describe the reverse search procedure.
288: These ideas allow {\em
289: combinatorial Gr\"obner walks} in toric ideals.
290: For each reduced Gr\"obner basis found,
291: the algorithm does two main local computations. The first is to
292: determine all the facets of that Gr\"obner cone and the
293: second is to determine an adjacent Gr\"obner basis to the
294: current one. In Section 3 we give an algorithm for
295: local change of Gr\"obner bases in toric ideals based on
296: \cite{CKM}. Unlike usual local change
297: algorithms, our procedure does not require any weight vectors to be
298: computed. We then discuss some special tricks
299: to find the facets of a fixed Gr\"obner cone in the case of toric
300: ideals. Section 4 reports computational experience with TiGERS.
301:
302: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
303:
304: \section{The main algorithm in TiGERS}
305:
306: Let ${\cal G}_c = \{ x^{\alpha_i} - x^{\beta_i}, \, i = 1,
307: \ldots, t \}$ be the reduced Gr\"obner basis of $I_A$ with respect to
308: the generic weight vector $c \in {\bf R}^n$.
309: An inequality $\alpha_k \cdot u \geq
310: \beta_k \cdot u$, $k \in \{1,\ldots,t\}$ is irredundant for the
311: Gr\"obner cone ${\cal K}_c = \{ u \in {\bf R}^n \, : \, \alpha_i \cdot
312: u \geq \beta_i \cdot u, \, i = 1, \ldots, t \}$ if the relaxed cone
313: $\{ u \in {\bf R}^n \, : \, \alpha_i \cdot u \geq \beta_i \cdot u, \,
314: i = 1, \ldots, t, i \neq k \}$ properly contains ${\cal K}_c$. If
315: $\alpha_k \cdot u \geq \beta_k \cdot u$ is irredundant for ${\cal
316: K}_c$ then ${\cal K}_c \cap \{u \in {\bf R}^n \, : \, \alpha_k \cdot u
317: = \beta_k \cdot u \}$ is called a {\em facet} of ${\cal K}_c$ and
318: $x^{\alpha_k} - x^{\beta_k}$ is a {\em facet binomial} of ${\cal G}_c$.
319:
320: \begin{lemma}\cite{ST} \label{facets}
321: The binomial $x^{\alpha_k} - x^{\beta_k} \in {\cal
322: G}_c$ is a facet binomial of ${\cal G}_c$ if and only if
323: the linear system $\{u \in {\bf R}^n : \alpha_i \cdot u \geq \beta_i
324: \cdot u \,, \, i = 1,\ldots,t,\, i \neq k \} \cup
325: \{ u \in {\bf R}^n : \beta_k \cdot u \geq \alpha_k \cdot u \}$ is feasible.
326: \end{lemma}
327:
328: Therefore, all facets of the Gr\"obner cone ${\cal K}_c$ can be found
329: by checking the feasibility of $t$ systems of linear inequalities,
330: which in turn can be done by linear programming.
331: In practice this can be computationally expensive when $t$ is large
332: and we discuss certain speed ups in Section 3.2.
333:
334: Suppose $x^{\alpha} - x^{\beta}$ is a
335: facet binomial of ${\cal G}_c$
336: such that $in_c(x^{\alpha} - x^{\beta}) = x^{\alpha}$ and ${\cal G}_{c'}$
337: be adjacent to ${\cal G}_c$ with $in_{c'}(x^{\alpha} - x^{\beta})
338: = x^{\beta}$. In order to compute the edge graph of $St(I_A)$,
339: we require a subroutine to make a local change of reduced
340: Gr\"obner bases from ${\cal G}_c$ to ${\cal G}_{c'}$ through the facet
341: given by $x^{\alpha} - x^{\beta}$. We use ${flip({\cal G}_c, x^{\alpha} -
342: x^{\beta})}$ to denote both the subroutine that yields ${\cal G}_{c'}$
343: from ${\cal G}_c$ as well as the reduced Gr\"obner basis
344: ${\cal G}_{c'}$ that results from the ``flip''. In Section 3.1 we
345: describe the precise local change algorithm in TiGERS.
346:
347: \begin{remark}{\em
348: If $x^{\alpha} - x^{\beta}$ lies in the reduced Gr\"obner basis of a
349: toric ideal, then the supports of $\alpha$ and $\beta$ are disjoint.
350: This guarantees that each facet in a toric Gr\"obner cone corresponds
351: to precisely one binomial in the corresponding Gr\"obner basis.
352: However, this is not true for general homogeneous
353: binomial ideals. Consider $J = \langle
354: b^3d-b^2ce, a2c-b2e, bcd-c2e \rangle$. Under the reverse lexicographic
355: order $a \succ c \succ d \succ e \succ b$, its reduced Gr\"obner basis is
356: $G = \{ ceb^2-db^3, c^2e-cdb, a^2db^3-e^2b^4, a^2c-eb^2 \}$. The
357: inequality $u_3 + u_5 \geq u_2 + u_4$ is a facet inequality of the
358: Gr\"obner cone of $G$. For $\omega$ in the relative interior of this facet,
359: we get both $in_{\omega}(ceb^2-db^3) = ceb^2-db^3$ and
360: $in_{\omega}(c^2e-cdb) = c^2e-cdb$.}
361: \end{remark}
362:
363: \begin{algorithm}
364: Enumerating the edge graph of $St(I_A)$ via breadth-first search.
365: \begin{tabbing}
366: xx\=xx\=xx\=xx\=\kill
367: {\bf Input:} Any reduced Gr\"obner basis ${\cal G}_0$ of $I_A$.\\
368: {\bf Output:} All reduced Gr\"obner bases of $I_A$ (all vertices of
369: $St(I_A)$).\\
370: \>{\tt Todo} := $\left[{\cal G}_0\right]$; \\
371: \>{\tt Verts} := $\left[ \,\, \right]$;\\
372: \> While(${\tt Todo}$ not empty) do\\
373: \> \> ${\cal G}$ := first-element-in({\tt Todo});\\
374: \> \> Remove ${\cal G}$ from {\tt Todo};\\
375: \> \> add ${\cal G}$ to {\tt Verts};\\
376: \> \> determine list $L$ of facet binomials of ${\cal G}$\\
377: \> \> for each $x^{\alpha} - x^{\beta}$ in $L$ do\\
378: \> \> \> Compute $G'=flip({\cal G},x^{\alpha}-x^{\beta})$\\
379: % \>\>\> If ${\cal G}'$ not in {\tt Todo} or {\tt Verts} then
380: % add ${\cal G}'$ to the beginning of the list {\tt Todo};\\
381: \>\>\> If ${\cal G}'\not\in {\tt Todo}\cup{\tt Verts}$ then
382: add ${\cal G}'$ to {\tt Todo};\\
383: \>\>End \\
384: \>End\\
385: \> output {\tt Verts}
386: \end{tabbing}
387: \end{algorithm}
388:
389: This algorithm works well in practice but does have the drawback that all
390: vertices must be stored, and that every time a vertex is visited it must
391: be checked against all other vertices seen thus far in order to
392: determine if it is indeed a new vertex. The storage and search
393: costs involved in this procedure can become prohibitive as the size of
394: $St(I_A)$ increases. As an example consider
395: $A := \left( \begin{array}{ccccccccc}
396: 3 & 2 & 2 & 1 & 1 & 0 & 0 & 0 & 0 \\
397: 0 & 1 & 0 & 2 & 0 & 3 & 2 & 1 & 0 \\
398: 0 & 0 & 1 & 0 & 2 & 0 & 1 & 2 & 3
399: \end{array} \right )$. The ideal $I_A$ involves only nine variables
400: and most reduced Gr\"obner bases of this ideal have fewer than
401: $36$ elements each of degree no greater than seven. Yet, $St(I_A)$ has
402: $54,828$ vertices and our breadth first search algorithm was exhausting
403: a personal computer with 64 kilobytes of memory before getting through about
404: $13,000$ vertices. In order to push this calculation through we
405: resorted to the reverse enumeration paradigm of Avis and Fukuda
406: \cite{AF}. The basic idea there is to do a depth first search on a directed
407: subgraph of $St(I_A)$.
408:
409: We say that a polynomial $f \in k[{\bf x}]$ is {\em marked} by a
410: term order $\succ$ on $k[{\bf x}]$, if the initial term of $f$
411: with respect to $\succ$ has been distinguished from among all terms in
412: $f$. A polynomial $f$ that has been marked with respect to $\succ$ is
413: said to be {\em mismarked} with respect to $\succ'$,
414: if $in_{\succ}(f) \neq in_{\succ'}(f)$.
415:
416: \begin{lemma} \label{marking}
417: Let ${\cal G}_{\succ}$ be the reduced Gr\"obner basis of $I_A$ with respect
418: to the term order $\succ$. Then for a term order $\succ' \neq
419: \succ$, the reduced Gr\"obner basis ${\cal G}_{\succ'}$ equals ${\cal
420: G}_{\succ}$ if and only if no facet
421: binomial of ${\cal G}_{\succ}$ is mismarked with respect to $\succ'$.
422: \end{lemma}
423:
424: \noindent{\em Proof:} Suppose no facet binomial of ${\cal G}_{\succ}$
425: is mismarked with respect to $\succ'$ and let $c'$ be a weight vector
426: from the interior of the Gr\"obner cone ${\cal K}_{\succ'}$. Then for
427: each facet binomial $x^{\alpha} - x^{\beta}$ in ${\cal G}_{\succ}$, we
428: have $c' \cdot \alpha > c' \cdot \beta$
429: which implies that $c'$ lies in the interior of the Gr\"obner cone
430: ${\cal K}_{\succ}$. Hence ${\cal K}_{\succ'} = {\cal K}_{\succ}$ which
431: implies that ${\cal G}_{\succ} = {\cal G}_{\succ'}$. Conversely, if
432: ${\cal G}_{\succ} = {\cal G}_{\succ'}$, then no binomial in ${\cal
433: G}_{\succ}$ is mismarked with respect to $\succ'$.
434:
435: \begin{definition} \label{def-tree}
436: For a given term order $\succ$ we define the
437: {\em reverse search tree $T_\succ(I_A)$} as follows:\\
438: The vertices of $T_{\succ}(I_A)$ are the vertices of $St(I_A)$
439: (i.e. the various reduced Gr\"obner bases of $I_A$ arising
440: from term orders). For two reduced Gr\"obner bases ${\cal G}_i$ and
441: ${\cal G}_j$, $[{\cal G}_i,{\cal G}_j]$ directed from
442: ${\cal G}_i$ to ${\cal G}_j$ is an edge of
443: $T_\succ(I_A)$ if ${\cal G}_j$ is obtained from ${\cal G}_i$ by the
444: subroutine $flip({\cal G}_i,x^{\alpha} - x^{\beta})$ where $x^{\alpha} -
445: x^{\beta}$ is the unique facet binomial of ${\cal G}_i$
446: whose leading term is lexicographically maximal
447: among all facet binomials of ${\cal G}_i$ that are mismarked with
448: respect to $\succ$.
449: \end{definition}
450:
451: %The following theorem proves that $T_\succ(I_A)$ is indeed a tree.
452:
453: \begin{theorem}
454: The reverse search tree $T_\succ(I_A)$ is an acyclic directed graph
455: with a unique sink.
456: \end{theorem}
457:
458: \noindent{\em Proof:}
459: By Lemma~\ref{marking} each reduced Gr\"obner basis ${\cal G}$ of
460: $I_A$ (vertex of $St(I_A)$) except ${\cal G}_\succ$ has at least one
461: mismarked facet binomial with respect to $\succ$. By the definition of
462: $T_\succ(I_A)$, each such ${\cal G}$ has a unique adjacent
463: reduced Gr\"obner basis given by $flip({\cal G},x^{\alpha} -
464: x^{\beta})$ where $x^{\alpha} - x^{\beta}$ is the unique facet
465: binomial of ${\cal G}$ whose leading term is lexicographically maximal
466: among all mismarked facet binomials of ${\cal G}$. Therefore
467: $T_\succ(I_A)$ is a directed graph such that the
468: out-degree of ${\cal G}_{\succ}$ in $T_\succ(I_A)$ is zero and of all
469: other reduced Gr\"obner bases is one.
470:
471: Suppose there was a cycle $C = (v_1, \ldots, v_l)$ of length $l$ in
472: $T_\succ(I_A)$ where vertex $v_i$ corresponds to the reduced
473: Gr\"obner basis ${\cal G}_i$ of $I_A$ and $v_{l+1} = v_1$ and
474: ${\cal G}_{l+1} = {\cal G}_1$. If $x^{\alpha_i}-x^{\beta_i}$ is
475: the common facet binomial of ${\cal G}_i$ and ${\cal G}_{i+1}$ with
476: $x^{\alpha_i}$ the leading term with respect to ${\cal G}_i$ and
477: $x^{\beta_i}$ the leading term with respect to ${\cal G}_{i+1}$
478: for $i=1,\ldots,l$, then $v_{i+1} - v_i =
479: \beta_i - \alpha_i$ for $i=1,\ldots, l$. Since $C$ is a cycle in
480: $T_\succ(I_A)$ we get $(\beta_1 - \alpha_1) + (\beta_2 -
481: \alpha_2) + \cdots + (\beta_l - \alpha_l) = 0$. However, each binomial
482: $x^{\alpha_i}-x^{\beta_i}$ for $i=1,\ldots,l$ is mismarked with
483: respect to $\succ$ which implies that for a weight vector $c$
484: representing $\succ$ we have, $c \cdot (\beta_i - \alpha_i) > 0$.
485: This leads to the contradiction
486: $0 = c \cdot
487: \sum_{i=1}^{l} ({\beta_i}-{\alpha_i}) = \sum_{i=1}^{l}
488: c \cdot (\beta_i - \alpha_i) > 0 $.
489:
490: \begin{corollary}\label{unique-path}
491: From any reduced Gr\"obner basis ${\cal G}_c$ of $I_A$ there is a
492: unique path in the reverse search tree $T_\succ(I_A)$ to the sink
493: ${\cal G}_\succ$.
494: \end{corollary}
495:
496: Corollary~\ref{unique-path} proves that toric ideals admit
497: combinatorial Gr\"obner walks that can be used for converting one
498: reduced Gr\"obner basis of $I_A$ into another. Given any reduced
499: Gr\"obner basis ${\cal G}$ of $I_A$ and any term order $\succ$, we can
500: move from ${\cal G}$ to ${\cal G}_\succ$ by tracing the unique path in the
501: reverse search tree $T_\succ(I_A)$ from ${\cal G}$ to ${\cal G}_\succ$.
502: Unlike in the usual Gr\"obner walk procedure \cite{CKM},\cite{AGK}
503: to convert one Gr\"obner basis into another there are no explicit cost
504: vectors involved in these walks. These combinatorial walks also have
505: the advantage that there is never the danger of walking through a
506: lower dimensional face of a Gr\"obner cone thus eliminating several
507: numerical considerations that otherwise have to be dealt with. The
508: trade off is that at every vertex of the state polytope, all facets of
509: the current Gr\"obner cone have to be computed which can be highly
510: non-trivial for general ideals, but is relatively easy for toric ideals.
511:
512:
513: \begin{algorithm}
514: Enumerating the edge graph of $St(I_A)$ via reverse search.
515: \begin{tabbing}
516: xx\=xx\=xx\=xx\=xx\=\kill
517: {\bf Input:} A reduced Gr\"obner basis ${\cal R}_\succ$ of $I_A$ and its
518: term order $\succ$.\\
519: {\bf Output:} All reduced Gr\"obner bases of $I_A$ (all vertices of
520: $St(I_A)$).\\
521: \> set ${\cal G} := {\cal R}_\succ$; j:=0 ; L := list of facet binomials of ${\cal G}$ which are marked by $\succ$\\
522: \> output ${\cal G}$\\
523: \> repeat \\
524: \> \> while $j < |L|$ do \\
525: \> \> \> $j := j + 1$.\\
526: \> \> \> ${\cal G}':=flip({\cal G},L[j])$;\\
527: \> \> \> if [${\cal G}'$,${\cal G}$] in $T_{\succ}(I_A)$ then\\
528: \> \> \> \> ${\cal G}$:= {\cal G}'; $j := 0$; L := list of facets of
529: ${\cal G}$ marked by $\succ$ \\
530: \> \> \> \> output ${\cal G}$\\
531: \> \> \> endif\\
532: \> \> endwhile\\
533: \> \> If ${\cal G} \neq {\cal R}_{\succ}$ then\\
534: \> \> \> ${\cal G}'$ := unique element such that [${\cal G}$,${\cal G}'$]
535: in $T_{\succ}(I_A)$;
536: $j:=0$; L := list of facets of ${\cal G}'$ marked by $\succ$\\
537: \> \> \>repeat $j:=j+1$ until the common facet of ${\cal G}$ and ${\cal G'}$
538: is the $j$th facet of $L$.\\
539: \> \> \> ${\cal G}$ := ${\cal G}'$\\
540: \> \> endif\\
541: \> until ${\cal G} = {\cal R}_{\succ}$ and $j = |L|$.
542: \end{tabbing}
543: \end{algorithm}
544:
545: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
546:
547: \section{Local Computations}
548:
549: Having given an overview of the algorithm in TiGERS for computing the
550: Gr\"obner fan of a toric ideal, we now focus on the computations
551: that have to be made at a fixed reduced Gr\"obner basis encountered
552: while searching the edge graph of $St(I_A)$. The two main issues here
553: are (i) how to compute a Gr\"obner basis that shares a prescribed
554: facet binomial with the current basis and (ii) how to compute all the
555: facets of a toric Gr\"obner cone.
556:
557: \subsection{Local change of Gr\"obner bases in toric ideals}
558:
559: \begin{algorithm} Local change of reduced Gr\"obner bases in $I_A$.\\
560: (a specialization of \cite{CKM} and Subroutine 3.7 in \cite{Stu}).
561: \label{localchange}
562: \end{algorithm}
563: \noindent{\bf Input:} (i) A reduced Gr\"obner basis ${\cal G} =\{
564: {\underline x^{a_k}}-x^{b_k} : k = 1,..,t \}$ of $I_A$.\\
565: (The weight vector inducing ${\cal G}$ is generic and the underlined terms
566: are the leading terms.)\\
567: (ii) A prescribed facet binomial ${\underline x^{a_i}} - x^{b_i}$ of ${\cal G}$.\\
568: \noindent{\bf Output:} The reduced Gr\"obner basis adjacent to ${\cal
569: G}$ in which ${\underline x^{b_i}} - x^{a_i}$ is a facet binomial.
570: \vskip .2cm
571:
572: \indent \indent \indent a. Let $Old :=
573: \{{\underline x^{a_i}}-x^{b_i}\} \cup \{{\underline x^{a_j}} \, : \,
574: {\underline x^{a_j}}-x^{b_j} \in {\cal G},\, j \neq i \}$.\\
575: \indent \indent \indent b. Let $Temp$ be got from
576: $Old$ by switching the marking on {\bf the} binomial in $Old$.\\
577: \indent \indent \indent \indent i.e.,
578: $Temp := \{ {\underline x^{b_i}}-x^{a_i} \} \cup
579: \{{\underline x^{a_j}} \, : \, x^{a_j} \in Old \}$. \\
580: \indent \indent \indent c. Compute the reduced Gr\"obner basis
581: of $Temp$ with respect to the new marking.
582: \indent \indent \indent \indent Store the (marked)
583: result in $New$.\\
584: \indent \indent \indent d. Set ${\cal G}' := \emptyset$\\
585: \indent \indent \indent e. For each $h$ in $New$ DO\\
586: \indent \indent \indent \indent (i) Reduce $h$ to zero modulo
587: $Old$ keeping track of the coefficients during reduction.
588: \indent \indent \indent \indent \indent This gives the representation
589: \[ h = \sum_{g \in Old} p_g \cdot g \]
590: \indent \indent \indent \indent (ii) Compute the polynomial
591: \[ \sum_{full(g) \in {\cal G}} p_g \cdot full(g) \]
592: \indent \indent \indent \indent \indent and add it to the set ${\cal G}'$.
593: ($full(g) \in {\cal G}$ is the completion of $g \in Old$.)\\
594: \indent \indent \indent f. Auto-reduce ${\cal G}'$ with respect
595: to the markings in $New$ to get ${\cal G}_{new}$. \\
596: Then ${\cal G}_{new}$ is the reduced Gr\"obner
597: basis adjacent to ${\cal G}$ such that ${\underline x^{a_i}} -
598: x^{b_i}$ is a facet binomial in ${\cal G}$ and ${\underline x^{b_i}} -
599: x^{a_i}$ is a facet binomial in ${\cal G}_{new}$.\\
600:
601: \noindent {\sl Proof of correctness:} Let ${\cal K}$ and ${\cal
602: K}_{new}$ be the Gr\"obner cones of ${\cal G}$ and ${\cal G}_{new}$
603: respectively. The linear span of the common facet of
604: ${\cal K}$ and ${\cal K}_{new}$ is $\{u \in {\bf R}^n : a_i \cdot u
605: = b_i \cdot u \}$. Let $c_1 \in interior({\cal K})$,
606: $c_2 \in interior({\cal K}_{new})$ and $c$ be a vector in the relative
607: interior of $K \cap K_{new}$. By definition, $Old = in_c({\cal G}) :=
608: \{ in_c(f) : f \in {\cal G} \}$
609: and with respect to the markings specified in Step a, $Old$ is the
610: reduced Gr\"obner basis of $in_c(I_A)$ with respect to $c_1$. Since
611: $Temp$ is got from $Old$ by simply reversing the marking on the facet
612: binomial $x^{a_i} - x^{b_i}$, $Temp$ is a generating set for $in_c(I_A)$.
613:
614: We first show that the set $New$ computed in Step c, using $Temp$ as
615: input, is the reduced Gr\"obner basis of $in_c(I_A)$ with respect to
616: $c_2$. Clearly the marked monomials in $Temp$ are
617: their own initial terms with respect to $c_2$. The non-trivial $S$-pair
618: computations in Step c are those between a monomial $x^{a_j}$,\, $j
619: \neq i$, and the
620: binomial ${\underline x^{b_i}}-x^{a_i}$. This results in a monomial
621: which either reduces to zero with respect to the current partial
622: Gr\"obner basis or reduces to a monomial that gets added to the
623: current partial Gr\"obner basis. There is no point during this process
624: at which an unmarked binomial is produced that is required to be marked.
625: No binomials are produced during such an $S$-pair
626: reduction either. Hence all subsequent $S$-pair computations are
627: also of the above nature and so in fact, the set $New$ is as
628: claimed above and consists of the binomial ${\underline
629: x^{b_i}}-x^{a_i}$ along with monomials some of which were possibly
630: produced during the Buchberger process. Steps d and e simply lift
631: $New$ to a minimal Gr\"obner basis ${\cal G'}$ of $I_A$ with respect
632: to $c_2$. Finally, Step f auto-reduces this minimal Gr\"obner basis
633: to the reduced Gr\"obner basis ${\cal G}_{new}$ of $I_A$ with
634: respect to $c_2$. \\
635:
636: The most important computational advantage of the above local change
637: algorithm is that it does not require the computation of a weight
638: vector in the interior of ${\cal K}_{new}$ in order to compute the
639: reduced Gr\"obner basis ${\cal G}_{new}$. This is possible due to the
640: binomial/monomial nature of all intermediate sets produced during the
641: algorithm. The weight vectors are carried implicitly in the markings
642: of these elements. This observation leads to considerable speed up of
643: the procedure.
644:
645: \begin{remark} \label{dianeobservation}
646: As in the proof of Algorithm~\ref{localchange}, let
647: $c_1 \in interior({\cal K})$ and $c_2 \in interior({\cal K}_{new})$.
648: Then notice that $in_{c_1}(I_A)$ is the initial ideal
649: of $W_{a_i - b_i} := \langle x^{a_i} - x^{b_i} \rangle + \langle
650: x^{a_j} \, : \, i \neq j, \, x^{a_j} \in in_{c_1}(I_A) \rangle$ with
651: respect to the marking $x^{a_i} > x^{b_i}$ while $in_{c_2}(I_A)$ is
652: the initial ideal of $W_{a_i - b_i}$ with respect to $x^{b_i} >
653: x^{a_i}$. See \cite{MT} for a generalization of this observation to
654: the theory of {\em $A$-graded ideals} (see Chapter 10 in \cite{Stu})
655: and the {\em toric Hilbert scheme}.
656: \end{remark}
657:
658: \begin{example}{\em For
659: $A := \left( \begin{array}{cccccc} 1 & 1 & 1 & 1 & 1 \\
660: 0 & 1 & 2 & 1 & 0 \\
661: 0 & 0 & 1 & 2 & 1 \end{array}
662: \right )$, consider the adjacent reduced Gr\"obner bases ${\cal G}_1$
663: and ${\cal G}_2$ that share the facet binomial $a^2d-be^2$.
664: The basis ${\cal G}_1 = \{ bd-ce, a^2d-be^2, b^2e-a^2c \}$ has facet
665: binomials $a^2d-be^2$ and $b^2e-a^2c$ and ${\cal G}_2 =
666: \{bd-ce, be^2-a^2d, a^2d^2-ce^3, b^2e-a^2c \}$ has facet binomials
667: $a^2d^2-ce^3$ and $be^2-a^2d$. We use Algorithm~\ref{localchange} to
668: compute ${\cal G}_2$ from ${\cal G}_1$.\\
669:
670: \noindent{\bf Step a.} $Old := \{ a^2d-be^2, bd, b^2e \}$.\\
671:
672: \noindent{\bf Step b.} $Temp := \{ be^2-a^2d, bd, b^2e \}$.\\
673:
674: \noindent{\bf Step c.} (i) $S$-pair$(be^2-a^2d,bd) = a^2d^2$.\\
675: $ Temp = \{ be^2-a^2d, bd, b^2e, a^2d^2 \}$.\\
676: (ii) $S$-pair$(be^2-a^2d, b^2e) = a^2bd \rightarrow 0$.\\
677: (iii) $S$-pair$(be^2-a^2d,a^2d^2) \rightarrow 0$.\\
678: Therefore $New = \{ be^2-a^2d, bd, b^2e, a^2d^2 \}$.\\
679:
680: \noindent{\bf Step d.} ${\cal G}' := \emptyset$.\\
681:
682: \noindent{\bf Step e.}
683: $be^2-a^2d = -1(a^2d-be^2)$. Therefore it lifts to $-1(full(a^2d-be^2))
684: = -1(a^2d-be^2) = be^2-a^2d$.\\
685: $bd = 1(bd)$. Therefore it lifts to $full(bd) = bd-ce$.\\
686: $b^2e = 1(b^2e)$. Therefore it lifts to $full(b^2e) = b^2e-a^2c$.\\
687: $a^2d^2 = d(a^2d-be^2) + e^2(bd)$.
688: Therefore it lifts to $d(full(a^2d-be^2)) + e^2(full(bd)) =
689: d(a^2d-be^2)+e^2(bd-ce) = a^2d^2 - bde^2 + bde^2 - ce^3 = a^2d^2 - ce^3$.\\
690: Hence ${\cal G}' = \{ be^2-a^2d, bd-ce, b^2e-a^2c, a^2d^2-ce^3\}$.\\
691:
692: \noindent{\bf Step f.} ${\cal G}_{new} =
693: \{ be^2-a^2d, bd-ce, b^2e-a^2c, a^2d^2-ce^3\}$.}
694: \end{example}
695: \subsection{Finding the facets of a toric Gr\"obner cone}
696:
697: For a general ideal, the Gr\"obner cone of one of its reduced
698: Gr\"obner bases is described by a large set of inequalities many of
699: which are redundant. Even for a toric ideal, empirical evidence
700: shows that the number of facet binomials of a reduced Gr\"obner basis may
701: be much smaller than the cardinality of the Gr\"obner basis. In fact,
702: it was conjectured in \cite{ST} that there is a function $\phi : {\bf
703: N} \rightarrow {\bf N}$ such that the number of facet binomials of a
704: reduced Gr\"obner basis of $I_A$ of codimension $k$ is bounded above
705: by $\phi(k)$. As a special case, it was conjectured in \cite{ST} that
706: $\phi(3) = 4$ based on empirical evidence with existing codes at the
707: time. Recently, Serkan Hosten and Diane Maclagan have found
708: counterexamples to this second conjecture using TiGERS. Lower bounds for
709: $\phi$ are given in \cite{ST}, although no good upper bound is known
710: for the number of facets of a toric Gr\"obner cone. Hence,
711: identifying the facet binomials in a reduced Gr\"obner basis can
712: become a computationally expensive subroutine during the computation
713: of the Gr\"obner fan. In this section we discuss several ways to find
714: the facet binomials of a Gr\"obner cone in the case of a toric ideal.
715:
716: A first algorithm to compute the facets of a toric Gr\"obner cone
717: follows from Lemma~\ref{facets}. In practice this
718: can be an expensive procedure since we need to solve as many linear
719: programs as the cardinality of ${\cal G}$ and most binomials in ${\cal
720: G}$ are not facet binomials.
721:
722: \begin{algorithm} How to find the facet binomials of a reduced
723: Gr\"obner basis of $I_A$. \label{second}
724: \end{algorithm}
725: \noindent{\bf Input:} A reduced Gr\"obner basis ${\cal G} =
726: \{ {\underline x^{a_i}}-x^{b_i} : i = 1,..,t \}$ of $I_A$.\\
727: \noindent{\bf Output:} The facet binomials of ${\cal G}$.\\
728: \indent Set Facets := $\emptyset$.\\
729: \indent For each binomial ${\underline x^{a_i}}-x^{b_i}$ in ${\cal G}$
730: do \\
731: \indent \indent If $a_i - b_i$ is not in the cone generated
732: by the vectors $\{a_j - b_j : {\underline x^{a_j}}-x^{b_j} \in {\cal
733: G}, i \neq j \}$\\
734: \indent \indent then Facets := Facets $\cup$ $\{x^{a_i}-x^{b_i}\}$.\\
735: \indent Output Facets.\\
736:
737: Algorithm~\ref{second} is dual to the algorithm suggested by
738: Lemma~\ref{facets} since $a_i \cdot u \geq b_i
739: \cdot u$ is a facet inequality of the Gr\"obner cone ${\cal K}$
740: of ${\cal G}$ if and only if $a_i - b_i$ is an extreme
741: ray (essential generator) of ${\cal K}^{\ast} := \{ v \in {\bf R}^n :
742: v \cdot u \geq 0, \, \forall u \in {\cal K}\}$ the polar cone of
743: ${\cal K}$. The vector $a_i - b_i$ is an extreme ray of ${\cal
744: K}^{\ast}$ if and only if
745: $a_i - b_i$ cannot be expressed as a non-negative linear combination
746: of the vectors $a_j - b_j$, $i \neq j$ where ${\underline
747: x^{a_j}}-x^{b_j} \in {\cal G}$. Algorithm~\ref{second} can be
748: implemented either by solving one linear program per binomial in
749: ${\cal G}$ or finding a generator representation of the cone ${\cal
750: K}^{\ast}$ using a convex hull package. We also obtain an easy
751: sufficient condition for a binomial in ${\cal G}$ to be a facet binomial.
752:
753: \begin{lemma}
754: Let ${\underline x^{a_i}}-x^{b_i}$ be an element of a reduced
755: Gr\"obner basis ${\cal G}$ of $I_A \subset k[x_1, \ldots, x_n]$ and
756: $x_k$ be a variable in $k[x_1, \ldots, x_n]$ such that $x_k$ divides
757: the leading term $x^{a_i}$ (respectively, the trailing term $x^{b_i}$)
758: of ${\underline x^{a_i}}-x^{b_i}$ but does not divide the leading terms
759: (respectively, trailing terms) of any other binomial in ${\cal G}$.
760: Then ${\underline x^{a_i}}-x^{b_i}$ is a facet binomial of ${\cal G}$.
761: \end{lemma}
762:
763: \noindent{\sl Proof:} If $k$ is in the support of $a_i$ (respectively
764: $b_i$) but not in the support of $a_j$ (respectively $b_j$) for $j
765: \neq i$, $j = 1,\ldots,t$, then $a_i - b_i$ cannot be a non-negative
766: linear combination of $a_j - b_j$ for $j \neq i$, $j =
767: 1,\ldots,t$. Hence $a_i - b_i$ is an extreme ray of the cone polar to
768: the Gr\"obner cone of ${\cal G}$.\\
769:
770: We now describe an algorithm to find a superset of the facet binomials
771: of a fixed reduced Gr\"obner basis of $I_A$ that does not require
772: linear programming. Our idea comes from results in \cite{MT}
773: (c.f. Remark~\ref{dianeobservation}).
774:
775: \begin{theorem} \cite{MT} \label{flippability}
776: Let ${\cal G}_c$ be the reduced Gr\"obner basis of
777: $I_A$ with respect to the generic weight vector $c \in {\bf R}^n$.
778: Then $x^a - x^b \in {\cal G}_c$ is a facet binomial of ${\cal G}_c$
779: only if $in_c(I_A)$ is the initial ideal of $W_{a-b} := \langle x^a -
780: x^b \rangle + \langle x^c \, : \, x^c \in in_c(I_A), \, x^c \neq x^a
781: \rangle$ with respect to $x^a > x^b$.
782: \end{theorem}
783:
784: The exact result in \cite{MT} is that if $x^a-x^b \in {\cal G}_c$
785: and $in_c(I_A)$ is the initial ideal of $W_{a-b}$ with respect to
786: $x^a > x^b$, then the initial
787: ideal $M$ of $W_{a-b}$ with respect to $x^b > x^a$ has the same
788: $A$-graded Hilbert function as $in_c(I_A)$. The latter is a necessary
789: condition for $M$ to be an initial ideal of $I_A$. For $M$ to be an
790: adjacent initial ideal to $in_c(I_A)$, you need the additional
791: geometric requirement that $M$ and $in_c(I_A)$ share the facet given
792: by $x^a-x^b$. Hence the binomials in ${\cal G}_c$ that satisfy the
793: condition in Theorem~\ref{flippability} form a superset of the facet
794: binomials of ${\cal G}_c$. Once this superset has been found,
795: we use linear programming as before to identify the true facet binomials.
796:
797: \begin{algorithm}\label{third}
798: How to find a superset of the facet binomials of a reduced Gr\"obner
799: basis of $I_A$.
800: \end{algorithm}
801: \noindent {\bf Input:} A reduced Gr\"obner basis ${\cal G}_c$ of
802: $I_A$.\\
803: \noindent{\bf Output:} A superset $SS$ of the facet binomials of
804: ${\cal G}_c$.\\
805: \noindent Set $SS := \emptyset$\\
806: \indent For $x^a - x^b \in {\cal G}_c$ do \\
807: \indent \indent Let $W_{a-b} := \langle x^a - x^b \rangle + \langle
808: x^c \, : \, x^c \in in_c(I_A), \, x^c \neq x^a \rangle$.\\
809: \indent \indent If $in_c(I_A)$ is the initial ideal of $W_{a-b}$ with
810: respect to $x^a > x^b$ then $SS := SS$ union $\{x^a-x^b\}$.\\
811: Output $SS$.\\
812:
813: We remark that computing the reduced Gr\"obner basis and hence the
814: initial ideal of $W_{a-b}$ with respect to $x^a > x^b$ proceeds
815: exactly as in Algorithm~\ref{localchange} and is possible because of
816: the specific monomial/binomial structure of $W_{a-b}$. Surprisingly
817: it turns out that using Algorithm~\ref{third} can often result in
818: a $50\%$ speed up over using linear programming alone.
819: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
820:
821: \section{Computational Experience}
822: The algorithms described in this paper have been implemented in {\tt C}
823: in a program called TiGERS which is available from the authors.
824: In this section we will describe some implementation issues,
825: optimizations and timings.
826: All timings in Table~\ref{TIMING} were obtained by running TiGERS on
827: a dual processor Pentium 450 with $1GB$ of RAM. With each example
828: problem, we list the following information about its state polytope:
829: $d$ its dimension, $f_0$ the number of vertices, $f_1$ the number of
830: edges, and $td$ the tree depth -- the longest chain in the reverse
831: search tree. We also list $mn$, the cardinality of the largest
832: Gr\"obner basis computed, $mf$, the largest number of facets in any
833: Gr\"obner basis, and $md$, the highest degree of a binomial
834: appearing in any of the Gr\"obner bases.
835: Timings are then given both for exhaustive search and reverse
836: search. Those in parentheses are timings using Algorithm~\ref{third}
837: to cut down on the number of linear programs needed to find facets.
838:
839: We first give a brief description of the examples in
840: Table~\ref{TIMING}. The first four examples are unrelated:
841: In {\tt pent} the matrix $A = \left( \begin{array}{ccccc}
842: 1 & 1 & 1 & 1 & 1 \\ 0 & 1 & 2 & 1 & 0 \\ 0 & 0 & 1 & 2 & 1
843: \end{array} \right )$ the convex hull of whose columns is a pentagon
844: in the plane.
845: The matrix for ${\tt V23}$ is $A = \left( \begin{array}{cccccc}
846: 2 & 1 & 0 & 1 & 0 & 0 \\ 0 & 1 & 2 & 1 & 1 & 0 \\ 0 & 0 & 0 & 0 & 1 &
847: 2 \end{array} \right )$ whose toric variety is the second Veronese
848: embedding of ${\bf P}^2$, while $PV33$ refers to the {\em pinched
849: Veronese}\/ surface for which $A = \left (
850: \begin{array}{ccccccccc} 3 & 2 & 2 & 1 & 1 & 0 & 0 & 0 & 0 \\
851: 0 & 1 & 0 & 2 & 0 & 3 & 2 & 1 & 0 \\ 0 & 0 & 1 & 0 & 2 & 0 & 1 & 2 & 3
852: \end{array} \right )$. The symbol {\tt gti} stands for the generic
853: toric ideal from Example 4.5 in \cite{PS} for which
854: $A = \left( \begin{array}{cccc} 20 & 24 & 25 & 31 \end{array} \right
855: )$. Examples $K5$ and $K6$ are specific instances of $Kn$, the
856: complete graph on $n$ vertices. The matrix associated to $Kn$ is the
857: node-edge incidence matrix of the graph (see Chapter 9 in \cite{Stu}).
858: The matrix $An := \left( 1 \,\,2\,\,3\,\,\ldots n \right )$ and the
859: Gr\"obner basis elements of the toric ideal $I_{An}$ correspond to
860: {\em primitive partition identities} with largest part $n$ (see Chapter 6 in
861: \cite{Stu} for details). The name $D r \times s$ refers to the $(r+s)
862: \times rs$ node-edge incidence matrix of an
863: undirected bipartite graph with $r$ nodes in one vertex class and $s$ nodes
864: in the other.
865:
866: The exhaustive search approach required a large amount of memory - in
867: the A9 example for instance, it was using about 600M by the end. In
868: addition to this, the amount of time needed to determine if a vertex
869: has been seen increases as the number of vertices found
870: increases. Even when memory size is not an issue we found that the
871: reverse search approach could end up by being faster than
872: the exhaustive search (see the A9 example).
873:
874: On the other hand, the reverse search implementation requires
875: us to traverse every edge and then check if it belonged to the reverse
876: search tree by finding the down edge for the new vertex.
877: If the edge used belongs to the reverse search tree, we keep the new vertex,
878: otherwise we discard it knowing that it has been seen before or will
879: be seen again. Thus instead of a large list search
880: we need only find the first mismarked facet binomial to decide whether
881: a vertex should be output. Furthermore, at each node we keep, we must
882: recompute its facet list every time we pass through it. By comparison
883: the exhaustive search algorithm required us to find facets only once per
884: vertex. One trick that we used to mitigate this
885: re-computation of facets was to save vertices and facet information
886: every time we went up in the tree,
887: so as to avoid recomputing the facets already visited. While this
888: approach means that we are no longer storing just one Gr\"obner basis, the
889: amount of storage required is still quite small, being bounded by the
890: tree depth. In all the examples listed, the reverse search
891: (with caching) ran in under 750K.
892:
893: We conclude by drawing attention to the last entry in
894: Table~\ref{TIMING} denoted as {\tt HM} for which $A =
895: (247\,\,248\,\,345\,\,15)$. This was the original counter example found by
896: Hosten and Maclagan (c.f. page 10), using TiGERS, to the conjecture
897: that the maximum valency of a vertex in the state polytope of a corank
898: three matrix is four \cite{ST}.
899:
900: \begin{table}[hbt]
901: \begin{tabular}{||c||l|l|l|l||l|l|l||l|l||}\hline
902: Name & d & $f_0$ & $f_1$ &td & mn & mf & md & RS & ES \\
903: \hline\hline
904: pent& 2& 8& 8& 4& 4& 2& 4& 0.00 & 0.00\\
905: V23 & 3& 29& 45& 6& 7& 4& 3& 0.02 & 0.02(0.01) \\
906: gti & 3& 288& 467&30& 18& 4& 31& 2.30(1.27)& 1.50(0.76) \\
907: PV33& 6& 54828& 190253&48& 36& 12& 7& (4343.31)& (3731.24) \\
908: \hline
909: K5 & 5 & 102 & 255 &14 & 11 & 5 & 3 & 0.36(0.32) & 0.28(0.24) \\
910: K6 & 9 & 195720 & &56 & 37 & 14 & 4 & 110111.68(50662.29)& \\
911: % K7 & 14 & &- &- & - & - & - & - & -\\
912: \hline
913: %---------------------------------------------------------
914: %-- Familly related to primitive partition identities --
915: %-- AN=[1,2,...,N] ---------------------------------------
916: %---------------------------------------------------------
917: A4& 3 & 20& 31& 6& 8& 4& 4& 0.01( 0.01)&0.01(0.01) \\
918: A5& 4 & 114& 249& 11& 14& 8& 5& 0.35( 0.28)&0.25(0.16)\\
919: A6& 5 & 488& 1394& 18& 20& 12& 6& 6.78( 4.39)&4.33(2.37)\\
920: A7& 6 & 4073& 14800& 28& 29& 18& 7& 239.80( 139.40)&159.96(82.01)\\
921: A8& 7 & 25334& 111558& 41& 38& 24& 8& 5010.37( 2732.71)&3624(1867.85)\\
922: A9& 8 & 206444& 1080981& 58& 49& 32& 9&127978.46(67565.22) & (71404.29) \\
923: A10& 9 &$>$578435& - & - & - & - & - & - & - \\
924: \hline
925:
926: %---------------------------------------------------------
927: %-- DmxDn 2x2 minors of a mxn matrix -------------------
928: %---------------------------------------------------------
929: D2x2& 3& 108& 222& 9& 10& 6& 3& 0.24( 0.20) & 0.23( 0.16) \\
930: D2x3& 5& 4488& 14184& 19& 20& 8& 3&171.74(97.48) & 124.06(71.02) \\
931: D3x3& 8& $>$257057& & & & & & & \\
932: \hline
933: HM &3&904&1546&52 &40 &5&345&96.72(35.80)&76.08(21.53)\\
934: \hline
935: \end{tabular}
936: \caption{\label{TIMING} TiGERS Timings }
937: \end{table}
938: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
939:
940: \begin{thebibliography}{9}
941:
942: \bibitem[AGK]{AGK} B. Amrhein, O. Gloor and W. K\"uchlin,
943: On the walk, {\em Theoretical Computer Science} {\bf 187}
944: (1997) 179--202.
945:
946: \bibitem[AF]{AF} D. Avis and K. Fukuda, A basis enumeration
947: algorithm for convex hulls and vertex enumeration of arrangements
948: and polyhedra, {\sl Discrete Computational Geometry} {\bf 8} (1992)
949: 295--313.
950:
951: \bibitem[AL]{AL} W.~W. Adams and P. Loustaunau,
952: {\sl An Introduction to Gr{\"o}bner Bases},
953: American Mathematical Society, 1994.
954:
955:
956: \bibitem[BM]{BM} D.~Bayer and I.~Morrison,
957: Standard bases and geometric invariant
958: theory I, {\sl Journal of Symbolic Computation} {\bf 6} (1988)
959: 209--217.
960:
961: \bibitem[BFS]{BFS}L.J.~Billera, P.~Filliman
962: and B.~Sturmfels, Constructions and complexity of
963: secondary polytopes, {\sl Advances in Mathematics} {\bf 83} (1990)
964: 155--179.
965:
966: \bibitem[CKM]{CKM} S.Collart, M.Kalkbrener and D.Mall, Converting
967: bases with the Gr\"obner walk, {\em Journal of Symbolic Computation}
968: {\bf 24} (1997) 465-469.
969:
970: \bibitem[GKZ]{GKZ} I.M.~Gel'fand, M.~Kapranov and A.~Zelevinsky,
971: {\sl Multidimensional Determinants, Discriminants and Resultants},
972: Birkh\"auser, Boston, 1994.
973:
974: \bibitem[CLO]{CLO} D. Cox, J. Little and D. O'Shea,
975: {\sl Ideals, Varieties, and Algorithms},
976: Springer-Verlag, New York, Second Edition, 1996.
977:
978: \bibitem[Mac]{Mac} D.~Maclagan, Antichains of monomial ideals are
979: finite, {\sl Manuscript}, 1998.
980:
981: \bibitem[MT]{MT} D.~Maclagan and R.~Thomas, On the combinatorics of
982: the toric Hilbert scheme, in preparation.
983:
984: \bibitem[MR]{MR} T.~Mora and L.~Robbiano,
985: The Gr\"obner fan of an ideal,
986: {\sl Journal of Symbolic Computation} {\bf 6} (1988) 183--208.
987:
988: \bibitem[PS]{PS} I.~Peeva and B.~Sturmfels,
989: Generic lattice ideals, Journal of the American Mathematical
990: Soceity {\bf 11} (1998) 363--373.
991:
992: \bibitem[Stu]{Stu} B.~Sturmfels, Gr\"obner bases and Convex Polytopes,
993: {\em American Mathematical Society}, Providence, RI, 1995.
994:
995: \bibitem[SST]{SST} M. Saito, B. Sturmfels and N. Takayama,
996: {\em Gr\"obner Deformations of Hypergeometric Differential Equations},
997: in preparation.
998:
999: \bibitem[ST]{ST} B.~Sturmfels and R.~Thomas, Variation
1000: of cost functions in integer programming, {\sl Mathematical Programming}
1001: {\bf 77} (1997) 357-387.
1002: \end{thebibliography}
1003:
1004: \end{document}
1005:
1006:
1007:
1008:
1009:
1010:
1011:
1012:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>