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

MacaulayPosets -- a package for working with Macaulay posets and Macaulay rings

Description

This package contains a few methods for working with posets, rings, and the Macaulay property.

Two boolean methods for ranked posets are implemented.

Four poset operations and two ring operations are implemented.

To define the latter two poset operations, a new data type PosetMap was created.

To obtain the monomial poset of a ring, one can use getPoset, a generalization of standardMonomialPoset from the Posets package to ideals which are not necessarily monomial.

This package was used in some of the work leading to the paper https://arxiv.org/abs/2502.15166, where many of these operations and properties are discussed.

Authors

Version

This documentation describes version 1.0 of MacaulayPosets, released April 5, 2026.

Citation

If you have used this package in your research, please cite it as follows:

@misc{MacaulayPosetsSource,
  title = {{MacaulayPosets: A \emph{Macaulay2} package. Version~1.0}},
  author = {Penelope Beall and Yu Olivier Li},
  howpublished = {A \emph{Macaulay2} package available at
    \url{https://github.com/Macaulay2/M2/tree/stable/M2/Macaulay2/packages}}
}

Exports

  • Types
    • PosetMap -- the class of all morphisms between posets
  • Functions and commands
  • Methods
    • getMons(Ideal) -- see getMons -- calculates the monomials of a ring
    • getMons(PolynomialRing) -- see getMons -- calculates the monomials of a ring
    • getMons(PolynomialRing,Ideal) -- see getMons -- calculates the monomials of a ring
    • getMons(QuotientRing) -- see getMons -- calculates the monomials of a ring
    • getPoset(Ideal) -- see getPoset -- calculates the monomial poset of a ring
    • getPoset(PolynomialRing) -- see getPoset -- calculates the monomial poset of a ring
    • getPoset(PolynomialRing,Ideal) -- see getPoset -- calculates the monomial poset of a ring
    • getPoset(QuotientRing) -- see getPoset -- calculates the monomial poset of a ring
    • image(PosetMap) -- see image(PosetMap,List) -- the image of a poset map
    • image(PosetMap,List) -- the image of a poset map
    • isAdditive(Poset) -- see isAdditive -- whether a poset is additive
    • isInjective(PosetMap)
    • isMacaulay(Ideal) -- see isMacaulay -- whether a poset or ring is Macaulay
    • isMacaulay(Poset) -- see isMacaulay -- whether a poset or ring is Macaulay
    • isMacaulay(QuotientRing) -- see isMacaulay -- whether a poset or ring is Macaulay
    • isRankPreserving(PosetMap) -- see isRankPreserving -- whether a poset map is rank-preserving
    • isSurjective(PosetMap)
    • lowerShadow(Poset,List) -- see lowerShadow -- the lower shadow of a subset of a poset
    • macaulayOrders(Ideal) -- see macaulayOrders -- finds all orders with respect to which the poset is Macaulay
    • macaulayOrders(Poset) -- see macaulayOrders -- finds all orders with respect to which the poset is Macaulay
    • macaulayOrders(QuotientRing) -- see macaulayOrders -- finds all orders with respect to which the poset is Macaulay
    • map(Poset,Poset,HashTable) -- see map(Poset,Poset,List) -- make a poset map
    • map(Poset,Poset,List) -- make a poset map
    • posetClosedProduct(List) -- see posetClosedProduct -- constructs the closed product of several posets
    • posetClosedProduct(Poset,Poset) -- see posetClosedProduct -- constructs the closed product of several posets
    • posetConnectedSum(List) -- see posetConnectedSum -- constructs the connected sum of several posets
    • posetConnectedSum(PosetMap,PosetMap) -- see posetConnectedSum -- constructs the connected sum of several posets
    • posetFiberProduct(List) -- see posetFiberProduct -- constructs the fiber product of several posets
    • posetFiberProduct(PosetMap,PosetMap) -- see posetFiberProduct -- constructs the fiber product of several posets
    • PosetMap * PosetMap -- composition of poset maps
    • PosetMap == PosetMap -- whether two poset maps are equal
    • PosetMap Thing -- applies a poset map to a poset element
    • posetWedgeProduct(List) -- see posetWedgeProduct -- constructs the wedge product of several posets
    • posetWedgeProduct(Poset,Poset) -- see posetWedgeProduct -- constructs the wedge product of several posets
    • ringConnectedSum(Ideal,Ideal) -- see ringConnectedSum -- constructs the connected sum of several rings
    • ringConnectedSum(List) -- see ringConnectedSum -- constructs the connected sum of several rings
    • ringConnectedSum(QuotientRing,QuotientRing) -- see ringConnectedSum -- constructs the connected sum of several rings
    • ringConnectedSum(Sequence) -- see ringConnectedSum -- constructs the connected sum of several rings
    • ringFiberProduct(Ideal,Ideal) -- see ringFiberProduct -- constructs the fiber product of several rings
    • ringFiberProduct(List) -- see ringFiberProduct -- constructs the fiber product of several rings
    • ringFiberProduct(QuotientRing,QuotientRing) -- see ringFiberProduct -- constructs the fiber product of several rings
    • ringFiberProduct(Sequence) -- see ringFiberProduct -- constructs the fiber product of several rings
    • source(PosetMap)
    • target(PosetMap)
    • upperShadow(Poset,List) -- see upperShadow -- the upper shadow of a subset of a poset
  • Symbols
    • AllOrders -- whether to return all orders instead of at most one order
    • MaxDegree -- the maximum degree of a monomial to calculate
    • TikZ -- whether to print TikZ code
    • Visual -- whether to visualize the Macaulay orders

For the programmer

The object MacaulayPosets is a package, defined in MacaulayPosets.m2.


The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/MacaulayPosets.m2:1624:0.