Givaro
Public Types | Public Member Functions | Data Fields | Protected Types | Protected Member Functions | Protected Attributes
Interpolation< Domain, REDUCE > Struct Template Reference

Interpolation. More...

#include <givinterp.h>

+ Inheritance diagram for Interpolation< Domain, REDUCE >:
+ Collaboration diagram for Interpolation< Domain, REDUCE >:

Public Types

typedef std::vector< typename
Domain::Element > 
Vect_t
typedef Poly1Dom< Domain,
Dense >::Element 
Element
typedef Domain Domain_t
typedef Domain::Element Type_t
typedef Poly1Dom< Domain, Dense > Self_t
typedef givvector< Type_t > Storage_t
typedef Storage_t Rep
typedef const Storage_t constRep

Public Member Functions

 Interpolation (const Domain &d, const Indeter &X=Indeter())
void operator() (const typename Domain::Element &x, const typename Domain::Element &f)
Element & interpolator ()
Type_t characteristic () const
Integer & characteristic (Integer &p) const
int operator== (const Poly1Dom< Domain, Dense > &BC) const
int operator!= (const Poly1Dom< Domain, Dense > &BC) const
const Indeter & getIndeter () const
Indeter & setIndeter (const Indeter &X)
const Domain & subdomain () const
const Domain & getdomain () const
Domain & setdomain (const Domain &D)
const Domain & subDomain () const
const Domain & getDomain () const
Domain & setDomain (const Domain &D)
Rep & init (Rep &a) const
template<class XXX >
Rep & init (Rep &p, const XXX &cste) const
Rep & init (Rep &r, const Degree deg) const
template<class XXX >
Rep & init (Rep &p, const Degree deg, const XXX &lcoeff) const
Rep & assign (Rep &p, const Degree deg, const Type_t &lcoeff) const
Rep & assign (Rep &p, const Type_t &cste) const
Rep & assign (Rep &p, const Rep &q) const
Type_t & convert (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_t & convert (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_t & leadcoef (Type_t &c, const Rep &P) const
Type_t & getEntry (Type_t &c, const Degree &i, const Rep &P) const
Type_t setEntry (Rep &P, const Type_t &c, const Degree &i) const
Degree & degree (Degree &d, const Rep &P) const
Degree degree (const Rep &P) const
Degree & val (Degree &d, const Rep &P) const
Rep & setdegree (Rep &P) const
 Compute the degree of P.
Rep & setDegree (Rep &P) const
Type_t & eval (Type_t &pval, const Rep &P, const Type_t &val) const
Rep & diff (Rep &P, const Rep &Q) const
Rep & reverse (Rep &, const Rep &) const
Rep & reversein (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
Rep & addin (Rep &res, const Rep &u) const
Rep & addin (Rep &res, const Type_t &val) const
Rep & add (Rep &res, const Rep &u, const Rep &v) const
Rep & add (Rep &res, const Rep &u, const Type_t &val) const
Rep & add (Rep &res, const Type_t &val, const Rep &v) const
Rep & subin (Rep &res, const Rep &u) const
Rep & subin (Rep &res, const Type_t &val) const
Rep & sub (Rep &res, const Rep &u, const Rep &v) const
Rep & sub (Rep &res, const Rep &u, const Type_t &val) const
Rep & sub (Rep &res, const Type_t &val, const Rep &v) const
Rep & negin (Rep &res) const
Rep & neg (Rep &res, const Rep &u) const
Rep & mulin (Rep &q, const Rep &a) const
Rep & mulin (Rep &q, const Type_t &a) const
Rep & mul (Rep &q, const Type_t &a, const Rep &b) const
Rep & mul (Rep &q, const Rep &a, const Type_t &b) const
Rep & mul (Rep &q, const Rep &a, const Rep &b) const
Rep & mul (Rep &, const Rep &, const Rep &, const Degree &, const Degree &) const
Rep & stdmul (Rep &R, const Rep &P, const Rep &Q) const
Rep & karamul (Rep &R, const Rep &P, const Rep &Q) const
Rep & sqr (Rep &q, const Rep &a) const
Rep & shiftin (Rep &, int) const
Rep & shift (Rep &, const Rep &, int) const
Rep & divin (Rep &q, const Rep &a) const
Rep & divin (Rep &q, const Type_t &a) const
Rep & div (Rep &q, const Rep &a, const Rep &b) const
Rep & div (Rep &q, const Type_t &a, const Rep &b) const
Rep & div (Rep &q, const Rep &a, const Type_t &b) const
Rep & modin (Rep &q, const Rep &a) const
Rep & modin (Rep &q, const Type_t &a) const
Rep & mod (Rep &q, const Rep &a, const Rep &b) const
Rep & mod (Rep &q, const Type_t &a, const Rep &b) const
Rep & mod (Rep &q, const Rep &a, const Type_t &b) const
Rep & axpy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
Rep & axpy (Rep &r, const Type_t &a, const Rep &x, const Rep &y) const
Rep & axpyin (Rep &r, const Rep &a, const Rep &x) const
Rep & axpyin (Rep &r, const Type_t &a, const Rep &x) const
Rep & maxpy (Rep &r, const Rep &a, const Rep &b, const Rep &c) const
Rep & maxpy (Rep &r, const Type_t &a, const Rep &b, const Rep &c) const
Rep & maxpyin (Rep &r, const Rep &a, const Rep &b) const
Rep & maxpyin (Rep &r, const Type_t &a, const Rep &b) const
Rep & axmy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const
Rep & axmy (Rep &r, const Type_t &a, const Rep &x, const Rep &y) const
Rep & axmyin (Rep &r, const Rep &a, const Rep &x) const
Rep & axmyin (Rep &r, const Type_t &a, const Rep &x) const
Rep & divmod (Rep &q, Rep &r, const Rep &a, const Rep &b) const
Rep & divmodin (Rep &q, Rep &r, const Rep &b) const
Rep & pdivmod (Rep &q, Rep &r, Type_t &m, const Rep &a, const Rep &b) const
Rep & pmod (Rep &r, Type_t &m, const Rep &a, const Rep &b) const
Rep & pmod (Rep &r, const Rep &a, const Rep &b) const
Rep & pdiv (Rep &q, Type_t &m, const Rep &a, const Rep &b) const
Rep & pdiv (Rep &q, const Rep &a, const Rep &b) const
Rep & gcd (Rep &D, const Rep &P, const Rep &Q) const
Rep & gcd (Rep &D, Rep &U, Rep &V, const Rep &P, const Rep &Q) const
Rep & lcm (Rep &D, const Rep &P, const Rep &Q) const
Rep & invmod (Rep &U, const Rep &P, const Rep &Q) const
Rep & invmodunit (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
Rep & pow (Rep &W, const Rep &P, long n) const
Rep & powmod (Rep &W, const Rep &P, IntegerDom::Element pwr, const Rep &U) const
template<class MyInt >
Rep & powmod (Rep &W, const Rep &P, MyInt pwr, const Rep &U) const
Rep & power_compose (Rep &W, const Rep &P, long b) const
Rep & cyclotomic (Rep &P, long n) const
template<class RandIter >
Rep & random (RandIter &g, Rep &r) const
template<class RandIter >
Rep & random (RandIter &g, Rep &r, long s) const
template<class RandIter >
Rep & random (RandIter &g, Rep &r, Degree s) const
Rep & random (GivRandom &g, Rep &r, Degree s) const
template<class RandIter >
Rep & random (RandIter &g, Rep &r, const Rep &b) const
template<class RandIter >
Poly1Dom< Domain, Dense >::Rep & random (RandIter &g, typename Poly1Dom< Domain, Dense >::Rep &r, Degree d) const
template<class RandIter >
Rep & nonzerorandom (RandIter &g, Rep &r) const
template<class RandIter >
Rep & nonzerorandom (RandIter &g, Rep &r, long s) const
template<class RandIter >
Rep & nonzerorandom (RandIter &g, Rep &r, Degree s) const
template<class RandIter >
Rep & nonzerorandom (RandIter &g, Rep &r, const Rep &b) const
size_t & sqrfree (size_t &Nfact, Rep *Fact, const Rep &P) const
 Sqrfree decomposition.

Data Fields

Rep zero
Rep one
Rep mOne

Protected Types

typedef Rep::iterator RepIterator
typedef Rep::const_iterator RepConstIterator

Protected Member Functions

Rep & subin (Rep &R, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend) const
Rep & subin (Rep &R, const RepIterator Rbeg, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend) const
Rep & subin (Rep &R, const RepIterator Rbeg, const RepIterator Rend, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend) const
Rep & mul (Rep &R, const RepIterator Rbeg, const RepIterator Rend, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend, const Rep &Q, const RepConstIterator Qbeg, const RepConstIterator Qend) const
Rep & stdmul (Rep &R, const RepIterator Rbeg, const RepIterator Rend, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend, const Rep &Q, const RepConstIterator Qbeg, const RepConstIterator Qend) const
Rep & karamul (Rep &R, const RepIterator Rbeg, const RepIterator Rend, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend, const Rep &Q, const RepConstIterator Qbeg, const RepConstIterator Qend) const
Rep & sqr (Rep &R, const RepIterator Rbeg, const RepIterator Rend, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend) const
Rep & stdsqr (Rep &R, const RepIterator Rbeg, const RepIterator Rend, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend, const Type_t &two) const
Rep & sqrrec (Rep &R, const RepIterator Rbeg, const RepIterator Rend, const Rep &P, const RepConstIterator Pbeg, const RepConstIterator Pend, const Type_t &two) const

Protected Attributes

Domain _domain
Indeter _x

Detailed Description

template<class Domain, bool REDUCE = true>
struct Givaro::Interpolation< Domain, REDUCE >

Interpolation.

Examples:
examples/Polynomial/interpolate.C.

Member Typedef Documentation

typedef std::vector< typename Domain::Element > Vect_t

Reimplemented from Poly1Dom< Domain, Dense >.

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 Storage_t Rep
inherited
typedef const Storage_t constRep
inherited
typedef Rep::iterator RepIterator
protectedinherited
typedef Rep::const_iterator RepConstIterator
protectedinherited

Constructor & Destructor Documentation

Interpolation ( const Domain &  d,
const Indeter &  X = Indeter() 
)
inline

Member Function Documentation

void operator() ( const typename Domain::Element &  x,
const typename Domain::Element &  f 
)
inline
Element& interpolator ( )
inline
Type_t characteristic ( ) const
inlineinherited
Integer& characteristic ( Integer &  p) const
inlineinherited
int operator== ( const Poly1Dom< Domain, Dense > &  BC) const
inlineinherited
int operator!= ( const Poly1Dom< Domain, Dense > &  BC) const
inlineinherited
const Indeter& getIndeter ( ) const
inlineinherited
Indeter& setIndeter ( const Indeter &  X)
inlineinherited
const Domain& subdomain ( ) const
inlineinherited
const Domain& getdomain ( ) const
inlineinherited
Domain& setdomain ( const Domain &  D)
inlineinherited
const Domain& subDomain ( ) const
inlineinherited
const Domain& getDomain ( ) const
inlineinherited
Domain& setDomain ( const Domain &  D)
inlineinherited
Poly1Dom< Domain, Dense >::Rep & init ( Rep &  a) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & init ( Rep &  p,
const XXX &  cste 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & init ( Rep &  r,
const Degree  deg 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & init ( Rep &  p,
const Degree  deg,
const XXX &  lcoeff 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & assign ( Rep &  p,
const Degree  deg,
const Type_t &  lcoeff 
) const
inlineinherited
Rep& assign ( Rep &  p,
const Type_t &  cste 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & assign ( Rep &  p,
const Rep &  q 
) const
inlineinherited
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
inlineinherited
XXX& convert ( XXX &  Val,
const typename Poly1Dom< Domain, Dense >::Rep &  P 
) const
inlineinherited
Vect<UU>& convert ( Vect< UU > &  Val,
const typename Poly1Dom< Domain, Dense >::Rep &  P 
) const
inlineinherited
int isZero ( const Rep &  P) const
inlineinherited

Reimplemented in TruncDom< Domain >.

int isOne ( const Rep &  P) const
inlineinherited

Reimplemented in TruncDom< Domain >.

int areEqual ( const Rep &  P,
const Rep &  Q 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

int areNEqual ( const Rep &  P,
const Rep &  Q 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Type_t & leadcoef ( Type_t &  c,
const Rep &  P 
) const
inlineinherited

Reimplemented in FixedTruncDom< Domain >.

Poly1Dom< Domain, Dense >::Type_t & getEntry ( Type_t &  c,
const Degree &  i,
const Rep &  P 
) const
inlineinherited

Reimplemented in FixedTruncDom< Domain >.

Poly1Dom< Domain, Dense >::Type_t setEntry ( Rep &  P,
const Type_t &  c,
const Degree &  i 
) const
inlineinherited
Degree & degree ( Degree &  d,
const Rep &  P 
) const
inlineinherited
Degree degree ( const Rep &  P) const
inlineinherited
Degree & val ( Degree &  d,
const Rep &  P 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & setdegree ( Rep &  P) const
inlineinherited

Compute the degree of P.

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

Reimplemented in TruncDom< Domain >.

Rep& setDegree ( Rep &  P) const
inlineinherited
Poly1Dom< Domain, Dense >::Type_t & eval ( Type_t &  pval,
const Rep &  P,
const Type_t &  val 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & diff ( Rep &  P,
const Rep &  Q 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & reverse ( Rep &  P,
const Rep &  Q 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & reversein ( Rep &  P) const
inlineinherited
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
inlineinherited
Poly1Dom< Domain, Dense >::Rep & addin ( Rep &  res,
const Type_t &  val 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & add ( Rep &  res,
const Rep &  u,
const Rep &  v 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & add ( Rep &  res,
const Rep &  u,
const Type_t &  val 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & add ( Rep &  res,
const Type_t &  val,
const Rep &  v 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & subin ( Rep &  res,
const Rep &  u 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & subin ( Rep &  res,
const Type_t &  val 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & subin ( Rep &  R,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend 
) const
inlineprotectedinherited
Poly1Dom< Domain, Dense >::Rep & subin ( Rep &  R,
const RepIterator  Rbeg,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend 
) const
inlineprotectedinherited
Poly1Dom< Domain, Dense >::Rep & subin ( Rep &  R,
const RepIterator  Rbeg,
const RepIterator  Rend,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend 
) const
inlineprotectedinherited
Poly1Dom< Domain, Dense >::Rep & sub ( Rep &  res,
const Rep &  u,
const Rep &  v 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & sub ( Rep &  res,
const Rep &  u,
const Type_t &  val 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & sub ( Rep &  res,
const Type_t &  val,
const Rep &  v 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & negin ( Rep &  res) const
inlineinherited

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & neg ( Rep &  res,
const Rep &  u 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & mulin ( Rep &  q,
const Rep &  a 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mulin ( Rep &  q,
const Type_t &  a 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mul ( Rep &  q,
const Type_t &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mul ( Rep &  q,
const Rep &  a,
const Type_t &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mul ( Rep &  q,
const Rep &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mul ( Rep &  R,
const Rep &  P,
const Rep &  Q,
const Degree &  Val,
const Degree &  deg 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mul ( Rep &  R,
const RepIterator  Rbeg,
const RepIterator  Rend,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend,
const Rep &  Q,
const RepConstIterator  Qbeg,
const RepConstIterator  Qend 
) const
inlineprotectedinherited
Poly1Dom< Domain, Dense >::Rep & stdmul ( Rep &  R,
const Rep &  P,
const Rep &  Q 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & stdmul ( Rep &  R,
const RepIterator  Rbeg,
const RepIterator  Rend,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend,
const Rep &  Q,
const RepConstIterator  Qbeg,
const RepConstIterator  Qend 
) const
inlineprotectedinherited
Poly1Dom< Domain, Dense >::Rep & karamul ( Rep &  R,
const Rep &  P,
const Rep &  Q 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & karamul ( Rep &  R,
const RepIterator  Rbeg,
const RepIterator  Rend,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend,
const Rep &  Q,
const RepConstIterator  Qbeg,
const RepConstIterator  Qend 
) const
inlineprotectedinherited
Poly1Dom< Domain, Dense >::Rep & sqr ( Rep &  q,
const Rep &  a 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & sqr ( Rep &  R,
const RepIterator  Rbeg,
const RepIterator  Rend,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend 
) const
inlineprotectedinherited
Poly1Dom< Domain, Dense >::Rep & shiftin ( Rep &  R,
int  s 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & shift ( Rep &  R,
const Rep &  a,
int  s 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & divin ( Rep &  q,
const Rep &  a 
) const
inlineinherited

Reimplemented in FixedTruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & divin ( Rep &  q,
const Type_t &  a 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & div ( Rep &  q,
const Rep &  a,
const Rep &  b 
) const
inlineinherited

Reimplemented in FixedTruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & div ( Rep &  q,
const Type_t &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & div ( Rep &  q,
const Rep &  a,
const Type_t &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & modin ( Rep &  q,
const Rep &  a 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & modin ( Rep &  q,
const Type_t &  a 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mod ( Rep &  q,
const Rep &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mod ( Rep &  q,
const Type_t &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & mod ( Rep &  q,
const Rep &  a,
const Type_t &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & axpy ( Rep &  r,
const Rep &  a,
const Rep &  x,
const Rep &  y 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & axpy ( Rep &  r,
const Type_t &  a,
const Rep &  x,
const Rep &  y 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & axpyin ( Rep &  r,
const Rep &  a,
const Rep &  x 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & axpyin ( Rep &  r,
const Type_t &  a,
const Rep &  x 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & maxpy ( Rep &  r,
const Rep &  a,
const Rep &  b,
const Rep &  c 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & maxpy ( Rep &  r,
const Type_t &  a,
const Rep &  b,
const Rep &  c 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & maxpyin ( Rep &  r,
const Rep &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & maxpyin ( Rep &  r,
const Type_t &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & axmy ( Rep &  r,
const Rep &  a,
const Rep &  x,
const Rep &  y 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & axmy ( Rep &  r,
const Type_t &  a,
const Rep &  x,
const Rep &  y 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & axmyin ( Rep &  r,
const Rep &  a,
const Rep &  x 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & axmyin ( Rep &  r,
const Type_t &  a,
const Rep &  x 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & divmod ( Rep &  q,
Rep &  r,
const Rep &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & divmodin ( Rep &  q,
Rep &  r,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & pdivmod ( Rep &  q,
Rep &  r,
Type_t &  m,
const Rep &  a,
const Rep &  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & pmod ( Rep &  r,
Type_t &  m,
const Rep &  a,
const Rep &  b 
) const
inlineinherited
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
inlineinherited
Poly1Dom< Domain, Dense >::Rep & gcd ( Rep &  D,
Rep &  U,
Rep &  V,
const Rep &  P,
const Rep &  Q 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & lcm ( Rep &  D,
const Rep &  P,
const Rep &  Q 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & invmod ( Rep &  U,
const Rep &  P,
const Rep &  Q 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & invmodunit ( Rep &  U,
const Rep &  P,
const Rep &  Q 
) const
inlineinherited
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
inlineinherited
Poly1Dom< Domain, Dense >::Rep & powmod ( Rep &  W,
const Rep &  P,
IntegerDom::Element  pwr,
const Rep &  U 
) const
inlineinherited
Rep& powmod ( Rep &  W,
const Rep &  P,
MyInt  pwr,
const Rep &  U 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & power_compose ( Rep &  W,
const Rep &  P,
long  b 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & cyclotomic ( Rep &  P,
long  n 
) const
inlineinherited
Poly1Dom< Domain, Dense >::Rep & random ( RandIter &  g,
Rep &  r 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & random ( RandIter &  g,
Rep &  r,
long  s 
) const
inlineinherited

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
inlineinherited
Poly1Dom< Domain, Dense >::Rep & random ( RandIter &  g,
Rep &  r,
const Rep &  b 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

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

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & nonzerorandom ( RandIter &  g,
Rep &  r,
long  s 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & nonzerorandom ( RandIter &  g,
Rep &  r,
Degree  s 
) const
inlineinherited

Reimplemented in TruncDom< Domain >.

Poly1Dom< Domain, Dense >::Rep & nonzerorandom ( RandIter &  g,
Rep &  r,
const Rep &  b 
) const
inlineinherited

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.
Prep.
Poly1Dom< Domain, Dense >::Rep & stdsqr ( Rep &  R,
const RepIterator  Rbeg,
const RepIterator  Rend,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend,
const Type_t &  two 
) const
inlineprotectedinherited
Poly1Dom< Domain, Dense >::Rep & sqrrec ( Rep &  R,
const RepIterator  Rbeg,
const RepIterator  Rend,
const Rep &  P,
const RepConstIterator  Pbeg,
const RepConstIterator  Pend,
const Type_t &  two 
) const
inlineprotectedinherited

Field Documentation

Domain _domain
protectedinherited
Indeter _x
protectedinherited
Rep zero
inherited

Reimplemented in TruncDom< Domain >.

Rep one
inherited

Reimplemented in TruncDom< Domain >.

Rep mOne
inherited

Reimplemented in TruncDom< Domain >.


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