Skip to main content
Springer Nature - PMC COVID-19 Collection logoLink to Springer Nature - PMC COVID-19 Collection
. 2020 Jun 6;12097:222–231. doi: 10.1007/978-3-030-52200-1_22

Slack Ideals in Macaulay2

Antonio Macchia 6,, Amy Wiebe 6
Editors: Anna Maria Bigatti8, Jacques Carette9, James H Davenport10, Michael Joswig11, Timo de Wolff12
PMCID: PMC7340931

Abstract

Recently Gouveia, Thomas and the authors introduced the slack realization space, a new model for the realization space of a polytope. It represents each polytope by its slack matrix, the matrix obtained by evaluating each facet inequality at each vertex. Unlike the classical model, the slack model naturally mods out projective transformations. It is inherently algebraic, arising as the positive part of a variety of a saturated determinantal ideal, and provides a new computational tool to study classical realizability problems for polytopes. We introduce the package SlackIdeals for Macaulay2, that provides methods for creating and manipulating slack matrices and slack ideals of convex polytopes and matroids. Slack ideals are often difficult to compute. To improve the power of the slack model, we develop two strategies to simplify computations: we scale as many entries of the slack matrix as possible to one; we then obtain a reduced slack model combining the slack variety with the more compact Grassmannian realization space model. This allows us to study slack ideals that were previously out of computational reach. As applications, we show that the well-known Perles polytope does not admit rational realizations and prove the non-realizability of a large simplicial sphere.

Keywords: Polytopes, Slack matrices, Slack ideals, Matroids

Introduction

Slack matrices of polytopes are nonnegative real matrices whose entries express the slack of a vertex in a facet inequality. In particular, the zero pattern of a slack matrix encodes the vertex-facet incidence structure of the polytope. Slack matrices have found remarkable use in the theory of extended formulations of polytopes: Yannakakis [10] proved that the extension complexity of a polytope is equal to the nonnegative rank of its slack matrix.

More generally, one can define the slack matrix of a matroid by computing the slacks of the ground set vectors in the hyperplanes of the matroid.

If P is d-dimensional polytope, replacing all positive entries in the slack matrix with distinct variables, one obtains a new sparse generic matrix Inline graphic, called the symbolic slack matrix of P. Then we define the slack ideal Inline graphic of P as the ideal of all Inline graphic-minors of Inline graphic, saturated with respect to the product of all variables in Inline graphic.

Slack ideals were introduced for polytopes in [5], where it was also noted that they could be used to model the realization space of a polytope. The details of this realization space model and further properties of the slack ideal were studied in [2, 3] and [4]. An analogous realization space model for matroids was introduced in [1].

In this paper, we describe the Macaulay2 [6] package SlackIdeals.m2, that is available at https://bitbucket.org/macchia/slackideals/src/master/SlackIdeals.m2. It provides methods to define and manipulate slack matrices of polytopes, matroids, polyhedra, and cones; obtain a slack matrix directly from the Gale transform of a polytope; compute the symbolic slack matrix and the slack ideal from a slack matrix; compute the graphic ideal of a polytope, the cycle ideal and the universal ideal of a matroid.

Slack ideal computations are often out of computational reach. Therefore we develop two techniques to speed up and simplify computations. First, we suitably set to one as many entries of the slack matrix as possible. One can compute the slack ideal of this dehomogenized slack matrix and then rehomogenize the resulting ideal (see Proposition 1). The new ideal coincides with the original slack ideal if the latter is radical. Second, we obtain a reduced slack matrix by keeping the columns of a set of facets F that contains a flag (a maximal chain in the face lattice of P) and such that the facets not in F are simplicial. Combining these two strategies, we have a powerful tool for the study of hard realizability questions. As applications, we show that the well-known Perles polytope does not admit rational realizations and prove the non-realizability of a large simplicial sphere.

Slack Matrices and Slack Ideals

Given a collection of points Inline graphic and a collection of (affine) hyperplanes Inline graphic we can define a slack matrix of the pair (VH) by

graphic file with name M8.gif

