Calculate Inverses
Hello Guys, i have the following problem.
I got the Ring R=Z/(x7−1) and the polynom f(x) = x6−x4+x3+x2−1∈R and want to compute the inverse of f(x), f(x)−1. How do I do that?
You will find your inverse if you work over the rationals, that is if R=Q[x]/(x7−1). There, you can do:
sage: R.<x> = QQ[]
sage: RR = R.quotient(x^7 - 1)
sage: f = RR(x^6-x^4+x^3+x^2-1)
sage: g = f^(-1)
sage: g
16/43*xbar^6 + 11/43*xbar^5 + 21/43*xbar^4 + 1/43*xbar^3 - 2/43*xbar^2 + 4/43*xbar - 8/43
sage: g*f
1
sage: f*g
EDIT answers to the further questions asked in comment:
If you want to work on R=(Z/7Z)/(x7−1), this is very similar:
sage: Zmod(7)
Ring of integers modulo 7
sage: R.<x> = Zmod(7)[]
sage: R
Univariate Polynomial Ring in x over Ring of integers modulo 7
sage: RR = R.quotient(x^7 - 1)
sage: RR
Univariate Quotient Polynomial Ring in xbar over Ring of integers modulo 7 with modulus x^7 + 6
sage: f = RR(x^6-x^4+x^3+x^2-1)
sage: f
xbar^6 + 6*xbar^4 + xbar^3 + xbar^2 + 6
sage: g = f^(-1)
sage: g
2*xbar^6 + 4*xbar^5 + xbar^3 + 5*xbar^2 + 4*xbar + 6
sage: g.parent()
Univariate Quotient Polynomial Ring in xbar over Ring of integers modulo 7 with modulus x^7 + 6
sage: g*f
1
sage: f*g
1
As for your second question, when i write R.<x>=...
i define both the polynomial ring R
and its undeterminate x
, so x^6-x^4+x^3+x^2-1
is an element of R
. when i write RR(x^6-x^4+x^3+x^2-1)
, i make a conversion of
x^6-x^4+x^3+x^2-1
into the quotient ring RR
, you can have a look at : http://doc.sagemath.org/html/en/tutor... to learn more.
Thanks a lot. Sorry to bother you more, but... when i use R=(Z/7Z)/(x7−1) instead, does it work the same? And in you line 3 you say: "f = RR(x^6-x^4+x^3+x^2-1)"... i dont know exactely what this is good for (like i said... i am totally new to sage). Does that mean you are are looking at x^6-x^4+x^3+x^2-1 as an element in RR?
I updated my answer to answer your questions.
Thanks once more.
Note that you can also use GF(7) instead of Zmod(7), to see it as a field instead of a ring.
Over QQ you can do that
sage: R = PolynomialRing(QQ, 'x')
sage: x = R.gen()
sage: quot = R.quotient_by_principal_ideal(x**7-1)
sage: y = quot.gen()
sage: 1/(y**6-y**4+y**3-y**2+1)
2/13*xbar^6 - 1/13*xbar^5 + 3/13*xbar^4 - 1/13*xbar^3 + 2/13*xbar^2 + 4/13*xbar + 4/13
sage: 1/(y**6-y**4+y**3+y**2-1)
16/43*xbar^6 + 11/43*xbar^5 + 21/43*xbar^4 + 1/43*xbar^3 - 2/43*xbar^2 + 4/43*xbar - 8/43
and you can see that the inverses do not exist over ZZ, as 13 or 43 must be invertible
Please start posting anonymously - your entry will be published after you log in or create a new account.
Asked: 9 years ago
Seen: 4,573 times
Last updated: Nov 22 '15
Polynomial modulus in QuotientRing
Get coefficients of a polynomial in quotient ring
Multivariate Polynomials over Rational Function Fields
How do I Pass a tuple as an argument for a multivariate polynomial?
Is there an example of how i could write a polynomial as a product of linear factors
multi-symmetric functions and multi-partitions