Givaro
Public Types | Public Member Functions | Data Fields | Protected Attributes
Poly1PadicDom< Domain, Dense > Class Template Reference

#include <givpoly1padic.h>

Inheritance diagram for Poly1PadicDom< Domain, Dense >:

Public Types

typedef Poly_t::Element Element
typedef Poly_t::Element pol_Element
typedef IntegerDom::Element int_Element
typedef Domain Domain_t
typedef Domain::Element Type_t
typedef Poly1Dom< Domain, DenseSelf_t
typedef givvector< Type_tStorage_t
typedef const Storage_t constRep

Public Member Functions

 Poly1PadicDom (Domain &d, const Indeter &X)
 Poly1PadicDom (const Poly_t &P)
 Poly1PadicDom (const Poly_t &P, const IntegerDom &D)
std::ostream & write (std::ostream &o, const pol_Element &p)
template<class vect >
IntegerDom::Elementeval (IntegerDom::Element &E, const vect &P)
template<class vect >
unsigned long & eval (unsigned long &E, const vect &P)
template<class unsignedinttype , class vect >
unsignedinttype & eval (unsignedinttype &E, const vect &P)
template<class elem , class vect >
elem & evaldirect (elem &E, const vect &P)
template<class vect >
vect & radix (vect &P, const IntegerDom::Element &E, long n=0)
template<class vect >
vect & fastradixdirect (vect &P, const double &E, unsigned long n)
template<class vect , class TT >
vect & radixdirect (vect &P, const TT &E, unsigned long n)
template<class vect >
vect & radixdirect (vect &P, const double &E, unsigned long n)
Type_t characteristic () const
Integercharacteristic (Integer &p) const
int operator== (const Poly1Dom< Domain, Dense > &BC) const
int operator!= (const Poly1Dom< Domain, Dense > &BC) const
const IndetergetIndeter () const
IndetersetIndeter (const Indeter &X)
const Domainsubdomain () const
const Domaingetdomain () const
Domainsetdomain (const Domain &D)
Repinit (Rep &a) const
template<class XXX >
Repinit (Rep &p, const XXX &cste) const
Repinit (Rep &r, const Degree deg) const
template<class XXX >
Repinit (Rep &p, const Degree deg, const XXX &lcoeff) const
Repassign (Rep &p, const Degree deg, const Type_t &lcoeff) const
Repassign (Rep &p, const Type_t &cste) const
Repassign (Rep &p, const Rep &q) const
Type_tconvert (Type_t &, const Rep &) const
template<class XXX >
XXX & convert (XXX &p, const Rep &) const
template<class UU , template< class XX > class Vect>
Vect< UU > & convert (Vect< UU > &, const Rep &P) const
template<class Domain >
Poly1Dom< Domain, Dense >::Type_tconvert (typename Poly1Dom< Domain, Dense >::Type_t &Val, const typename Poly1Dom< Domain, Dense >::Rep &P) const
template<class XXX >
XXX & convert (XXX &Val, const typename Poly1Dom< Domain, Dense >::Rep &P) const
template<class UU , template< class XX > class Vect>
Vect< UU > & convert (Vect< UU > &Val, const typename Poly1Dom< Domain, Dense >::Rep &P) const
int isZero (const Rep &P) const
int isOne (const Rep &P) const
int areEqual (const Rep &P, const Rep &Q) const
int areNEqual (const Rep &P, const Rep &Q) const
Type_tleadcoef (Type_t &c, const Rep &P) const
Type_tgetEntry (Type_t &c, const Degree &i, const Rep &P) const
Degreedegree (Degree &d, const Rep &P) const
Degreeval (Degree &d, const Rep &P) const
Repsetdegree (Rep &P) const
 Compute the degree of P.
