Macaulay2 » Documentation
Packages » SimplicialComplexes :: ring(SimplicialComplex)
next | previous | forward | backward | up | index | toc

ring(SimplicialComplex) -- get the polynomial ring of its Stanley–Reisner ideal

Synopsis

Description

In this package, an abstract simplicial complex is represented as squarefree monomial ideal in a polynomial ring. In particular, the vertices of an abstract simplicial complex are a subset of the variables in that polynomial ring. This method returns the polynomial ring containing the vertices of the simplicial complex.

The boundary of the 4-simplex is a simplicial sphere with 5 vertices, 5 tetrahedral facets, and a minimal nonface that corresponds to the interior of the sphere.

i1 : S = ZZ[a..e];
i2 : Δ = simplicialComplex {b*c*d*e, a*c*d*e, a*b*d*e, a*b*c*e, a*b*c*d}

o2 = simplicialComplex | bcde acde abde abce abcd |

o2 : SimplicialComplex
i3 : ring Δ

o3 = S

o3 : PolynomialRing
i4 : coefficientRing Δ

o4 = ZZ

o4 : Ring
i5 : dim Δ

o5 = 3
i6 : assert (ring Δ === S and coefficientRing Δ === ZZ)

The abstract simplicial complex from Example 1.8 of Miller-Sturmfels' Combinatorial Commutative Algebra consists of a triangle (on vertices $a$, $b$, $c$), two edges (connecting $c$ to $d$ and $b$ to $d$), and an isolated vertex (namely $e$). It has six minimal nonfaces.

i7 : R = ZZ/101[a..e];
i8 : Γ = simplicialComplex {e, c*d, b*d, a*b*c}

o8 = simplicialComplex | e cd bd abc |

o8 : SimplicialComplex
i9 : ring Γ

o9 = R

o9 : PolynomialRing
i10 : ideal Γ

o10 = ideal (a*d, b*c*d, a*e, b*e, c*e, d*e)

o10 : Ideal of R
i11 : assert (ring Γ === R and coefficientRing Γ === ZZ/101)

The irrelevant complex has the empty set as a facet whereas the void complex has no facets.

i12 : irrelevant = simplicialComplex {1_R};
i13 : ring irrelevant

o13 = R

o13 : PolynomialRing
i14 : void = simplicialComplex monomialIdeal 1_S

o14 = simplicialComplex 0

o14 : SimplicialComplex
i15 : ring void

o15 = S

o15 : PolynomialRing
i16 : assert (ring irrelevant === R and ring void === S)

As the Stanley–Reisner ideal is part the defining data of an abstract simplicial complex, so this method does no computation.

i17 : peek Δ

o17 = SimplicialComplex{cache => CacheTable{...1...}                           }
                        facets => {b*c*d*e, a*c*d*e, a*b*d*e, a*b*c*e, a*b*c*d}
                        monomialIdeal => monomialIdeal(a*b*c*d*e)
                        ring => S

Caveat

Although an abstract simplicial complex can be represented by a Stanley–Reisner ideal in any polynomial ring with a sufficiently large number of variables, some operations in this package do depend of the choice of the polynomial ring (or its coefficient ring). For example, the chain complex of an abstract simplicial complex is typically constructed over the coefficient ring of this polynomial ring, and the dual of a simplicial complex (or monomial ideal) is dependent on the number of variables in the polynomial ideal.

See also

Ways to use this method: