def distinctdegree(self):
d = 0
Result = []
g = [self]
x = self.factory.monomial(1)
h = [x]
while d <= ((g[d].degree() / 2) - 1):
d = d + 1
h.append((h[d-1]^(self.factory.q)) % g[d-1])
aux = g[d-1].gcd(h[d] - x)
if not aux.is_one():
Result.append((aux,d))
g.append(g[d-1]/aux)
if not g[d].is_one():
Result.append((g[d],g[d].degree()))
return Result
评论列表
文章目录