Macaulay2 » Documentation
Packages » SRdeformations :: Face
next | previous | forward | backward | up | index | toc

Face -- The class of all faces of complexes or co-complexes.

Description

The class of all faces of Complexes or CoComplexes.

Creating faces:

Faces can be created by face by specifying a List or Set of variables of a PolynomialRing and some more optional data.

Usually faces are accessed as faces of a complex C using the ScriptedFunctor C.fc with the subscripts "dimension of the face" and "index of the face".

The data stored in a face F:

F.vert, a list with the vertices of F, which are variables of a PolynomialRing R. We use a list to prevent Macaulay from reordering sets or monomials.

F.ofComplex, a list with the Complexes and CoComplexes of which F is a face (optional).

{}it F.indices}, a list with the indices of the face in its complexes. An index is a list {dim F, index of F in C.fc_(dim F)}.

F.dualFace, the dual face of F (optional, is stored for later use when computed by dualize). Note that also the dual face dF of F then has dF.dualFace=F.

This data can also be accessed by the methods listed below.

Note that the lattice data of the vertices is stored in R.grading via addCokerGrading. If no coker grading is present then many functions, like simplex, idealToComplex, idealToCoComplex add the standard projective space grading raysPPn.

Notes on the implementation:

In order to save memory identical faces are not created several times, e.g., if subComplexes are created from given ones any face of the subcomplex is identical to a face of the given one.

So far the list F.ofComplex is only used for the complex which created F, but later we will perhaps append also all other complexes F is a face of. As we will append to the list this will be backwards compatible.

i1 : R=QQ[x_0..x_4]

o1 = R

o1 : PolynomialRing
i2 : addCokerGrading R

o2 = | -1 -1 -1 -1 |
     | 1  0  0  0  |
     | 0  1  0  0  |
     | 0  0  1  0  |
     | 0  0  0  1  |

              5       4
o2 : Matrix ZZ  <-- ZZ
i3 : C=simplex R

o3 = 4: x x x x x  
         0 1 2 3 4

o3 : complex of dim 4 embedded in dim 4 (printing facets)
     equidimensional, simplicial, F-vector {1, 5, 10, 10, 5, 1}, Euler = 0
i4 : F=C.fc_1_0

o4 = x x
      0 1

o4 : face with 2 vertices
i5 : F.vert

o5 = {x , x }
       0   1

o5 : List
i6 : coordinates F

o6 = {{-1, -1, -1, -1}, {1, 0, 0, 0}}

o6 : List
i7 : (F.ofComplex)#0==C

o7 = true
i8 : bC=boundaryOfPolytope C

o8 = 3: x x x x  x x x x  x x x x  x x x x  x x x x  
         0 1 2 3  0 1 2 4  0 1 3 4  0 2 3 4  1 2 3 4

o8 : complex of dim 3 embedded in dim 4 (printing facets)
     equidimensional, simplicial, F-vector {1, 5, 10, 10, 5, 0}, Euler = -1
i9 : F==bC.fc_1_0

o9 = true

See also

Methods that use a face:

  • closedStar(Face,Complex) -- see closedStar -- The closed star of a face of a complex.
  • complement(Face) -- Compute the complement face of a simplex.
  • coordinates(Face) -- see coordinates -- The coordinates of a face.
  • coordinates(Face,Complex) -- see coordinates -- The coordinates of a face.
  • deformationsFace(Face,Complex) -- see deformationsFace -- Compute the deformations associated to a face.
  • deformationsFace(Face,Complex,Ideal) -- see deformationsFace -- Compute the deformations associated to a face.
  • dim(Face) -- Compute the dimension of a face.
  • dim(Face,Complex) -- Compute the dimension of a face.
  • dim(Face,PolynomialRing) -- Compute the dimension of a face.
  • dualize(Face) -- see dualize -- The dual of a face or complex.
  • Face == Face -- Compare two faces.
  • faceToMonomial(Face) -- see faceToMonomial -- The monomial of a face.
  • faceToMonomial(Face,PolynomialRing) -- see faceToMonomial -- The monomial of a face.
  • indices(Face) -- The indices of a face.
  • intersectFaces(Face,Face) -- see intersectFaces -- The intersection of two faces.
  • isSubface(Face,Face) -- see isSubface -- Checks whether a face is a subface of another face.
  • link(Face,Complex) -- see link -- The link of a face of a complex.
  • net(Face) -- Printing faces.
  • ofComplex(Face) -- see ofComplex -- The complex of a face.
  • simplexDim(Face) -- see simplexDim -- The dimension of a face inside the vertex simplex.
  • simplexRing(Face) -- The underlying polynomial ring of a face.
  • vert(Face) -- see vert -- The vertices of a face or complex.

For the programmer

The object Face is a type, with ancestor classes MutableHashTable < HashTable < Thing.


The source of this document is in SRdeformations.m2:5231:0.