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

 


PolyNewtonLift

Lifts an algebraic element with the Newton lifting method.

Syntax:

beta := PolyNewtonLift(f, alpha, k);
beta := PolyNewtonLift(f, alpha, k, a);

algebraic element
  alpha  
integer (0 if omitted)
  a  
polynomial
  f  
integer
  k  
polynomial
  beta  

Description:

Given an algebraic element alpha with f( alpha) \equiv 0 \bmod (t-a), this function calculates an algebraic element \beta\in o[t] with f(\beta) \equiv 0 \bmod (t-a)^ k.


Example:


kash> AlffInit(Q,"t","X");
"Defining global variables: k, w, kt, ktf, ktX, t, X, AlffGlobals"
kash> f:=X^4-2+t;
X^4 + t - 2
kash> o:=Order(Z,4,2);
Generating polynomial: x^4 - 2

kash> alpha:=OrderBasis(o)[2];
[0, 1, 0, 0]
kash> beta:=PolyNewtonLift(f,alpha,5);
> [0, -77, 0, 0] / 32768*t^4 + [0, -7, 0, 0] / 1024*t^3 + [0, -3, 0, 0] / 128*t^\
2 + [0, -1, 0, 0] / 8*t + [0, 1, 0, 0]


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