Given a (symbolic) slack matrix of a polytope or of a matroid, or a list of vertex coordinates, matroid vectors, facet labels, or cone generators, it reduces it by removing the columns corresponding to simplicial facets outside of a flag.
i1 : V = {{0,0,0},{0,0,1},{1,0,0},{1,0,1},{0,1,0},{0,1,1}};
|
i2 : S = slackMatrix V;
Order of vertices is
{{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}}
6 5
o2 : Matrix QQ <--- QQ
|
i3 : reducedSlackMatrix V
Order of vertices is
{{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}}
o3 = | 0 0 1 1 |
| 1 0 0 1 |
| 0 1 0 1 |
| 0 0 1 0 |
| 1 0 0 0 |
| 0 1 0 0 |
6 4
o3 : Matrix QQ <--- QQ
|
i4 : reducedSlackMatrix(3, S)
o4 = | 0 0 1 1 |
| 1 0 0 1 |
| 0 1 0 1 |
| 0 0 1 0 |
| 1 0 0 0 |
| 0 1 0 0 |
6 4
o4 : Matrix QQ <--- QQ
|
i5 : R = QQ[x_1..x_30]; |
i6 : S = matrix {{0, 0, x_1, x_2, x_3, 0, x_4}, {x_5, x_6, 0, 0, x_7, x_8, 0}, {0, x_9, 0, x_10, x_11, 0, 0}, {x_12, 0, x_13, 0, x_14, 0, 0}, {0, 0, x_15, x_16, 0, x_17, x_18}, {x_19, x_20, 0, 0, 0, x_21, x_22}, {0, x_23, 0, x_24, 0, x_25, x_26}, {x_27, 0, x_28, 0, 0, x_29, x_30}};
8 7
o6 : Matrix R <--- R
|
i7 : redS = reducedSlackMatrix(3, S)
o7 = | 0 0 x_1 x_2 x_3 |
| x_5 x_6 0 0 x_7 |
| 0 x_9 0 x_10 x_11 |
| x_12 0 x_13 0 x_14 |
| 0 0 x_15 x_16 0 |
| x_19 x_20 0 0 0 |
| 0 x_23 0 x_24 0 |
| x_27 0 x_28 0 0 |
8 5
o7 : Matrix R <--- R
|
The object reducedSlackMatrix is a method function with options.