NZMATH  1.2.0
About: NZMATH is a Python based number theory oriented calculation system.
  Fossies Dox: NZMATH-1.2.0.tar.gz  ("inofficial" and yet experimental doxygen-generated source code documentation)  

nzmath.poly.hensel.HenselLiftMulti Class Reference
Inheritance diagram for nzmath.poly.hensel.HenselLiftMulti:
Collaboration diagram for nzmath.poly.hensel.HenselLiftMulti:

Public Member Functions

def __init__ (self, target, factors, cofactors, ladder, p, q=None)
def from_factors (cls, target, factors, p)
def lift_factors (self)
def lift_ladder (self)
def lift (self)

Public Attributes



 factors = property(_get_factors)

Private Member Functions

def _get_factors (self)

Detailed Description

A class represents integer polynomials which will be lifted by
Hensel's lemma.

If the number of factors is two, you should use HenselLiftPair.

Definition at line 163 of file

Constructor & Destructor Documentation

◆ __init__()

def nzmath.poly.hensel.HenselLiftMulti.__init__ (   self,
  q = None 
HenselLiftMulti(f, factors, ladder, p, q)

The parameters satisfy that:
 +  ai's of factors and f are all monic
 +  bi's of cofactors are product of aj's for i < j
 +  f == a1*...*ar (mod q)
 +  ladder is a tuple (sis, tis) and si's of sis and ti's of tis
    satisfy: ai*si + bi*ti == 1 (mod p),
with positive integers p dividing q.

If p==q, q can be omit from the argument.

Definition at line 170 of file

Member Function Documentation

◆ _get_factors()

def nzmath.poly.hensel.HenselLiftMulti._get_factors (   self)
getter for factors of target mod q

Definition at line 268 of file

References nzmath.elliptic.ECGeneric.a, nzmath.poly.hensel.HenselLiftMulti.a, and nzmath.elliptic.ECoverGF.a.

◆ from_factors()

def nzmath.poly.hensel.HenselLiftMulti.from_factors (   cls,
Create and return an instance of HenselLiftMulti.

HenselLiftMulti.from_factors(f, factors, p)

The parameters satisfy that:
  f == a1*...*ar (mod p)
with a prime number p and ai's in factors.

Definition at line 197 of file

References nzmath.poly.hensel._extgcdp(), and nzmath.poly.hensel._init_cofactors().

◆ lift()

◆ lift_factors()

def nzmath.poly.hensel.HenselLiftMulti.lift_factors (   self)

◆ lift_ladder()

def nzmath.poly.hensel.HenselLiftMulti.lift_ladder (   self)

Member Data Documentation

◆ a

◆ b


◆ f

◆ p

◆ q

◆ r

◆ s


◆ t


Property Documentation

◆ factors

The documentation for this class was generated from the following file: