If the optional argument is not given, then the coefficient ring of the result is either ZZ or the base field.
The inverse of the isomorphism F is obtainable with F^-1.
i1 : A = ZZ[a]/(a^2-3) o1 = A o1 : QuotientRing |
i2 : B = A[x,y,z]/(a*x^2-y^2-z^2, y^3, z^3) o2 = B o2 : QuotientRing |
i3 : (D,F) = flattenRing B
o3 = (D, map(D,B,{x, y, z, a}))
o3 : Sequence
|
i4 : F
o4 = map(D,B,{x, y, z, a})
o4 : RingMap D <--- B
|
i5 : F^-1
o5 = map(B,D,{x, y, z, a})
o5 : RingMap B <--- D
|
i6 : describe D
ZZ [x, y, z, a]
o6 = -------------------------------
2 2 2 3 3 2
(x a - y - z , y , z , a - 3)
|
In the following example, the coefficient ring of the result is the fraction field K.
i7 : K = frac(ZZ[a]) o7 = K o7 : FractionField |
i8 : B = K[x,y,z]/(a*x^2-y^2-z^2, y^3, z^3) o8 = B o8 : QuotientRing |
i9 : (D,F) = flattenRing B
o9 = (B, map(B,B,{x, y, z, a}))
o9 : Sequence
|
i10 : describe D
K [x, y, z]
o10 = ------------------------
2 2 2 3 3
(a*x - y - z , y , z )
|
Once a ring has been declared to be a field with toField, then it will be used as the coefficient ring.
i11 : L = toField A o11 = A o11 : QuotientRing |
i12 : B = L[x,y,z]/(a*x^2-y^2-z^2, y^3, z^3) o12 = B o12 : QuotientRing |
i13 : (D,F) = flattenRing(B[s,t])
o13 = (D, map(D,B [s, t],{s, t, x, y, z, a}))
o13 : Sequence
|
i14 : describe D
A [s, t, x, y, z]
o14 = ------------------------
2 2 2 3 3
(a*x - y - z , y , z )
|
If a larger coefficient ring is desired, use the optional CoefficientRing parameter.
i15 : use L o15 = A o15 : QuotientRing |
i16 : C1 = L[s,t]; |
i17 : C2 = C1/(a*s-t^2); |
i18 : C3 = C2[p_0..p_4]/(a*s*p_0)[q]/(q^2-a*p_1); |
i19 : (D,F) = flattenRing(C3, CoefficientRing=>C2)
o19 = (D, map(D,C3,{q, p , p , p , p , p , s, t, a}))
0 1 2 3 4
o19 : Sequence
|
i20 : describe D
C2 [q, p , p , p , p , p ]
0 1 2 3 4
o20 = --------------------------
2
(q - a*p , a*s*p )
1 0
|
i21 : (D,F) = flattenRing(C3, CoefficientRing=>ZZ)
o21 = (D, map(D,C3,{q, p , p , p , p , p , s, t, a}))
0 1 2 3 4
o21 : Sequence
|
i22 : describe D
ZZ [q, p , p , p , p , p , s, t, a]
0 1 2 3 4
o22 = -------------------------------------
2 2 2
(q - p a, p s*a, - t + s*a, a - 3)
1 0
|