Given a set of vectors of a Gale transform or a matrix whose columns form a Gale transform of a polytope, it fills the slack matrix of the polytope with Plucker coordinates of the Gale transform.
i1 : G = {{0, 1}, {1, 0}, {-1, -1}, {0, -1}, {-1, 0}, {1, 1}};
|
i2 : B = {{1, 2, 4}, {0, 2, 3}, {0, 1, 4}, {3, 4, 5}, {0, 1, 2}};
|
i3 : slackFromGalePlucker(B, G)
o3 = | 1 0 0 1 0 |
| 0 -1 0 1 0 |
| 0 0 1 1 0 |
| 1 0 0 0 -1 |
| 0 -1 0 0 -1 |
| 0 0 1 0 -1 |
6 5
o3 : Matrix ZZ <--- ZZ
|
i4 : MG = matrix(RR, {{0, 1, -1, 0, -1, 1}, {1, 0, -1, -1, 0, 1}});
2 6
o4 : Matrix RR <--- RR
53 53
|
i5 : B = {{1, 2, 4}, {0, 2, 3}, {0, 1, 4}, {3, 4, 5}, {0, 1, 2}};
|
i6 : slackFromGalePlucker(B, MG)
o6 = | 1 0 0 1 0 |
| 0 -1 0 1 0 |
| 0 0 1 1 0 |
| 1 0 0 0 -1 |
| 0 -1 0 0 -1 |
| 0 0 1 0 -1 |
6 5
o6 : Matrix RR <--- RR
53 53
|
Does not check if B actually spans for given V, does not check orientation of simplices in B, so that the resulting slack matrix may differ by signs of each column.
The object slackFromGalePlucker is a method function.