If P is a d-polytope, we take Inline graphic and H to be the set of facet defining hyperplanes. Then Inline graphic. When coordinates V are given for the vectors of a matroid M, they are always assumed to be an affine configuration which gets homogenized to form the matroid; in particular, this means that if Inline graphic, then the associated matroid is the matroid of the polytope P. The hyperplanes are taken to be all hyperplanes of M, and then Inline graphic.graphic file with name 495991_1_En_22_Figa_HTML.jpg The slackMatrix command also takes a pre-computed matroid, polyhedron or cone object as input.

Another way to compute the slack matrix of a polytope is from its Gale transform using the command slackFromGaleCircuits. Let G be a matrix with real entries whose columns are the vectors of a Gale transform of a polytope P. A slack matrix of P is computed by finding the minimal positive circuits of G, see [7, Section 5.4]. Alternatively, the command slackFromGalePlucker applies the maps of [4, Section 5] to fill a slack matrix with Plücker coordinates of the Gale transform.

The slack matrices of a few specific polytopes and matroids of theoretical importance are built-in, using the command specificSlackMatrix.

The symbolic slack matrix can be obtained by replacing the nonzero entries of a slack matrix by distinct variables; that is,

graphic file with name M13.gif

From this sparse generic matrix we obtain the slack ideal as the saturation of the ideal of its Inline graphic-minors by the product of all variables in Inline graphic:

graphic file with name M16.gif

Given a (symbolic) slack matrix of a d-polytope, Inline graphic-dimensional cone, or rank Inline graphic matroid, we can compute the associated slack ideal, specifying d as an input. Unless we pass variable names as an option, the function labels the variables consecutively by rows with a single index starting from 1:graphic file with name 495991_1_En_22_Figb_HTML.jpg

We get the same result if we compute slackIdeal(2,V), giving only the list of vertices of a d-polytope or ground set vectors of a matroid instead of a slack matrix. We also get the same result with slackIdeal(V), but the computation is faster if you provide d as an argument. As optional argument, one can choose the object to be set as "polytope", "cone", or "matroid" (default is Object=>"polytope").

To a polytope or matroid we can also associate a specific toric ideal, known as the graphic or cycle ideal, respectively. These ideals are important in the classification of certain projectively unique polytopes [3] and matroids [1], and can be computed using the commands graphicIdeal and cycleIdeal.

In [4, Section 4] it is shown that a slack matrix can be filled with Plücker coordinates of a matrix formed from the vertex coordinates of a polytope (or extreme ray generators of a cone or ground set vectors of a matroid). This idea is the basis for the reduction technique described in [4, Section 6] and Sect. 4. The Grassmannian section ideal of a polytope is also defined and shown to cut out exactly a set of representatives of the slack variety that are constructed in this way [4, Section 4.1]. The command grassmannSectionIdeal computes this section ideal given a set of vertices of a polytope and the indices of vertices that span each facet.

On the Dehomogenization of the Slack Ideal

Let P be a polytope and Inline graphic its slack matrix. We define the non-incidence graph Inline graphic as the bipartite graph whose vertices are the vertices and facets of P, and whose edges are the vertex-facet pairs of P such that the vertex is not on the facet. This graphic structure provides a systematic way to scale a maximal number of entries in Inline graphic to 1, as spelled out in [3, Lemma 5.2]. In particular, we may scale the rows and columns of Inline graphic so that it has ones in the entries indexed by the edges in a maximal spanning forest of the graph Inline graphic. This can be done using setOnesForest, which outputs a sequence (YF) where Y is the scaled symbolic slack matrix and F is the spanning forest used to scale Y.graphic file with name 495991_1_En_22_Figc_HTML.jpg

This leads to a dehomogenized version of the slack ideal defined as follows. Given Inline graphic and a maximal spanning forest F of Inline graphic, let Inline graphic be the symbolic slack matrix of P with all the variables corresponding to edges in F set to 1. Then the dehomogenized ideal, Inline graphic, is the slack ideal of this scaled slack matrix:

graphic file with name M28.gif

