/**/ P ::= ZZ/(5)[x,y]; S ::= QQ[x,y,z[1..4,3..7]]; K := NewFractionField(S);
/**/ QR := NewQuotientRing(S, "x^2-3, y^2-5");
/**/ -- STRING
/**/ 7*RingElem(P, "x"); --> x as an element of P
2*x
/**/ 7*RingElem(S, "x"); --> x as an element of S
7*x
/**/ RingElem(S, "((7/3)*z[2,5] - 1)^2" ); -- expr without function calls
(49/9)*z[2,5]^2 +(-14/3)*z[2,5] +1
/**/ RingElem(K, "(x^2-x*y)/(x*y-y^2)");
x/y
/**/ f := RingElem(S, "(x+y)^3"); f;
x^3 +3*x^2*y +3*x*y^2 +y^3
/**/ RingElem(QR, sprint(f));
(18*x +14*y)
/**/ RingElem(NewPolyRing(NewZZmod(3), "x,y"), sprint(f));
x^3 +y^3
/**/ -- RINGELEM (via CanonicalHom)
/**/ use S;
/**/ f := 2*x-3;
-- /**/ f/LC(f); -- !!! ERROR !!! as expected: LC(F) in CoeffRing(P)
/**/ f/RingElem(S,LC(f));
x -3/2
-- /**/ 1/f; -- !!! ERROR !!! as expected: f in P is not invertible
/**/ 1/RingElem(K, f); -- f in K is invertible
1/(2*x -3)
/**/ use P;
/**/ -- INT and RAT
/**/ RingElem(P, 7);
2
/**/ RingElem(P, 3/2);
-1
/**/ -- LIST
/**/ i := 2; j := 5; 7*RingElem(S, ["z",i,j]);
7*z[2,5]
|