The class of all embedded co-complexes, not necessarily simplicial.
Creating co-complexes:
The following functions return co-complexes:
idealToCoComplex -- The co-complex associated to a reduced monomial ideal
dualize -- The dual of a complex.
complement -- The complement of a complex.
coComplex -- Make a co-complex from a list of faces
For further examples see the documentation of these functions.
The data stored in a co-complex C:
C.simplexRing, the polynomial ring of vertices of C (note these are only faces of C if C is a polytope).
C.grading, is C.simplexRing.grading, a matrix with the coordinates of the vertices of C in its rows.
C.facets, a list with the facets of C sorted into lists by dimension.
C.edim, the embedding dimension of C, i.e., rank source C.grading.
C.dim, the dimension of C, i.e., the minimal dimension of the faces.
C.isSimp, a Boolean indicating whether C is simplicial.
C.isEquidimensional, a Boolean indicating whether C is equidimensional.
C.fc, a ScriptedFunctor with the faces of C sorted and indexed by dimension.
C.fvector, a List with the F-vector of C.
The following may be present (if known due to creation of C or due to calling some function):
C.dualComplex, the dual complex of C in the sense of dual faces of a polytope. See dualize.
C.isPolytope, a Boolean indicating whether C is a polytope.
C.polytopalFacets, a List with the boundary faces of the polytope C.
C.complementComplex, the complement complex of C (if C is a subcocomplex of a simplex). See complement.
i1 : R=QQ[x_0..x_5] o1 = R o1 : PolynomialRing |
i2 : C=boundaryCyclicPolytope(3,R) o2 = 2: x x x x x x x x x x x x x x x x x x x x x x x x 0 1 2 0 2 3 0 3 4 0 1 5 1 2 5 2 3 5 0 4 5 3 4 5 o2 : complex of dim 2 embedded in dim 5 (printing facets) equidimensional, simplicial, F-vector {1, 6, 12, 8, 0, 0, 0}, Euler = 1 |
i3 : C.simplexRing o3 = R o3 : PolynomialRing |
i4 : C.grading o4 = | -1 -1 -1 -1 -1 | | 1 0 0 0 0 | | 0 1 0 0 0 | | 0 0 1 0 0 | | 0 0 0 1 0 | | 0 0 0 0 1 | 6 5 o4 : Matrix ZZ <--- ZZ |
i5 : C.fc_2 o5 = {x x x , x x x , x x x , x x x , x x x , x x x , x x x , x x x } 0 1 2 0 2 3 0 3 4 0 1 5 1 2 5 2 3 5 0 4 5 3 4 5 o5 : List |
i6 : C.facets o6 = {{}, {}, {}, {x x x , x x x , x x x , x x x , x x x , x x x , x x x , 0 1 2 0 2 3 0 3 4 0 1 5 1 2 5 2 3 5 0 4 5 ------------------------------------------------------------------------ x x x }, {}, {}, {}} 3 4 5 o6 : List |
i7 : dC=dualize C o7 = 2: v v v v v v v v v v v v v v v v v v v v v v v v 0 1 2 0 1 4 0 3 4 1 2 3 1 2 5 1 4 5 2 3 4 3 4 5 o7 : co-complex of dim 2 embedded in dim 5 (printing facets) equidimensional, simplicial, F-vector {0, 0, 0, 8, 12, 6, 1}, Euler = 1 |
i8 : cC=complement C o8 = 2: 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 5 3 1 4 5 1 5 2 4 2 3 0 4 3 1 0 4 1 2 3 1 0 2 o8 : co-complex of dim 2 embedded in dim 5 (printing facets) equidimensional, simplicial, F-vector {0, 0, 0, 8, 12, 6, 1}, Euler = 1 |
i9 : dualize cC o9 = 2: v v v v v v v v v v v v v v v v v v v v v v v v 3 4 5 2 3 5 1 2 5 0 4 5 0 3 4 0 2 3 0 1 5 0 1 2 o9 : complex of dim 2 embedded in dim 5 (printing facets) equidimensional, simplicial, F-vector {1, 6, 12, 8, 0, 0, 0}, Euler = 1 |
So far a co-complex is of class complex and the methods checks of which type it really is. At some point both will have a common ancestor.