from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
1 | initial version |
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing is_QuotientRing\
F=ZZ.quo(3ZZ);F \
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing\ is_QuotientRing
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1;I
I=ideal(X^2-1,Y^2-1,Z^2-1);I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1);I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1);I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J Below it the Sage code
B = J.groebner_basis() ;B
Below it the Sage code
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1);I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;B
Below it is the Sage code
from sage.rings.quotient_ring import is_QuotientRing
F=ZZ.quo(3ZZ);F
A.<x,y,z> = PolynomialRing(F);A
I=ideal(X^2-1,Y^2-1,Z^2-1);I
R = A.quotient_ring(I);R
x,y,z=R.gens();
J=ideal(xy+z,x+xz,xz+y);J
B = J.groebner_basis() ;Bcode
.
Below is the Sage code .
Below is the Sage code .
Below is the Sage code
.sage code
Below is the sage codeI define the following rings and ideals:
sage: F = ZZ.quo(3*ZZ); F
Ring of integers modulo 3
sage: A.<X, Y, Z> = PolynomialRing(F); A
Multivariate Polynomial Ring in X, Y, Z
over Ring of integers modulo 3
sage: I = ideal(X^2 - 1, Y^2 - 1, Z^2 - 1); I
Ideal (X^2 + 2, Y^2 + 2, Z^2 + 2)
of Multivariate Polynomial Ring in X, Y, Z
over Ring of integers modulo 3
sage: R = A.quotient_ring(I); R
Quotient of Multivariate Polynomial Ring in X, Y, Z
over Ring of integers modulo 3
by the ideal (X^2 + 2, Y^2 + 2, Z^2 + 2)
sage: x, y, z = R.gens()
sage: J = ideal(x*y + z, x + x*z, x*z + y); J
Ideal (Xbar*Ybar + Zbar, Xbar*Zbar + Xbar, Xbar*Zbar + Ybar)
of Quotient of Multivariate Polynomial Ring in X, Y, Z
over Ring of integers modulo 3
by the ideal (X^2 + 2, Y^2 + 2, Z^2 + 2)
I then compute:
sage: B = J.groebner_basis()
and examine the result of that computation:
sage: B
[Xbar + 2*Ybar, Zbar + 1]
Is it really the Groebner basis of J
?
Did Sage really compute in A/I and not in A?
I define the following rings and ideals:
sage: F = ZZ.quo(3*ZZ); F
Ring of integers modulo 3
sage: A.<X, Y, Z> = PolynomialRing(F); A
Multivariate Polynomial Ring in X, Y, Z
over Ring of integers modulo 3
sage: I = ideal(X^2 - 1, Y^2 - 1, Z^2 - 1); I
Ideal (X^2 + 2, Y^2 + 2, Z^2 + 2)
of Multivariate Polynomial Ring in X, Y, Z
over Ring of integers modulo 3
sage: R = A.quotient_ring(I); R
Quotient of Multivariate Polynomial Ring in X, Y, Z
over Ring of integers modulo 3
by the ideal (X^2 + 2, Y^2 + 2, Z^2 + 2)
sage: x, y, z = R.gens()
sage: J = ideal(x*y + z, x + x*z, x*z + y); J
Ideal (Xbar*Ybar + Zbar, Xbar*Zbar + Xbar, Xbar*Zbar + Ybar)
of Quotient of Multivariate Polynomial Ring in X, Y, Z
over Ring of integers modulo 3
by the ideal (X^2 + 2, Y^2 + 2, Z^2 + 2)
I then compute:
sage: B = J.groebner_basis()
and examine the result of that computation:
sage: B
[Xbar + 2*Ybar, Zbar + 1]
Is it really the Groebner basis of J
?
Did Sage really compute in A/I and not in A?