|
D.4.24.4 toricRingFromBinomials
Procedure from library normaliz.lib (see normaliz_lib).
- Usage:
- toricRingFromBinomials(ideal I);
toricRingFromBinomials(ideal I, intvec grading);
- Return:
- The ideal 251#251 is generated by binomials of type 1017#1017 (multiindex notation)
in the surrounding polynomial ring
1018#1018. The binomials
represent a congruence on the monoid 1019#1019 with residue monoid 13#13.
Let 418#418 be the image of 13#13 in gp(13#13)/torsion. Then 418#418 is universal in the
sense that every homomorphism from 13#13 to an affine monoid factors through 418#418.
If 251#251 is a prime ideal, then 1020#1020. In general, 1021#1021 where
1022#1022 is the unique minimal prime ideal of 251#251 generated by binomials of type
1017#1017.
The function computes 1023#1023 and returns a newly created
polynomial ring of the same Krull dimension, whose variables are
1024#1024, where 299#299 is the rank of the matrix with rows 1025#1025.
(In general there is no canonical choice for such an embedding.)
The function returns the input ideal I if an option blocking
the computation of Hilbert bases has been activated.
However, in this case some numerical invariants are computed, and
some other data may be contained in files that you can read into
Singular (see showNuminvs, exportNuminvs).
Example:
| LIB "normaliz.lib";
ring R = 37,(u,v,w,x,y,z),dp;
ideal I = u2v-xyz, ux2-wyz, uvw-y2z;
def S = toricRingFromBinomials(I);
setring S;
I;
==> I[1]=x(3)
==> I[2]=x(1)
==> I[3]=x(2)*x(3)^3
==> I[4]=x(1)*x(2)*x(3)^2
==> I[5]=x(1)^3*x(2)
==> I[6]=x(1)^2*x(2)^3*x(3)^5
| See also:
normalToricRingFromBinomials;
toricRingFromBinomials.
|