Type_teval (Type_t &pval, const Rep &P, const Type_t &val) const
Repdiff (Rep &P, const Rep &Q) const
Repreverse (Rep &, const Rep &) const
Repreversein (Rep &) const
std::istream & read (std::istream &i)
std::istream & read (std::istream &i, Rep &n) const
std::ostream & write (std::ostream &o) const
std::ostream & write (std::ostream &o, const Rep &n) const
Repaddin (Rep &res, const Rep &u) const
Repadd (Rep &res, const Rep &u, const Rep &v) const
Repadd (Rep &res, const Rep &u, const Type_t &val) const
Repadd (Rep &res, const Type_t &val, const Rep &v) const
Repsubin (Rep &res, const Rep &u) const
Repsub (Rep &res, const Rep &u, const Rep &v) const
Repsub (Rep &res, const Rep &u, const Type_t &val) const
Repsub (Rep &res, const Type_t &val, const Rep &v) const
Repnegin (Rep &res) const
Repneg (Rep &res, const Rep &u) const
Repmulin (Rep &q, const Rep &a) const
Repmulin (Rep &q, const Type_t &a) const
Repmul (Rep &q, const Rep &a, const Rep &b) const
Repmul (Rep &q, const Type_t &a, const Rep &b) const
Repmul (Rep &q, const Rep &a, const Type_t &b) const
Repmul (Rep &, const Rep &, const Rep &, const Degree &, const Degree &) const
Repshiftin (Rep &, int) const
Repshift (Rep &, const Rep &, int) const
Repdivin (Rep &q, const Rep &a) const
Repdivin (Rep &q, const Type_t &a) const
Repdiv (Rep &q, const Rep &a, const Rep &b) const
Repdiv (Rep &q, const Type_t &a, const Rep &b) const
Repdiv (Rep &q, const Rep &a, const Type_t &b) const
Repmodin (Rep &q, const Rep &a) const
Repmodin (Rep &q, const Type_t &a) const
Repmod (Rep &q, const Rep &a, const Rep &b) const
Repmod (Rep &q, const Type_t &a, const Rep &b) const
Repmod (Rep &q, const Rep &a, const Type_t &b) const
Repaxpy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
Repaxpy (Rep &r, const Type_t &a, const Rep &x, const Rep &y) const
Repaxpyin (Rep &r, const Rep &a, const Rep &x) const
Repaxpyin (Rep &r, const Type_t &a, const Rep &x) const
Repmaxpy (Rep &r, const Rep &a, const Rep &b, const Rep &c) const
Repmaxpy (Rep &r, const Type_t &a, const Rep &b, const Rep &c) const
Repmaxpyin (Rep &r, const Rep &a, const Rep &b) const
Repmaxpyin (Rep &r, const Type_t &a, const Rep &b) const
Repaxmy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
Repaxmy (Rep &r, const Type_t &a, const Rep &x, const Rep &y) const
Repaxmyin (Rep &r, const Rep &a, const Rep &x) const
Repaxmyin (Rep &r, const Type_t &a, const Rep &x) const
Repdivmod (Rep &q, Rep &r, const Rep &a, const Rep &b) const
Repdivmodin (Rep &q, Rep &r, const Rep &b) const
Reppdivmod (Rep &q, Rep &r, Type_t &m, const Rep &a, const Rep &b) const
Reppmod (Rep &r, Type_t &m, const Rep &a, const Rep &b) const
Reppmod (Rep &r, const Rep &a, const Rep &b) const
Reppdiv (Rep &q, Type_t &m, const Rep &a, const Rep &b) const
Reppdiv (Rep &q, const Rep &a, const Rep &b) const
Repgcd (Rep &D, const Rep &P, const Rep &Q) const
Repgcd (Rep &D, Rep &U, Rep &V, const Rep &P, const Rep &Q) const
Replcm (Rep &D, const Rep &P, const Rep &Q) const
Repinvmod (Rep &U, const Rep &P, const Rep &Q) const
Repinvmodunit (Rep &U, const Rep &P, const Rep &Q) const
void ratrecon (Rep &N, Rep &D, const Rep &P, const Rep &M, const Degree &dk) const
bool ratreconcheck (Rep &N, Rep &D, const Rep &P, const Rep &M, const Degree &dk) const
Reppow (Rep &W, const Rep &P, long n) const
Reppowmod (Rep &W, const Rep &P, IntegerDom::Element pwr, const Rep &U) const
template<class MyInt >
Reppowmod (Rep &W, const Rep &P, MyInt pwr, const Rep &U) const
Reppower_compose (Rep &W, const Rep &P, long b) const
Repcyclotomic (Rep &P, long n) const
template<class RandIter >
Reprandom (RandIter &g, Rep &r) const
template<class RandIter >
Reprandom (RandIter &g, Rep &r, long s) const
template<class RandIter >
Reprandom (RandIter &g, Rep &r, Degree s) const
Reprandom (GivRandom &g, Rep &r, Degree s) const
template<class RandIter >
Reprandom (RandIter &g, Rep &r, const Rep &b) const
template<class RandIter >
Poly1Dom< Domain, Dense >::Reprandom (RandIter &g, typename Poly1Dom< Domain, Dense >::Rep &r, Degree d) const
template<class RandIter >
Repnonzerorandom (RandIter &g, Rep &r) const
template<class RandIter >
Repnonzerorandom (RandIter &g, Rep &r, long s) const
template<class RandIter >
Repnonzerorandom (RandIter &g, Rep &r, Degree s) const
template<class RandIter >
Repnonzerorandom (RandIter &g, Rep &r, const Rep &b) const
size_t & sqrfree (size_t &Nfact, Rep *Fact, const Rep &P) const
 Sqrfree decomposition.
