Givaro
|
#include <givtruncdomain.h>
Public Types | |
typedef TruncDom< Domain > | Self_t |
typedef Poly1Dom< Domain, Dense > | Father_t |
typedef Domain | Domain_t |
typedef Domain::Element | Type_t |
typedef Father_t::Storage_t | Polynomial_t |
typedef std::pair < Polynomial_t, Degree > | Storage_t |
typedef Storage_t | Rep |
typedef Storage_t | Element |
typedef const Storage_t | constRep |
Public Member Functions | |
TruncDom (const Domain &d, const Indeter &X=Indeter()) | |
TruncDom (const Self_t &t) | |
TruncDom (const Father_t &t) | |
const Father_t & | getpoldomain () const |
Rep & | init (Rep &p) const |
template<class XXX > | |
Rep & | init (Rep &p, const XXX &cste) const |
template<class XXX > | |
Rep & | init (Rep &p, const Degree deg, const XXX &lcoeff) const |
Polynomial_t & | convert (Polynomial_t &r, const Rep &P) const |
template<class XXX > | |
XXX & | convert (XXX &r, const Rep &P) 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 |
Rep & | assign (Rep &p, const Polynomial_t &r) const |
Rep & | assign (Rep &p, const Polynomial_t &r, const Degree v, const Degree d) const |
Rep & | mulin (Rep &p, const Degree &s) const |
Rep & | divin (Rep &p, const Degree &s) const |
Rep & | setdegree (Rep &P) const |
Compute the degree of P. | |
Rep & | setval (Rep &P) const |
Degree & | degree (Degree &d, const Rep &P) const |
Degree & | val (Degree &d, const 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 |
Rep & | shift (Rep &p, const Degree &s) const |
Rep & | truncin (Rep &p, const Degree &v, const Degree &d) const |
Rep & | trunc (Rep &p, const Rep &R, const Degree &v, const Degree &d) const |
std::istream & | read (std::istream &i) |
std::ostream & | write (std::ostream &o) const |
std::istream & | read (std::istream &i, Rep &n) const |
std::ostream & | write (std::ostream &o, const Rep &n) const |
Rep & | expand (Rep &P, const Degree &d) const |
Rep & | addin (Rep &R, const Rep &P) const |
Rep & | add (Rep &res, const Rep &u, const Rep &v) const |
Rep & | addin (Rep &R, const Rep &P, const Degree &v, const Degree &d) const |
Rep & | add (Rep &res, const Rep &u, const Rep &v, const Degree &Val, const Degree °) const |
Rep & | neg (Rep &R, const Rep &P) const |
Rep & | negin (Rep &R) const |
Rep & | sub (Rep &res, const Rep &u, const Rep &v) const |
Rep & | subin (Rep &R, const Rep &P) const |
Rep & | sub (Rep &R, const Rep &P, const Rep &Q, const Degree &v, const Degree &d) const |
Rep & | subin (Rep &R, const Rep &P, const Degree &v, const Degree &d) const |
Rep & | mul (Rep &res, const Rep &u, const Rep &v) const |
Rep & | mulin (Rep &P, const Rep &Q) const |
Rep & | mul (Rep &r, const Rep &u, const Rep &v, const Degree &Val, const Degree °) const |
Rep & | mulin (Rep &r, const Rep &v, const Degree &Val, const Degree °) const |
Rep & | axpy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const |
Rep & | axpyin (Rep &r, const Rep &a, const Rep &x) const |
Rep & | axpy (Rep &r, const Rep &a, const Rep &x, const Rep &y, const Degree &Val, const Degree °) const |
Rep & | axpyin (Rep &r, const Rep &a, const Rep &x, const Degree &Val, const Degree °) const |
Rep & | axmy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const |
Rep & | axmyin (Rep &r, const Rep &a, const Rep &x) const |
Rep & | axmy (Rep &r, const Rep &a, const Rep &x, const Rep &y, const Degree &Val, const Degree °) const |
Rep & | axmyin (Rep &r, const Rep &a, const Rep &x, const Degree &Val, const Degree °) const |
Rep & | maxpy (Rep &r, const Rep &a, const Rep &x, const Rep &y) const |
Rep & | maxpyin (Rep &r, const Rep &a, const Rep &x) const |
Rep & | maxpy (Rep &r, const Rep &a, const Rep &x, const Rep &y, const Degree &Val, const Degree °) const |
Rep & | maxpyin (Rep &r, const Rep &a, const Rep &x, const Degree &Val, const Degree °) 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 > | |
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 |
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) |
Rep & | init (Rep &r, const Degree deg) const |
Type_t & | convert (Type_t &, 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 |
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 & | 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 |
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 & | sub (Rep &res, const Rep &u, const Type_t &val) const |
Rep & | sub (Rep &res, const Type_t &val, const Rep &v) 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 & | 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 Type_t &a, const Rep &x, const Rep &y) const |
Rep & | axpyin (Rep &r, const Type_t &a, const Rep &x) const |
Rep & | maxpy (Rep &r, const Type_t &a, const Rep &b, const Rep &c) const |
Rep & | maxpyin (Rep &r, const Type_t &a, const Rep &b) const |
Rep & | axmy (Rep &r, const Type_t &a, const Rep &x, const Rep &y) 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 > | |
Poly1Dom< Domain, Dense >::Rep & | random (RandIter &g, typename Poly1Dom< Domain, Dense >::Rep &r, Degree d) const |
size_t & | sqrfree (size_t &Nfact, Rep *Fact, const Rep &P) const |
Sqrfree decomposition. | |
Data Fields | |
Storage_t | zero |
Storage_t | one |
Protected Attributes | |
Domain | _domain |
Indeter | _x |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
typedef Domain::Element Type_t |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in NewtonInterpGeomMultip< Domain, REDUCE >, NewtonInterpGeom< Domain, REDUCE >, and FixedTruncDom< Domain >.
typedef Father_t::Storage_t Polynomial_t |
Reimplemented in FixedTruncDom< Domain >.
typedef std::pair<Polynomial_t, Degree> Storage_t |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in NewtonInterpGeomMultip< Domain, REDUCE >, NewtonInterpGeom< Domain, REDUCE >, and FixedTruncDom< Domain >.
const Father_t& getpoldomain | ( | ) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Polynomial_t& convert | ( | Polynomial_t & | r, |
const Rep & | P | ||
) | const [inline] |
XXX& convert | ( | XXX & | r, |
const Rep & | P | ||
) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >, and FixedTruncDom< Domain >.
Rep& assign | ( | Rep & | p, |
const Polynomial_t & | r | ||
) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >, and FixedTruncDom< Domain >.
Rep& assign | ( | Rep & | p, |
const Polynomial_t & | r, | ||
const Degree | v, | ||
const Degree | d | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >.
Compute the degree of P.
P
constant !! P | polynomial |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
int isZero | ( | const Rep & | P | ) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
int isOne | ( | const Rep & | P | ) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >.
std::istream& read | ( | std::istream & | i | ) | [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
std::ostream& write | ( | std::ostream & | o | ) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
std::istream& read | ( | std::istream & | i, |
Rep & | n | ||
) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
std::ostream& write | ( | std::ostream & | o, |
const Rep & | n | ||
) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
TruncDom< Domain >::Rep & addin | ( | Rep & | R, |
const Rep & | P, | ||
const Degree & | v, | ||
const Degree & | d | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Rep& add | ( | Rep & | res, |
const Rep & | u, | ||
const Rep & | v, | ||
const Degree & | Val, | ||
const Degree & | deg | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Rep& sub | ( | Rep & | R, |
const Rep & | P, | ||
const Rep & | Q, | ||
const Degree & | v, | ||
const Degree & | d | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
TruncDom< Domain >::Rep & mul | ( | Rep & | r, |
const Rep & | u, | ||
const Rep & | v, | ||
const Degree & | Val, | ||
const Degree & | deg | ||
) | const [inline] |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Rep& axpy | ( | Rep & | r, |
const Rep & | a, | ||
const Rep & | x, | ||
const Rep & | y, | ||
const Degree & | Val, | ||
const Degree & | deg | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Rep& axpyin | ( | Rep & | r, |
const Rep & | a, | ||
const Rep & | x, | ||
const Degree & | Val, | ||
const Degree & | deg | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Rep& axmy | ( | Rep & | r, |
const Rep & | a, | ||
const Rep & | x, | ||
const Rep & | y, | ||
const Degree & | Val, | ||
const Degree & | deg | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Rep& axmyin | ( | Rep & | r, |
const Rep & | a, | ||
const Rep & | x, | ||
const Degree & | Val, | ||
const Degree & | deg | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Rep& maxpy | ( | Rep & | r, |
const Rep & | a, | ||
const Rep & | x, | ||
const Rep & | y, | ||
const Degree & | Val, | ||
const Degree & | deg | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Rep& maxpyin | ( | Rep & | r, |
const Rep & | a, | ||
const Rep & | x, | ||
const Degree & | Val, | ||
const Degree & | deg | ||
) | const [inline] |
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented in FixedTruncDom< Domain >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.
Type_t characteristic | ( | ) | const [inline, inherited] |
const Indeter& getIndeter | ( | ) | const [inline, inherited] |
const Domain& subdomain | ( | ) | const [inline, inherited] |
const Domain& getdomain | ( | ) | const [inline, inherited] |
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] |
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 >.
Poly1Dom< Domain, Dense >::Type_t & eval | ( | Type_t & | pval, |
const Rep & | P, | ||
const Type_t & | val | ||
) | 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 & 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 & 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] |
Reimplemented in FixedTruncDom< Domain >.
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 & 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 Type_t & | a, | ||
const Rep & | x, | ||
const Rep & | y | ||
) | 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 Type_t & | a, | ||
const Rep & | b, | ||
const Rep & | c | ||
) | 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 Type_t & | a, | ||
const Rep & | x, | ||
const Rep & | y | ||
) | 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] |
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 & powmod | ( | Rep & | W, |
const Rep & | P, | ||
IntegerDom::Element | 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& random | ( | RandIter & | g, |
typename Poly1Dom< Domain, Dense >::Rep & | r, | ||
Degree | d | ||
) | const [inline, 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.
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. |
Reimplemented from Poly1Dom< Domain, Dense >.
Reimplemented from Poly1Dom< Domain, Dense >.