# monomialAlgebra -- Create a monomial algebra

## Description

Create a monomial algebra K[B] by either specifying

- the semigroup B as a list of generators. The field K is selected via the option CoefficientField.

- a list of positive integers which is converted by adjoinPurePowers and homogenizeSemigroup into a list B of elements of \mathbb{N}^2. The field K is selected via the option CoefficientField.

- a multigraded polynomial ring R with Degrees R = B.

Specifying B:

 i1 : B = {{1,2},{3,0},{0,4},{0,5}} o1 = {{1, 2}, {3, 0}, {0, 4}, {0, 5}} o1 : List i2 : monomialAlgebra B ZZ o2 = ---[x ..x ] 101 0 3 o2 : MonomialAlgebra generated by {{1, 2}, {3, 0}, {0, 4}, {0, 5}} i3 : monomialAlgebra(B, CoefficientField=>QQ) o3 = QQ[x ..x ] 0 3 o3 : MonomialAlgebra generated by {{1, 2}, {3, 0}, {0, 4}, {0, 5}}

Specifying R:

 i4 : kk=ZZ/101 o4 = kk o4 : QuotientRing i5 : B = {{1,2},{3,0},{0,4},{0,5}} o5 = {{1, 2}, {3, 0}, {0, 4}, {0, 5}} o5 : List i6 : monomialAlgebra(kk[x_0..x_3, Degrees=> B]) o6 = kk[x ..x ] 0 3 o6 : MonomialAlgebra generated by {{1, 2}, {3, 0}, {0, 4}, {0, 5}}

Specifying a list of integers to define a monomial curve:

 i7 : M = monomialAlgebra {1,4,8,9,11} o7 = kk[x ..x ] 0 5 o7 : MonomialAlgebra generated by {{11, 0}, {0, 11}, {1, 10}, {4, 7}, {8, 3}, {9, 2}}

## Ways to use monomialAlgebra :

• "monomialAlgebra(List)"
• "monomialAlgebra(PolynomialRing)"

## For the programmer

The object monomialAlgebra is .