Givaro
|
#include <givpoly1padic.h>
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, Dense > | Self_t |
typedef givvector< Type_t > | Storage_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::Element & | eval (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 |
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 &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 |
Degree & | degree (Degree &d, const Rep &P) const |
Degree & | val (Degree &d, const Rep &P) const |
Rep & | setdegree (Rep &P) const |
Compute the degree of P. | |
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 & | 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 & | 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 Rep &a, const Rep &b) 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 &, const Rep &, const Rep &, const Degree &, const Degree &) 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. | |
int | operator== (const IntegerDom &) const |
int | operator!= (const IntegerDom &) const |
Rep & | init (Rep &a) const |
Rep & | init (Rep &a, const Rep &b) const |
Rep & | read (Rep &a, const long i) const |
Rep & | read (Rep &a, const unsigned long i) const |
Rep & | read (Rep &a, const int i) const |
Rep & | read (Rep &a, const unsigned int i) const |
std::istream & | read (std::istream &i) |
std::istream & | read (std::istream &i, Rep &n) const |
Rep & | convert (Rep &a, const Rep &b) const |
template<class XXX > | |
XXX & | convert (XXX &x, const Rep &a) const |
Rep & | assign (Rep &a, const Rep &b) const |
const Rep & | access (const Rep &a) const |
Rep & | mul (Rep &r, const Rep &a, const Rep &b) const |
Rep & | div (Rep &r, const Rep &a, const Rep &b) const |
Rep & | mod (Rep &r, const Rep &a, const Rep &b) const |
Rep & | add (Rep &r, const Rep &a, const Rep &b) const |
Rep & | sub (Rep &r, const Rep &a, const Rep &b) const |
Rep & | divmod (Rep &q, Rep &r, const Rep &a, const Rep &b) const |
Rep & | divexact (Rep &q, const Rep &a, const Rep &b) const |
Rep & | mulin (Rep &r, const Rep &a) const |
Rep & | divin (Rep &r, const Rep &a) const |
Rep & | modin (Rep &r, const Rep &a) const |
Rep & | addin (Rep &r, const Rep &a) const |
Rep & | subin (Rep &r, const Rep &a) const |
Rep & | axpy (Rep &r, const Rep &a, const Rep &b, const Rep &c) const |
Rep & | maxpy (Rep &r, const Rep &a, const Rep &b, const Rep &c) const |
Rep & | maxpyin (Rep &r, const Rep &a, const Rep &b) const |
Rep & | axmy (Rep &r, const Rep &a, const Rep &b, const Rep &c) const |
Rep & | axpyin (Rep &r, const Rep &a, const Rep &b) const |
Rep & | axmyin (Rep &r, const Rep &a, const Rep &b) const |
Rep & | neg (Rep &r, const Rep &a) const |
Rep & | negin (Rep &r) const |
Rep & | gcd (Rep &g, Rep &u, Rep &v, const Rep &a, const Rep &b) const |
Rep & | gcd (Rep &g, const Rep &a, const Rep &b) const |
Rep & | lcm (Rep &l, const Rep &a, const Rep &b) const |
Rep & | lcmin (Rep &l, const Rep &a) const |
Rep & | inv (Rep &u, const Rep &a, const Rep &b) const |
Rep & | invin (Rep &u, const Rep &b) const |
Rep & | pow (Rep &r, const Rep &n, const long l) const |
Rep & | pow (Rep &r, const Rep &n, const unsigned long l) const |
Rep & | pow (Rep &r, const Rep &n, const int l) const |
Rep & | pow (Rep &r, const Rep &n, const unsigned int l) const |
Rep & | sqrt (Rep &s, const Rep &n) const |
Rep & | sqrt (Rep &s, Rep &r, const Rep &n) const |
long | logp (const Rep &a, const Rep &p) const |
Rep & | powmod (Rep &r, const Rep &n, const long e, const Rep &m) const |
Rep & | powmod (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 > | |
Rep & | random (RandIter &, Rep &r, long s=1) const |
template<class RandIter > | |
Rep & | random (RandIter &, Rep &r, const Rep &b) const |
template<class RandIter > | |
Rep & | nonzerorandom (RandIter &, Rep &r, long s=1) const |
template<class RandIter > | |
Rep & | nonzerorandom (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 |
typedef Poly_t::Element Element |
Reimplemented from IntegerDom.
typedef Poly_t::Element pol_Element |
typedef IntegerDom::Element int_Element |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
typedef Domain::Element Type_t [inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Poly1PadicDom | ( | const Poly_t & | P | ) | [inline] |
Poly1PadicDom | ( | const Poly_t & | P, |
const IntegerDom & | D | ||
) | [inline] |
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] |
const Indeter& getIndeter | ( | ) | const [inline, inherited] |
const Domain& subdomain | ( | ) | const [inline, inherited] |
const Domain& getdomain | ( | ) | const [inline, inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Poly1Dom< Domain, Dense >::Rep & init | ( | Rep & | p, |
const Degree | deg, | ||
const XXX & | lcoeff | ||
) | const [inline, inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Poly1Dom< Domain, Dense >::Rep & assign | ( | Rep & | p, |
const Degree | deg, | ||
const Type_t & | lcoeff | ||
) | const [inline, inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Reimplemented in TruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >, FixedTruncDom< Domain >, TruncDom< Domain >, and TruncDom< Domain >.
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 >.
Reimplemented in TruncDom< Domain >.
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 >.
Reimplemented in TruncDom< Domain >.
Reimplemented in TruncDom< Domain >.
Compute the degree of P.
P
constant !! P | polynomial |
Reimplemented in TruncDom< Domain >.
Poly1Dom< Domain, Dense >::Type_t & eval | ( | Type_t & | pval, |
const Rep & | P, | ||
const Type_t & | val | ||
) | const [inline, inherited] |
std::istream & read | ( | std::istream & | i | ) | [inherited] |
Reimplemented in TruncDom< Domain >.
std::istream & read | ( | std::istream & | i, |
Rep & | n | ||
) | const [inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
std::ostream & write | ( | std::ostream & | o | ) | const [inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
std::ostream & write | ( | std::ostream & | o, |
const Rep & | n | ||
) | const [inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Poly1Dom< Domain, Dense >::Rep & add | ( | Rep & | res, |
const Rep & | u, | ||
const Rep & | v | ||
) | const [inline, inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Poly1Dom< Domain, Dense >::Rep & sub | ( | Rep & | res, |
const Rep & | u, | ||
const Rep & | v | ||
) | const [inline, inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in TruncDom< Domain >.
Reimplemented in TruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Poly1Dom< Domain, Dense >::Rep & mul | ( | Rep & | q, |
const Rep & | a, | ||
const Rep & | b | ||
) | const [inline, inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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 Rep & | a, | ||
const Rep & | x, | ||
const Rep & | y | ||
) | const [inline, inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
Reimplemented in TruncDom< Domain >.
Reimplemented in TruncDom< Domain >.
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
Poly1Dom< Domain, Dense >::Rep & random | ( | GivRandom & | g, |
Rep & | r, | ||
Degree | s | ||
) | const [inline, inherited] |
Reimplemented in FixedTruncDom< Domain >, and TruncDom< Domain >.
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] |
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 >.
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. |
int operator== | ( | const IntegerDom & | ) | const [inline, inherited] |
int operator!= | ( | const IntegerDom & | ) | const [inline, inherited] |
std::istream& read | ( | std::istream & | i | ) | [inline, inherited] |
std::istream& read | ( | std::istream & | i, |
Rep & | n | ||
) | const [inline, inherited] |
XXX& convert | ( | XXX & | x, |
const Rep & | a | ||
) | 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 isgeq | ( | const long | b, |
const Rep & | a | ||
) | const [inline, inherited] |
bool isgeq | ( | const Rep & | a, |
const long | 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 long | b, |
const Rep & | a | ||
) | const [inline, inherited] |
bool isgt | ( | const Rep & | a, |
const long | 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] |
std::ostream& write | ( | std::ostream & | o | ) | const [inline, inherited] |
std::ostream& write | ( | std::ostream & | o, |
const Rep & | n | ||
) | const [inline, inherited] |
Reimplemented in TruncDom< Domain >.
Reimplemented in TruncDom< Domain >.