The columns of the matrix
M are indexed by the
i-faces of
D, and the rows are indexed by the
(i-1)-faces, in the order given by
faces.
M is defined over the
coefficient ring of
D.
i1 : loadPackage "SimplicialComplexes";
|
The boundary maps for the standard 3-simplex, defined over
ZZ.
i2 : R = ZZ[a..d];
|
i3 : D = simplicialComplex {a*b*c*d}
o3 = | abcd |
o3 : SimplicialComplex
|
i4 : boundary(0,D)
o4 = | 1 1 1 1 |
1 4
o4 : Matrix ZZ <--- ZZ
|
i5 : faces(0,D)
o5 = | a b c d |
1 4
o5 : Matrix R <--- R
|
i6 : boundary(1,D)
o6 = | -1 -1 -1 0 0 0 |
| 1 0 0 -1 -1 0 |
| 0 1 0 1 0 -1 |
| 0 0 1 0 1 1 |
4 6
o6 : Matrix ZZ <--- ZZ
|
i7 : faces(1,D)
o7 = | ab ac ad bc bd cd |
1 6
o7 : Matrix R <--- R
|
i8 : boundary(2,D)
o8 = | 1 1 0 0 |
| -1 0 1 0 |
| 0 -1 -1 0 |
| 1 0 0 1 |
| 0 1 0 -1 |
| 0 0 1 1 |
6 4
o8 : Matrix ZZ <--- ZZ
|
i9 : faces(2,D)
o9 = | abc abd acd bcd |
1 4
o9 : Matrix R <--- R
|
i10 : boundary(3,D)
o10 = | -1 |
| 1 |
| -1 |
| 1 |
4 1
o10 : Matrix ZZ <--- ZZ
|
i11 : faces(3,D)
o11 = | abcd |
1 1
o11 : Matrix R <--- R
|
i12 : boundary(4,D)
o12 = 0
1
o12 : Matrix ZZ <--- 0
|
The boundary maps depend on the
coefficient ring as the following examples illustrate.
i13 : R = QQ[a..f];
|
i14 : D = simplicialComplex monomialIdeal(a*b*c,a*b*f,a*c*e,a*d*e,a*d*f,b*c*d,b*d*e,b*e*f,c*d*f,c*e*f);
|
i15 : boundary(1,D)
o15 = | -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 0 |
| 1 0 0 0 0 -1 -1 -1 -1 0 0 0 0 0 0 |
| 0 1 0 0 0 1 0 0 0 -1 -1 -1 0 0 0 |
| 0 0 1 0 0 0 1 0 0 1 0 0 -1 -1 0 |
| 0 0 0 1 0 0 0 1 0 0 1 0 1 0 -1 |
| 0 0 0 0 1 0 0 0 1 0 0 1 0 1 1 |
6 15
o15 : Matrix QQ <--- QQ
|
i16 : R' = ZZ/2[a..f];
|
i17 : D' = simplicialComplex monomialIdeal(a*b*c,a*b*f,a*c*e,a*d*e,a*d*f,b*c*d,b*d*e,b*e*f,c*d*f,c*e*f);
|
i18 : boundary(1,D')
o18 = | 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 |
| 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 |
| 0 1 0 0 0 1 0 0 0 1 1 1 0 0 0 |
| 0 0 1 0 0 0 1 0 0 1 0 0 1 1 0 |
| 0 0 0 1 0 0 0 1 0 0 1 0 1 0 1 |
| 0 0 0 0 1 0 0 0 1 0 0 1 0 1 1 |
ZZ 6 ZZ 15
o18 : Matrix (--) <--- (--)
2 2
|