It is natural to ask what is the relation between Inline graphic and the original slack ideal Inline graphic. In particular, we might wish to know if we can recover the full slack ideal from Inline graphic. From [3, Lemma 5.2] we know that any slack matrix in Inline graphic (or, in fact, any point in the slack variety with all coordinates that correspond to F being nonzero) can be scaled to a matrix in Inline graphic. Conversely, it is clear that any point in Inline graphic can be thought of as a point in Inline graphic. Thus, in terms of the varieties we have Inline graphic where Inline graphic denotes the part of the variety where all coordinates are nonzero.

To see the algebraic implications of this, let us introduce the following rehomogenization process. Notice that in the proof of [3, Lemma 5.2], we dehomogenize by following the edges of forest F starting from some chosen root(s) and moving toward the leaves. The destination vertex of each edge tells us which row or column to scale, and the edge label is the variable by which we scale. Now, given a polynomial in Inline graphic, using the same forest and orientation we proceed in the reverse order: starting at the leaves, for each edge of the forest, we reintroduce the variable corresponding to it in order to rehomogenize the polynomial with respect to the row or column corresponding to the destination vertex of that edge.

Example 1

Consider the slack matrix Inline graphic of the triangular prism P scaled according to forest F, pictured in Fig. 1. Then Inline graphic. So we can rehomogenize, for example, the element Inline graphic with respect to forest F as follows.

Fig. 1.

Fig. 1.

A spanning forest for the triangular prism

First, consider the leaf corresponding to column 3.

graphic file with name M42.gif

Its edge is labeled with Inline graphic, so we reintroduce that variable to the monomial Inline graphic since its degree in column 3 is currently 0, while the degree of Inline graphic in that column is 1. We continue this process until all the edges of F have been used.

Call the resulting ideal Inline graphic. By the tree structure, the rehomogenization process does indeed end with a polynomial that is homogeneous, as once we make it homogeneous for a row or column we never add variables in that row or column again. We now consider the effect of this rehomogenization on minors.

Lemma 1

Let p be a minor of Inline graphic and Inline graphic its dehomogenization by F. Then its rehomogenization Inline graphic equals p divided by the product of all variables in F that divide p.

Proof

Note that all monomials in a minor have degree precisely one on every relevant row and column. In fact they can be interpreted as perfect matchings on the subgraph of Inline graphic corresponding to the Inline graphic submatrix being considered. Let Inline graphic and Inline graphic be two distinct monomials in the minor, then their dehomogenizations are also distinct. To see this, note that if we interpret Inline graphic and Inline graphic as matchings, a common dehomogenization would be a common submatching Inline graphic of both, with all the remaining edges being in F. But Inline graphic and Inline graphic would then be distinct matchings on the same set of variables, hence their union contains a cycle, so they would not be both contained in the forest F.

Now note that when rehomogenizing a minor, we start with all degrees being zero or one for every row and column, and since we visit each node (corresponding to each of the rows/columns) exactly once by the tree structure, the degree of every row and column is at most one after homogenizing. In the first step of rehomogenizing, we start with a leaf of F, which means the variable Inline graphic labeling its edge is the only variable in the row or column corresponding to that leaf which was set to 1. Thus if any monomial of the minor has degree zero on that row or column, it must be because Inline graphic occurred in that monomial in the original minor.

Hence rehomogenizing will just add that variable to the monomials where it was originally present, with the exception of the case where it was present on all monomials, in which case there will be no need to add it, as the dehomogenized polynomial would be homogeneous (of degree 0) for that particular row/column.

All degrees remain 0 or 1 after this process, and now the node incident to the leaf we just rehomogenized corresponds to a row/column with exactly one variable that is still dehomogenized. Thus we can repeat the argument on the entire forest to find that each monomial rehomogenizes to itself divided by the variables that were originally present in all monomials of the minor.

Remark 1

It is important to note that Inline graphic is the ideal of all elements of Inline graphic rehomogenized. In general, this is different from the ideal generated by the rehomogenized generators of Inline graphic. In the package, we rehomogenize the whole ideal by rehomogenizing the generators and saturating the resulting ideal by all the variables we just homogenized by.