int operator== (const IntegerDom &) const
int operator!= (const IntegerDom &) const
Repinit (Rep &a) const
Repinit (Rep &a, const Rep &b) const
Repread (Rep &a, const long i) const
Repread (Rep &a, const unsigned long i) const
Repread (Rep &a, const int i) const
Repread (Rep &a, const unsigned int i) const
std::istream & read (std::istream &i)
std::istream & read (std::istream &i, Rep &n) const
Repconvert (Rep &a, const Rep &b) const
template<class XXX >
XXX & convert (XXX &x, const Rep &a) const
Repassign (Rep &a, const Rep &b) const
const Repaccess (const Rep &a) const
Repmul (Rep &r, const Rep &a, const Rep &b) const
Repdiv (Rep &r, const Rep &a, const Rep &b) const
Repmod (Rep &r, const Rep &a, const Rep &b) const
Repadd (Rep &r, const Rep &a, const Rep &b) const
Repsub (Rep &r, const Rep &a, const Rep &b) const
Repdivmod (Rep &q, Rep &r, const Rep &a, const Rep &b) const
Repdivexact (Rep &q, const Rep &a, const Rep &b) const
Repmulin (Rep &r, const Rep &a) const
Repdivin (Rep &r, const Rep &a) const
Repmodin (Rep &r, const Rep &a) const
Repaddin (Rep &r, const Rep &a) const
Repsubin (Rep &r, const Rep &a) const
Repaxpy (Rep &r, const Rep &a, const Rep &b, const Rep &c) const
Repmaxpy (Rep &r, const Rep &a, const Rep &b, const Rep &c) const
Repmaxpyin (Rep &r, const Rep &a, const Rep &b) const
Repaxmy (Rep &r, const Rep &a, const Rep &b, const Rep &c) const
Repaxpyin (Rep &r, const Rep &a, const Rep &b) const
Repaxmyin (Rep &r, const Rep &a, const Rep &b) const
Repneg (Rep &r, const Rep &a) const
Repnegin (Rep &r) const
Repgcd (Rep &g, Rep &u, Rep &v, const Rep &a, const Rep &b) const
Repgcd (Rep &g, const Rep &a, const Rep &b) const
Replcm (Rep &l, const Rep &a, const Rep &b) const
Replcmin (Rep &l, const Rep &a) const
Repinv (Rep &u, const Rep &a, const Rep &b) const
Repinvin (Rep &u, const Rep &b) const
Reppow (Rep &r, const Rep &n, const long l) const
Reppow (Rep &r, const Rep &n, const unsigned long l) const
Reppow (Rep &r, const Rep &n, const int l) const
Reppow (Rep &r, const Rep &n, const unsigned int l) const
Repsqrt (Rep &s, const Rep &n) const
Repsqrt (Rep &s, Rep &r, const Rep &n) const
long logp (const Rep &a, const Rep &p) const
Reppowmod (Rep &r, const Rep &n, const long e, const Rep &m) const
Reppowmod (Rep &r, const Rep &n, const Rep &e, const Rep &m) const
unsigned long length (const Rep &a) const
int sign (const Rep &a) const
bool isZero (const Rep &a) const
bool isOne (const Rep &a) const
bool areEqual (const Rep &a, const Rep &b) const
bool areNEqual (const Rep &a, const Rep &b) const
bool isgeq (const Rep &a, const Rep &b) const
bool isgeq (const long b, const Rep &a) const
bool isgeq (const Rep &a, const long b) const
bool isleq (const Rep &a, const Rep &b) const
bool isleq (const long b, const Rep &a) const
bool isleq (const Rep &a, const long b) const
bool isgt (const Rep &a, const Rep &b) const
bool isgt (const long b, const Rep &a) const
bool isgt (const Rep &a, const long b) const
bool islt (const Rep &a, const Rep &b) const
bool islt (const long b, const Rep &a) const
bool islt (const Rep &a, const long b) const
template<class RandIter >
Reprandom (RandIter &, Rep &r, long s=1) const
template<class RandIter >
Reprandom (RandIter &, Rep &r, const Rep &b) const
template<class RandIter >
Repnonzerorandom (RandIter &, Rep &r, long s=1) const
template<class RandIter >
Repnonzerorandom (RandIter &, Rep &r, const Rep &b) const
std::ostream & write (std::ostream &o) const
std::ostream & write (std::ostream &o, const Rep &n) const

