# how to define Skew Polynomial Ring over Cyclotomic Field Anonymous

how to define Skew Polynomial Ring in x over Cyclotomic Field of order 7 and degree 6 twisted by zeta7 |--> zeta7^2 when i execute those commands

K = CyclotomicField(7)

sigma = K.hom([K.gen()^2])

S.< x > = K['x',sigma]

I have this message error

AssertionError: coercion from Cyclotomic Field of order 7 and degree 6 to Skew Polynomial Ring in x over Cyclotomic Field of order 7 and degree 6 twisted by zeta7 |--> zeta7^2 already registered or discovered

edit retag close merge delete

Sort by » oldest newest most voted

The following is a workaround. (Some internals want to deal with a ring, this was only a feeling i had while trying to trace back the error. So i also insisted to use only rings.)

R.<X> = PolynomialRing( QQ )
K.<a> = R.quotient( X^6 + X^5 + X^4 + X^3 + X^2 + X + 1 )
g = K.hom( a^2, K )
S.<x> = SkewPolynomialRing( K, g )


Test:

print S
print (x+a)^3


This gives:

Skew Polynomial Ring in x
over Univariate Quotient Polynomial Ring in a over Rational Field
with modulus X^6 + X^5 + X^4 + X^3 + X^2 + X + 1
twisted by a |--> a^2

x^3 + (a^4 + a^2 + a)*x^2 + (a^4 + a^3 + a^2)*x + a^3


(Result was rearranged manually to fit here in the width.)

more