For example, let V be the set of vertices of the triangular prism with spanning forest Y as computed before, and let us compute the rehomogenized ideal Inline graphic.graphic file with name 495991_1_En_22_Figd_HTML.jpg graphic file with name 495991_1_En_22_Fige_HTML.jpg Notice that, in this case the rehomogenized ideal Inline graphic equals the slack ideal Inline graphic.

Example 2

Recall that the generators of Inline graphic for the triangular prism were Inline graphic and Inline graphic, which rehomogenize to Inline graphic and Inline graphic, respectively. However,

graphic file with name M72.gif

The relation between the rehomogenized ideal Inline graphic and the original slack ideal is given in the following lemma. The proof relies on the key fact that the variety of the rehomogenized ideal is still the same as the slack variety that we started with.

Proposition 1

Given a spanning forest F for the non-incidence graph of polytope P, the rehomogenization of its scaled slack ideal is an intermediate ideal between the slack ideal and its radical: Inline graphic.

Proof

To prove the inclusion Inline graphic, note that Inline graphic happens if and only if Inline graphic for some exponent vector Inline graphic, where J is the ideal generated by all Inline graphic-minors of the symbolic slack matrix of P. Dehomogenizing we get Inline graphic, which means Inline graphic is in the saturation of Inline graphic by the product of all variables, which is precisely the definition of Inline graphic. From Lemma 1 it follows that Inline graphic.

To prove that Inline graphic, it is enough to show that any polynomial in Inline graphic vanishes in the slack variety. By construction, any such polynomial must vanish on the points of the slack variety where the variables corresponding to the forest F are nonzero, Inline graphic. Thus, they vanish on the Zariski closure of that set. Considering the following containments,

graphic file with name M88.gif

we get that this closure is exactly the slack variety since Inline graphic.

Remark 2

One would like to say that Inline graphic, and so far we have no counterexample for this equality, since it always holds if Inline graphic is radical, and we also have no examples of non-radical slack ideals.

Reduced Slack Matrices

In general, computing the slack ideal may take a long time or be infeasible, especially if the dimension of the polytope is small compared to its number of vertices and facets. In some cases we can speed up this computation combining the slack and the Grassmannian realization space models [4, Section 6]. In fact, we do not need to work with the full slack matrix, since the essential information is contained into a sufficiently large submatrix.

We will see in Examples 3 and 4, that slack ideals which we were not even able to compute (using personal computers) are now able to be calculated in a matter of a few seconds. To give an estimate of the improvement, computing the slack ideal of the full slack matrix in Example 3 requires the computation of about Inline graphic minors, whereas the reduced slack ideal only requires the computation of about Inline graphic minors.

More precisely, let P be a realizable polytope and F be a set of facets of P such that F contains a set of facets that can be intersected to form a flag in the face lattice of P and all facets of P not in F are simplicial. We call a reduced slack matrix for P the submatrix, Inline graphic, of Inline graphic consisting of only the columns indexed by F. Set Inline graphic to be the nonzero part of the slack variety Inline graphic.

If Inline graphic is irreducible, then Inline graphic are birationally equivalent, where h denotes the number of facets of P outside F [4, Proposition 6.9].

Example 3

Let P be the Perles projectively unique polytope with no rational realization coming from the point configuration in [7, Figure 5.5.1, p. 93]. This is an 8-polytope with 12 vertices and 34 facet and its symbolic slack matrix Inline graphic is a Inline graphic matrix with 120 variables.

Let Inline graphic be the following submatrix of Inline graphic whose 13 columns correspond to all the nonsimplicial facets of P: graphic file with name 495991_1_En_22_Figf_HTML.jpg The associated symbolic slack matrix is:

graphic file with name 495991_1_En_22_Equ11_HTML.gif

Using [3, Lemma 5.2], we first set Inline graphic for Inline graphic. The resulting scaled reduced slack ideal is:

graphic file with name M105.gif

It follows that Inline graphic. Hence, P does not admit rational realizations.

Example 4

Let P be the following 3-dimensional simplicial sphere, constructed by Jockusch [8] and studied by Novik and Zheng [9], with 12 vertices labeled by Inline graphic and Inline graphic, and with the following 48 facets:

graphic file with name M109.gif

