The standard way to construct a Poset is the poset method. However, this package also provides many enumerators for common posets.
For example, we can construct a boolean lattice in many ways. First, we construct it with the booleanLattice method.
i1 : n = 3; |
i2 : B = booleanLattice n; |
We can also construct it as a product of length 2 chains.
i3 : C2 = chain 2; |
i4 : C = product(n, i -> C2); |
i5 : areIsomorphic(B, C) o5 = true |
Further, we can construct it as the divisorPoset of a product of primes.
i6 : P = {2, 3, 5, 7, 11, 13, 17, 19}; |
i7 : D = divisorPoset product take(P, n); |
i8 : areIsomorphic(B, D) o8 = true |
It is also the standardMonomialPoset of the Ideal of squares of the variables.
i9 : R = QQ[x_1..x_n]; |
i10 : I = monomialIdeal apply(R_*, x -> x^2); o10 : MonomialIdeal of R |
i11 : M = standardMonomialPoset I; |
i12 : areIsomorphic(B, M) o12 = true |
There are many other common posets that can be generated with this package. See the below list for the methods.