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 2 3 3 (a - 3, x a - y - z , y , z ) |
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 (a*s*p , q - a*p ) 0 1 |
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 (a - 3, - t + s*a, p s*a, q - p a) 0 1 |