The remaining 24 facets are antipodes of the above ones, i.e., they are of the form Inline graphic for each Inline graphic from the above list.

This sphere, denoted by Inline graphic in [9], is centrally symmetric, and is not realizable as the boundary complexes of a centrally symmetric polytope. However, it is not known whether it is realizable as (a non-centrally symmetric) polytope [9, Problem 6.1].

The symbolic slack matrix Inline graphic is a Inline graphic matrix with 384 variables. A reduced slack matrix (where facets 1, 3, 4, 5, 7 form a flag) is the matrix Inline graphic below, where vertices 1, 3, 5, 6, 9 form a flag of Inline graphic. Since row 10 of Inline graphic contains four zeros, we can further reduce the above matrix and scale some of the entries according to [3, Lemma 5.2], obtaining the matrix Inline graphic.

graphic file with name M119.gif

We then reconstruct row 10 by applying the map Inline graphic defined in [4, Section 4.1] to Inline graphic:graphic file with name 495991_1_En_22_Figg_HTML.jpg

The above error means that in reconstructing row 10, we get more than four zero entries. Computing explicitly the map Inline graphic, we can see that five entries are zero. This shows that P is not realizable as a polytope.

The previous example shows that the reduction process can be a powerful tool to show nonrealizability of large simplicial spheres.

Footnotes

A. Macchia—Supported by the Einstein Foundation Berlin under Francisco Santos grant EVF-2015-230.

Contributor Information

Anna Maria Bigatti, Email: bigatti@dima.unige.it.

Jacques Carette, Email: carette@mcmaster.ca.

James H. Davenport, Email: j.h.davenport@bath.ac.uk

Michael Joswig, Email: joswig@math.tu-berlin.de.

Timo de Wolff, Email: t.de-wolff@tu-braunschweig.de.

Antonio Macchia, Email: macchia.antonello@gmail.com.

Amy Wiebe, Email: w.amy.math@gmail.com.

References

  • 1.Brandt M, Wiebe A. The slack realization space of a matroid. Algebr. Comb. 2019;2(4):663–681. [Google Scholar]
  • 2.Gouveia J, Macchia A, Thomas R, Wiebe A. The slack realization space of a polytope. SIAM J. Discrete Math. 2019;33(3):1637–1653. doi: 10.1137/18M1233649. [DOI] [Google Scholar]
  • 3.Gouveia J, Macchia A, Thomas R, Wiebe A. Projectively unique polytopes and toric slack ideals. J. Pure Appl. Algebra. 2020;224(5):14. doi: 10.1016/j.jpaa.2019.106229. [DOI] [Google Scholar]
  • 4.Gouveia, J., Macchia, A., Wiebe, A.: Combining realization space models of polytopes (2020). Preprint https://arxiv.org/abs/2001.11999
  • 5.Gouveia J, Pashkovich K, Robinson R, Thomas R. Four-dimensional polytopes of minimum positive semidefinite rank. J. Comb. Theory Ser. A. 2017;145:184–226. doi: 10.1016/j.jcta.2016.08.002. [DOI] [Google Scholar]
  • 6.Grayson, D., Stillman, M.: Macaulay 2, a software system for research in algebraic geometry. http://www.math.uiuc.edu/Macaulay2/
  • 7.Grünbaum B. Convex Polytopes. 2. New York: Springer; 2003. [Google Scholar]
  • 8.Jockusch W. An infinite family of nearly neighborly centrally symmetric 3-spheres. J. Comb. Theory Ser. A. 1995;72(2):318–321. doi: 10.1016/0097-3165(95)90070-5. [DOI] [Google Scholar]
  • 9.Novik, I., Zheng, H.: Highly neighborly centrally symmetric spheres (2019). Preprint https://arxiv.org/abs/1907.06115
  • 10.Yannakakis M. Expressing combinatorial optimization problems by linear programs. J. Comput. Syst. Sci. 1991;43(3):441–466. doi: 10.1016/0022-0000(91)90024-Y. [DOI] [Google Scholar]

Articles from Mathematical Software – ICMS 2020 are provided here courtesy of Nature Publishing Group

RESOURCES