[back] [prev] [next] [index] [root]

 


OrderPolyHenselLift

Calculates a p-adic factorization of the defining polynomial of an order.

Syntax:

L := OrderPolyHenselLift(o, d, p, k);

list
  L  
order
  o  
integer
  d  
prime
  p  
integer
  k  

Description:

Let o be an order defined by a polynomial f \in Z[x] and let p \in Z be a prime which does not divide the discriminant of f. This function computes the factorization of f over the unramified extension of Q|p of degree d. It returns a list containing the factors modulo p^{2^{ k}}.


Example:


kash> o :=Order(Poly(Zx,[1,0,-4,0,1]));
Generating polynomial: x^4 - 4*x^2 + 1

kash> P :=OrderPolyHenselLift(o,2,5,2);
[ x + [258, 312], x + [-258, 312], x + [-258, -312], x + [258, -312] ]
kash> P[1]*P[2]*P[3]*P[4];
x^4 - 522504*x^2 + 16415759376
kash> P :=OrderPolyHenselLift(o,3,7,2);
[ x^2 - 235*x - 1, x^2 + 235*x - 1 ]
kash> P[1]*P[2];
> x^4 - 55227*x^2 + 1


<- back[back] [prev] [next] [index] [root]