1 | initial version |
One possibility to construct the ring would be as in the sample code:
sage: S = PowerSeriesRing( base_ring=QQ, names='a,b,c,d', default_prec=9 )
sage: S
Multivariate Power Series Ring in a, b, c, d over Rational Field
sage: a,b,c,d = S.gens()
sage: J = S.O(9)
sage: J
0 + O(a, b, c, d)^9
sage: u = (1+a^3+J)*(1+b^3+J)*(1+c^3+J)*(1+d^3+J)
sage: u
1 + a^3 + b^3 + c^3 + d^3 + a^3*b^3 + a^3*c^3 + a^3*d^3 + b^3*c^3 + b^3*d^3 + c^3*d^3 + O(a, b, c, d)^9
sage: 1/u
1 - a^3 - b^3 - c^3 - d^3 + a^6 + a^3*b^3 + a^3*c^3 + a^3*d^3 + b^6 + b^3*c^3 + b^3*d^3 + c^6 + c^3*d^3 + d^6 + O(a, b, c, d)^9
The above uses the PowerSeriesRing
with a declared precision, and the ideal J
is implemented as an $O$-calculus.
Hope it works for the needed purpose.