Data Fields

Rep zero
Rep one
const Integer one
const Integer zero

Protected Attributes

Domain _domain
Indeter _x

template<class Domain>
class Givaro::Poly1PadicDom< Domain, Dense >


Member Typedef Documentation

Reimplemented from IntegerDom.

typedef Domain Domain_t [inherited]
typedef Domain::Element Type_t [inherited]
typedef Poly1Dom<Domain,Dense> Self_t [inherited]
typedef givvector<Type_t> Storage_t [inherited]
typedef const Storage_t constRep [inherited]

Constructor & Destructor Documentation

Poly1PadicDom ( Domain d,
const Indeter X 
) [inline]
Poly1PadicDom ( const Poly_t P) [inline]
Poly1PadicDom ( const Poly_t P,
const IntegerDom D 
) [inline]

Member Function Documentation

std::ostream& write ( std::ostream &  o,
const pol_Element p 
) [inline]
IntegerDom::Element& eval ( IntegerDom::Element E,
const vect &  P 
) [inline]
unsigned long& eval ( unsigned long &  E,
const vect &  P 
) [inline]
unsignedinttype& eval ( unsignedinttype &  E,
const vect &  P 
) [inline]
elem& evaldirect ( elem &  E,
const vect &  P 
) [inline]
vect& radix ( vect &  P,
const IntegerDom::Element E,
long  n = 0 
) [inline]
vect& fastradixdirect ( vect &  P,
const double &  E,
unsigned long  n 
) [inline]
vect& radixdirect ( vect &  P,
const TT &  E,
unsigned long  n 
) [inline]
vect& radixdirect ( vect &  P,
const double &  E,
unsigned long  n 
) [inline]
Type_t characteristic ( ) const [inline, inherited]
Integer& characteristic ( Integer p) const [inline, inherited]
int operator== ( const Poly1Dom< Domain, Dense > &  BC) const [inline, inherited]
int operator!= ( const Poly1Dom< Domain, Dense > &  BC) const [inline, inherited]
const Indeter& getIndeter ( ) const [inline, inherited]
Indeter& setIndeter ( const Indeter X) [inline, inherited]
const Domain& subdomain ( ) const [inline, inherited]
const Domain& getdomain ( ) const [inline, inherited]
Domain& setdomain ( const Domain D) [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & init ( Rep a) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & init ( Rep p,
const XXX &  cste 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & init ( Rep r,
const Degree  deg 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & init ( Rep p,
const Degree  deg,
const XXX &  lcoeff 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & assign ( Rep p,
const Degree  deg,
const Type_t lcoeff 
) const [inline, inherited]
Rep& assign ( Rep p,
const Type_t cste 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & assign ( Rep p,
const Rep q 
) const [inline, inherited]
Type_t& convert ( Type_t ,
const Rep  
) const [inherited]
XXX& convert ( XXX &  p,
const Rep  
) const [inherited]

Reimplemented in TruncDom< Domain >.

Vect<UU>& convert ( Vect< UU > &  ,
const Rep P 
) const [inherited]
Poly1Dom<Domain,Dense>::Type_t& convert ( typename Poly1Dom< Domain, Dense >::Type_t Val,
const typename Poly1Dom< Domain, Dense >::Rep P 
) const [inline, inherited]
XXX& convert ( XXX &  Val,
const typename Poly1Dom< Domain, Dense >::Rep P 
) const [inline, inherited]
Vect<UU>& convert ( Vect< UU > &  Val,
const typename Poly1Dom< Domain, Dense >::Rep P 
) const [inline, inherited]
int isZero ( const Rep P) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

int isOne ( const Rep P) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

int areEqual ( const Rep P,
const Rep Q 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

int areNEqual ( const Rep P,
const Rep Q 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Type_t & leadcoef ( Type_t c,
const Rep P 
) const [inline, inherited]

Reimplemented in FixedTruncDom< Domain >.

Poly1Dom< Domain, Dense >::Type_t & getEntry ( Type_t c,
const Degree i,
const Rep P 
) const [inline, inherited]

Reimplemented in FixedTruncDom< Domain >.

Degree & degree ( Degree d,
const Rep P 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Degree & val ( Degree d,
const Rep P 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & setdegree ( Rep P) const [inline, inherited]

Compute the degree of P.

Warning:
this is an infamous function that may not leave P constant !!
Parameters:
Ppolynomial

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Type_t & eval ( Type_t pval,
const Rep P,
const Type_t val 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & diff ( Rep P,
const Rep Q 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & reverse ( Rep P,
const Rep Q 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & reversein ( Rep P) const [inline, inherited]
std::istream & read ( std::istream &  i) [inherited]

Reimplemented in TruncDom< Domain >.

std::istream & read ( std::istream &  i,
Rep n 
) const [inherited]
std::ostream & write ( std::ostream &  o) const [inherited]
std::ostream & write ( std::ostream &  o,
const Rep n 
) const [inherited]
Poly1Dom< Domain, Dense >::Rep & addin ( Rep res,
const Rep u 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & add ( Rep res,
const Rep u,
const Rep v 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & add ( Rep res,
const Rep u,
const Type_t val 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & add ( Rep res,
const Type_t val,
const Rep v 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & subin ( Rep res,
const Rep u 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & sub ( Rep res,
const Rep u,
const Rep v 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & sub ( Rep res,
const Rep u,
const Type_t val 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & sub ( Rep res,
const Type_t val,
const Rep v 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & negin ( Rep res) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & neg ( Rep res,
const Rep u 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & mulin ( Rep q,
const Rep a 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & mulin ( Rep q,
const Type_t a 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & mul ( Rep q,
const Rep a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & mul ( Rep q,
const Type_t a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & mul ( Rep q,
const Rep a,
const Type_t b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & mul ( Rep R,
const Rep P,
const Rep Q,
const Degree Val,
const Degree deg 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & shiftin ( Rep R,
int  s 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & shift ( Rep R,
const Rep a,
int  s 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & divin ( Rep q,
const Rep a 
) const [inline, inherited]

Reimplemented in FixedTruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & divin ( Rep q,
const Type_t a 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & div ( Rep q,
const Rep a,
const Rep b 
) const [inline, inherited]

Reimplemented in FixedTruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & div ( Rep q,
const Type_t a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & div ( Rep q,
const Rep a,
const Type_t b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & modin ( Rep q,
const Rep a 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & modin ( Rep q,
const Type_t a 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & mod ( Rep q,
const Rep a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & mod ( Rep q,
const Type_t a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & mod ( Rep q,
const Rep a,
const Type_t b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & axpy ( Rep r,
const Rep a,
const Rep x,
const Rep y 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & axpy ( Rep r,
const Type_t a,
const Rep x,
const Rep y 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & axpyin ( Rep r,
const Rep a,
const Rep x 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & axpyin ( Rep r,
const Type_t a,
const Rep x 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & maxpy ( Rep r,
const Rep a,
const Rep b,
const Rep c 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & maxpy ( Rep r,
const Type_t a,
const Rep b,
const Rep c 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & maxpyin ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & maxpyin ( Rep r,
const Type_t a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & axmy ( Rep r,
const Rep a,
const Rep x,
const Rep y 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & axmy ( Rep r,
const Type_t a,
const Rep x,
const Rep y 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & axmyin ( Rep r,
const Rep a,
const Rep x 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & axmyin ( Rep r,
const Type_t a,
const Rep x 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & divmod ( Rep q,
Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & divmodin ( Rep q,
Rep r,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & pdivmod ( Rep q,
Rep r,
Type_t m,
const Rep a,
const Rep b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & pmod ( Rep r,
Type_t m,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& pmod ( Rep r,
const Rep a,
const Rep b 
) const [inherited]
Rep& pdiv ( Rep q,
Type_t m,
const Rep a,
const Rep b 
) const [inherited]
Rep& pdiv ( Rep q,
const Rep a,
const Rep b 
) const [inherited]
Poly1Dom< Domain, Dense >::Rep & gcd ( Rep D,
const Rep P,
const Rep Q 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & gcd ( Rep D,
Rep U,
Rep V,
const Rep P,
const Rep Q 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & lcm ( Rep D,
const Rep P,
const Rep Q 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & invmod ( Rep U,
const Rep P,
const Rep Q 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & invmodunit ( Rep U,
const Rep P,
const Rep Q 
) const [inline, inherited]
void ratrecon ( Rep N,
Rep D,
const Rep P,
const Rep M,
const Degree dk 
) const [inherited]
bool ratreconcheck ( Rep N,
Rep D,
const Rep P,
const Rep M,
const Degree dk 
) const [inherited]
Poly1Dom< Domain, Dense >::Rep & pow ( Rep W,
const Rep P,
long  n 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & powmod ( Rep W,
const Rep P,
IntegerDom::Element  pwr,
const Rep U 
) const [inline, inherited]
Rep& powmod ( Rep W,
const Rep P,
MyInt  pwr,
const Rep U 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & power_compose ( Rep W,
const Rep P,
long  b 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & cyclotomic ( Rep P,
long  n 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & random ( RandIter &  g,
Rep r 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & random ( RandIter &  g,
Rep r,
long  s 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Rep& random ( RandIter &  g,
Rep r,
Degree  s 
) const [inherited]
Poly1Dom< Domain, Dense >::Rep & random ( GivRandom g,
Rep r,
Degree  s 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & random ( RandIter &  g,
Rep r,
const Rep b 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom<Domain,Dense>::Rep& random ( RandIter &  g,
typename Poly1Dom< Domain, Dense >::Rep r,
Degree  d 
) const [inline, inherited]
Poly1Dom< Domain, Dense >::Rep & nonzerorandom ( RandIter &  g,
Rep r 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & nonzerorandom ( RandIter &  g,
Rep r,
long  s 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & nonzerorandom ( RandIter &  g,
Rep r,
Degree  s 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & nonzerorandom ( RandIter &  g,
Rep r,
const Rep b 
) const [inline, inherited]

Reimplemented in TruncDom< Domain >.

size_t & sqrfree ( size_t &  Nfact,
Rep Fact,
const Rep P 
) const [inherited]

Sqrfree decomposition.

Decompose P such that: P = Fact[0]^0 * Fact[1]^1 * ... * Fact[P.degree()]^(P.degree()), with Fact[0] the leading coefficient. The array Fact must be allocated before calling the function. The size of Fact must be degP+1 is all factors should be computed. For more readeable version of the algorithm, see Geddes, p342.

Parameters:
Nfact[in] the size of Fact
Fact[in] an array of dimension Nfact
Nfact[out] is the number of factor in the sqrfree decomposition
Fact[out] contains at most Nfact factors of the decomposition.
int operator== ( const IntegerDom ) const [inline, inherited]
int operator!= ( const IntegerDom ) const [inline, inherited]
Rep& init ( Rep a) const [inline, inherited]
Rep& init ( Rep a,
const Rep b 
) const [inline, inherited]
Rep& read ( Rep a,
const long  i 
) const [inline, inherited]
Rep& read ( Rep a,
const unsigned long  i 
) const [inline, inherited]
Rep& read ( Rep a,
const int  i 
) const [inline, inherited]
Rep& read ( Rep a,
const unsigned int  i 
) const [inline, inherited]
std::istream& read ( std::istream &  i) [inline, inherited]
std::istream& read ( std::istream &  i,
Rep n 
) const [inline, inherited]
Rep& convert ( Rep a,
const Rep b 
) const [inline, inherited]
XXX& convert ( XXX &  x,
const Rep a 
) const [inline, inherited]
Rep& assign ( Rep a,
const Rep b 
) const [inline, inherited]
const Rep& access ( const Rep a) const [inline, inherited]
Rep& mul ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& div ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& mod ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& add ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& sub ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& divmod ( Rep q,
Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& divexact ( Rep q,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& mulin ( Rep r,
const Rep a 
) const [inline, inherited]
Rep& divin ( Rep r,
const Rep a 
) const [inline, inherited]
Rep& modin ( Rep r,
const Rep a 
) const [inline, inherited]
Rep& addin ( Rep r,
const Rep a 
) const [inline, inherited]
Rep& subin ( Rep r,
const Rep a 
) const [inline, inherited]
Rep& axpy ( Rep r,
const Rep a,
const Rep b,
const Rep c 
) const [inline, inherited]
Rep& maxpy ( Rep r,
const Rep a,
const Rep b,
const Rep c 
) const [inline, inherited]
Rep& maxpyin ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& axmy ( Rep r,
const Rep a,
const Rep b,
const Rep c 
) const [inline, inherited]
Rep& axpyin ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& axmyin ( Rep r,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& neg ( Rep r,
const Rep a 
) const [inline, inherited]
Rep& negin ( Rep r) const [inline, inherited]
Rep& gcd ( Rep g,
Rep u,
Rep v,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& gcd ( Rep g,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& lcm ( Rep l,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& lcmin ( Rep l,
const Rep a 
) const [inline, inherited]
Rep& inv ( Rep u,
const Rep a,
const Rep b 
) const [inline, inherited]
Rep& invin ( Rep u,
const Rep b 
) const [inline, inherited]
Rep& pow ( Rep r,
const Rep n,
const long  l 
) const [inline, inherited]
Rep& pow ( Rep r,
const Rep n,
const unsigned long  l 
) const [inline, inherited]
Rep& pow ( Rep r,
const Rep n,
const int  l 
) const [inline, inherited]
Rep& pow ( Rep r,
const Rep n,
const unsigned int  l 
) const [inline, inherited]
Rep& sqrt ( Rep s,
const Rep n 
) const [inline, inherited]
Rep& sqrt ( Rep s,
Rep r,
const Rep n 
) const [inline, inherited]
long logp ( const Rep a,
const Rep p 
) const [inline, inherited]
Rep& powmod ( Rep r,
const Rep n,
const long  e,
const Rep m 
) const [inline, inherited]
Rep& powmod ( Rep r,
const Rep n,
const Rep e,
const Rep m 
) const [inline, inherited]
unsigned long length ( const Rep a) const [inline, inherited]
int sign ( const Rep a) const [inline, inherited]
bool isZero ( const Rep a) const [inline, inherited]
bool isOne ( const Rep a) const [inline, inherited]
bool areEqual ( const Rep a,
const Rep b 
) const [inline, inherited]
bool areNEqual ( const Rep a,
const Rep b 
) const [inline, inherited]
bool isgeq ( const Rep a,
const Rep b 
) const [inline, inherited]
bool isgeq ( const long  b,
const Rep a 
) const [inline, inherited]
bool isgeq ( const Rep a,
const long  b 
) const [inline, inherited]
bool isleq ( const Rep a,
const Rep b 
) const [inline, inherited]
bool isleq ( const long  b,
const Rep a 
) const [inline, inherited]
bool isleq ( const Rep a,
const long  b 
) const [inline, inherited]
bool isgt ( const Rep a,
const Rep b 
) const [inline, inherited]
bool isgt ( const long  b,
const Rep a 
) const [inline, inherited]
bool isgt ( const Rep a,
const long  b 
) const [inline, inherited]
bool islt ( const Rep a,
const Rep b 
) const [inline, inherited]
bool islt ( const long  b,
const Rep a 
) const [inline, inherited]
bool islt ( const Rep a,
const long  b 
) const [inline, inherited]
Rep& random ( RandIter &  ,
Rep r,
long  s = 1 
) const [inline, inherited]
Rep& random ( RandIter &  ,
Rep r,
const Rep b 
) const [inline, inherited]
Rep& nonzerorandom ( RandIter &  ,
Rep r,
long  s = 1 
) const [inline, inherited]
Rep& nonzerorandom ( RandIter &  ,
Rep r,
const Rep b 
) const [inline, inherited]
std::ostream& write ( std::ostream &  o) const [inline, inherited]
std::ostream& write ( std::ostream &  o,
const Rep n 
) const [inline, inherited]

Field Documentation

Domain _domain [protected, inherited]
Indeter _x [protected, inherited]
Rep zero [inherited]

Reimplemented in TruncDom< Domain >.

Rep one [inherited]

Reimplemented in TruncDom< Domain >.

const Integer one [inherited]
const Integer zero [inherited]

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