The slack ideal of a d-polytope or rank d+1 matroid is the ideal of (d+2)-minors of its symbolic slack matrix, saturated by the product of the variables in the matrix.
i1 : V = {{0, 0}, {1, 0}, {1, 1}, {0, 1}};
|
i2 : I = slackIdeal V
Order of vertices is
{{0, 0}, {1, 0}, {0, 1}, {1, 1}}
o2 = ideal(x x x x - x x x x )
0 3 5 6 1 2 4 7
o2 : Ideal of QQ[x ..x ]
0 7
|
If a list of points is given it can be treated as the vertices of a polytope, the ground set of a matroid or the facets of an abstract polytope by specifying the option Object. The default is as a polytope.
i3 : V = {{0, 0}, {1, 0}, {1, 1}, {0, 1}};
|
i4 : IP = slackIdeal V
Order of vertices is
{{0, 0}, {1, 0}, {0, 1}, {1, 1}}
o4 = ideal(x x x x - x x x x )
0 3 5 6 1 2 4 7
o4 : Ideal of QQ[x ..x ]
0 7
|
i5 : IM = slackIdeal(V, Object => "matroid")
o5 = ideal (x x x + x x x , x x x + x x x , x x x + x x x , x x x + x x x , x x x x - x x x x , x x x x - x x x x ,
4 8 10 5 7 11 1 8 9 2 6 11 0 5 9 2 3 10 0 4 6 1 3 7 1 3 8 10 0 5 6 11 0 4 8 9 2 3 7 11
----------------------------------------------------------------------------------------------------------------------------
x x x x - x x x x )
1 5 7 9 2 4 6 10
o5 : Ideal of QQ[x ..x ]
0 11
|
The object slackIdeal is a method function with options.