# 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 ℕ2. The field K is selected via the option CoefficientField.

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

Specifing 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 , x , x ] 101 0 1 2 3 o2 : MonomialAlgebra generated by {{1, 2}, {3, 0}, {0, 4}, {0, 5}}``` ```i3 : monomialAlgebra(B, CoefficientField=>QQ) o3 = QQ[x , x , x , x ] 0 1 2 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 , x , x ] 0 1 2 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 , x , x , x , x ] 0 1 2 3 4 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)