The class of all embedded complexes, not necessarily simplicial or compact or equidimensional. These are complexes with coordinates assigned to their vertices.
Creating complexes:
The following functions return complexes:
simplex -- Simplex in the variables of a polynomial ring
boundaryCyclicPolytope -- The boundary complex of a cyclic polytope with standard projective space vertices
fullCyclicPolytope -- The full cyclic polytope with moment curve vertices
convHull -- The convex hull
hull -- The positive hull
boundaryOfPolytope -- The boundary of a polytope
newEmptyComplex -- Generates an empty complex.
idealToComplex -- The complex associated to a reduced monomial ideal
dualize -- The dual of a co-complex.
complement -- The complement of a co-complex.
complex -- Make a complex from a list of faces
complexFromFacets -- Make a complex from a list of facets
embeddingComplex -- The complex containing a subcomplex
For examples see the documentation of these functions.
The data stored in a complex C:
C.simplexRing, the polynomial ring of vertices of C.
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 the complex.
C.isSimplicial, a Boolean indicating whether C is simplicial.
C.isEquidimensional, a Boolean indicating whether C is equidimensional.
If not just the facets but the faces of C a known (e.g., after computed with fc) then the following data is present:
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 co-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 co-complex of C (if C is a subcomplex 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 : 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 : 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
3 4 5 1 4 5 2 1 5 2 3 4 0 3 4 1 0 4 2 1 3 2 1 0
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 : R=QQ[x_0..x_5] o9 = R o9 : PolynomialRing |
i10 : C=simplex R
o10 = 5: x x x x x x
0 1 2 3 4 5
o10 : complex of dim 5 embedded in dim 5 (printing facets)
equidimensional, simplicial, F-vector {1, 6, 15, 20, 15, 6, 1}, Euler = 0
|
i11 : C.isPolytope o11 = true |
i12 : C.polytopalFacets
o12 = {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 ,
0 1 2 3 4 0 1 2 3 5 0 1 2 4 5 0 1 3 4 5 0 2 3 4 5
-----------------------------------------------------------------------
x x x x x }
1 2 3 4 5
o12 : List
|
The object Complex is a type, with ancestor classes MutableHashTable < HashTable < Thing.