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

# toricIdeal -- returns a toric ideal

- Usage:
    `toricIdeal(A,R)`
- Inputs:
  - A, a matrix, a d x n integer matrix
  - R, a ring, a polynomial ring in n variables
- Outputs:
  - an ideal, the toric ideal associated to A in R

## Description

Given a $d\times n$ Matrix A and a polynomial ring in $n$ variables $R$, this method returns the toric ideal associated to $A$ in $R$. To do this, toricIdeal saturates the lattice basis ideal of the kernel of $A$ with respect to the product of the variables of $R$.

    i1 : A=matrix{{1,1,1,1,1,1},{1,2,1,2,3,0},{0,2,2,0,1,1}}

    o1 = | 1 1 1 1 1 1 |
         | 1 2 1 2 3 0 |
         | 0 2 2 0 1 1 |

                  3       6
    o1 : Matrix ZZ  <-- ZZ

    i2 : R=QQ[a..f]

    o2 = R

    o2 : PolynomialRing

    i3 : toricIdeal(A,R)

                                       3     3      2     2      2         2
    o3 = ideal (c*d - e*f, a*b - e*f, c e - b f, a*c e - b d*f, a c*e - b*d f,
         ------------------------------------------------------------------------
          3     3      3    2 2   2 2        2   3     2 2     3    2 2   2 2
         a e - d f, b*d  - a e , b d  - a*c*e , b d - c e , a*c  - b f , a c  -
         ------------------------------------------------------------------------
              2   3     2 2
         b*d*f , a c - d f )

    o3 : Ideal of R

    i4 : A=matrix{{1,1,1,1,1},{0,0,1,1,0},{0,1,1,0,-2}}

    o4 = | 1 1 1 1 1  |
         | 0 0 1 1 0  |
         | 0 1 1 0 -2 |

                  3       5
    o4 : Matrix ZZ  <-- ZZ

    i5 : R=toGradedRing(A,QQ[a..e])

    o5 = R

    o5 : PolynomialRing

    i6 : toricIdeal(A,R)

                              2    2    2            3    2
    o6 = ideal (a*c - b*d, a*d  - c e, a d - b*c*e, a  - b e)

    o6 : Ideal of R

## Ways to use toricIdeal:

- `toricIdeal(Matrix,Ring)`

## For the programmer

The object toricIdeal is a method function.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/Quasidegrees.m2:550:0.