Givaro
|
#include <givgfqext.h>
Public Types | |
typedef GFqExtFast< TT > | Self_t |
typedef Rep | Element |
typedef UTT | Residu_t |
typedef Rep * | Array |
typedef const Rep * | constArray |
typedef GIV_randIter < GFqExtFast< TT >, Rep > | RandIter |
typedef GIV_randIter< GFqDom < TT >, Rep > | randIter |
Public Member Functions | |
GFqExtFast () | |
GFqExtFast (const UTT P, const UTT e) | |
virtual | ~GFqExtFast () |
Self_t | operator= (const Self_t &F) |
GFqExtFast (const GFqDom< TT > &F) | |
UTT | bits () const |
UTT | base () const |
UTT | mask () const |
UTT | maxdot () const |
UTT & | characteristic (UTT &a) const |
UTT | characteristic () const |
Rep & | init (Rep &r, const unsigned long l) const |
virtual double & | convert (double &d, const Rep a) const |
virtual float & | convert (float &d, const Rep a) const |
virtual Rep & | init (Rep &pad, const double d) const |
virtual Rep & | init (Rep &pad, const float d) const |
UTT | residu () const |
Integer & | characteristic (Integer &p) const |
UTT | cardinality () const |
UTT | size () const |
UTT | exponent () const |
Rep & | generator (Rep &) const |
UTT | generator () const |
UTT | sage_generator () const |
UTT | irreducible () const |
Rep & | init (Rep &) const |
Rep & | init (Rep &, const int) const |
Rep & | init (Rep &, const unsigned int) const |
Rep & | init (Rep &, const long) const |
Rep & | init (Rep &, const Integer) const |
Rep & | init (Rep &, const long long) const |
Rep & | init (Rep &, const unsigned long long) const |
Rep & | init (Rep &a, std::istream &s) const |
template<typename val_t , template< class, class > class Vector, template< class > class Alloc> | |
Rep & | init (Rep &, const Vector< val_t, Alloc< val_t > > &) |
Rep & | assign (Rep &, const Integer) const |
Rep & | assign (Rep &, const Rep) const |
void | assign (const size_t sz, Array r, constArray a) const |
std::istream & | read (std::istream &s) |
std::istream & | read (std::istream &s, Rep &a) const |
std::ostream & | write (std::ostream &s) const |
std::ostream & | write (std::ostream &s, const Rep a) const |
std::ostream & | convert (std::ostream &s, const Rep a) const |
TT | convert (const Rep) const |
long & | convert (long &, const Rep) const |
unsigned long & | convert (unsigned long &, const Rep) const |
int & | convert (int &, const Rep) const |
unsigned int & | convert (unsigned int &, const Rep) const |
Integer & | convert (Integer &, const Rep) const |
long long & | convert (long long &, const Rep) const |
unsigned long long & | convert (unsigned long long &, const Rep) const |
int | operator== (const GFqDom< TT > &a) const |
int | operator!= (const GFqDom< TT > &a) const |
bool | areEqual (const Rep &, const Rep &) const |
bool | areNEqual (const Rep, const Rep) const |
bool | isZero (const Rep) const |
bool | isnzero (const Rep) const |
bool | isOne (const Rep) const |
bool | isunit (const Rep) const |
size_t | length (const Rep) const |
Rep & | mul (Rep &r, const Rep a, const Rep b) const |
void | mul (const size_t sz, Array r, constArray a, constArray b) const |
void | mul (const size_t sz, Array r, constArray a, Rep b) const |
Rep & | div (Rep &r, const Rep a, const Rep b) const |
void | div (const size_t sz, Array r, constArray a, constArray b) const |
void | div (const size_t sz, Array r, constArray a, Rep b) const |
Rep & | add (Rep &r, const Rep a, const Rep b) const |
void | add (const size_t sz, Array r, constArray a, constArray b) const |
void | add (const size_t sz, Array r, constArray a, Rep b) const |
Rep & | sub (Rep &r, const Rep a, const Rep b) const |
void | sub (const size_t sz, Array r, constArray a, constArray b) const |
void | sub (const size_t sz, Array r, constArray a, Rep b) const |
Rep & | neg (Rep &r, const Rep a) const |
void | neg (const size_t sz, Array r, constArray a) const |
Rep & | inv (Rep &r, const Rep a) const |
void | inv (const size_t sz, Array r, constArray a) const |
Rep & | mulin (Rep &r, const Rep a) const |
Rep & | divin (Rep &r, const Rep a) const |
Rep & | addin (Rep &r, const Rep a) const |
Rep & | subin (Rep &r, const Rep a) const |
Rep & | negin (Rep &r) const |
Rep & | invin (Rep &r) const |
Rep & | axpy (Rep &r, const Rep a, const Rep b, const Rep c) const |
void | axpy (const size_t sz, Array r, Rep a, constArray x, constArray y) const |
void | axpy (const size_t sz, Array r, Rep a, constArray x, Rep c) const |
Rep & | axpyin (Rep &r, const Rep a, const Rep b) const |
void | axpyin (const size_t sz, Array r, Rep a, constArray x) const |
Rep & | axmy (Rep &r, const Rep a, const Rep b, const Rep c) const |
void | axmy (const size_t sz, Array r, Rep a, constArray x, constArray y) const |
void | axmy (const size_t sz, Array r, Rep a, constArray x, Rep c) const |
Rep & | maxpy (Rep &r, const Rep a, const Rep b, const Rep c) const |
Rep & | axmyin (Rep &r, const Rep a, const Rep b) const |
Rep & | maxpyin (Rep &r, const Rep a, const Rep b) const |
void | maxpyin (const size_t sz, Array r, Rep a, constArray x) const |
void | reduceadd (Rep &r, const size_t sz, constArray a) const |
void | reducemul (Rep &r, const size_t sz, constArray a) const |
Rep & | dotprod (Rep &r, const size_t sz, constArray a, constArray b) 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, 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, const Rep &b) const |
Static Public Member Functions | |
static void | Init () |
static void | End () |
Data Fields | |
const bool | balanced |
Rep | zero |
Rep | one |
Protected Types | |
typedef Signed_Trait< TT > ::unsigned_type | UTT |
typedef TT | Rep |
typedef GFqDom< TT > | Father_t |
Protected Member Functions | |
void | builddoubletables () |
Protected Attributes | |
UTT | _BITS |
UTT | _BASE |
UTT | _MASK |
UTT | _maxn |
UTT | _degree |
UTT | _pceil |
UTT | _MODOUT |
std::vector< double > | _log2dbl |
std::vector< UTT > | _high2log |
std::vector< UTT > | _low2log |
UTT | _characteristic |
UTT | _exponent |
UTT | _irred |
UTT | _q |
UTT | _qm1 |
UTT | _qm1o2 |
std::vector< UTT > | _log2pol |
std::vector< UTT > | _pol2log |
std::vector< TT > | _plus1 |
double | _dcharacteristic |
typedef Signed_Trait<TT>::unsigned_type UTT [protected] |
Reimplemented from GFqDom< TT >.
Reimplemented in GFqExt< TT >.
typedef TT Rep [protected] |
Reimplemented from GFqDom< TT >.
Reimplemented in GFqExt< TT >.
Reimplemented in GFqExt< TT >.
typedef GFqExtFast<TT> Self_t |
Reimplemented from GFqDom< TT >.
Reimplemented in GFqExt< TT >.
Reimplemented from GFqDom< TT >.
Reimplemented in GFqExt< TT >.
Reimplemented from GFqDom< TT >.
Reimplemented in GFqExt< TT >.
Reimplemented from GFqDom< TT >.
Reimplemented in GFqExt< TT >.
typedef const Rep* constArray |
Reimplemented from GFqDom< TT >.
Reimplemented in GFqExt< TT >.
typedef GIV_randIter< GFqExtFast<TT> , Rep> RandIter |
Reimplemented in GFqExt< TT >.
typedef GIV_randIter< GFqDom<TT> , Rep> randIter [inherited] |
GFqExtFast | ( | ) | [inline] |
GFqExtFast | ( | const UTT | P, |
const UTT | e | ||
) | [inline] |
virtual ~GFqExtFast | ( | ) | [inline, virtual] |
GFqExtFast | ( | const GFqDom< TT > & | F | ) | [inline] |
UTT bits | ( | ) | const [inline] |
UTT base | ( | ) | const [inline] |
UTT mask | ( | ) | const [inline] |
UTT maxdot | ( | ) | const [inline] |
UTT characteristic | ( | ) | const [inline] |
Reimplemented from GFqDom< TT >.
Reimplemented from GFqDom< TT >.
virtual double& convert | ( | double & | d, |
const Rep | a | ||
) | const [inline, virtual] |
Reimplemented from GFqDom< TT >.
virtual float& convert | ( | float & | d, |
const Rep | a | ||
) | const [inline, virtual] |
Reimplemented from GFqDom< TT >.
Reimplemented from GFqDom< TT >.
Reimplemented in GFqExt< TT >.
Reimplemented from GFqDom< TT >.
void builddoubletables | ( | ) | [inline, protected] |
void assign | ( | const size_t | sz, |
Array | r, | ||
constArray | a | ||
) | const [inline, inherited] |
std::istream & read | ( | std::istream & | s | ) | [inline, inherited] |
std::istream & read | ( | std::istream & | s, |
Rep & | a | ||
) | const [inline, inherited] |
std::ostream & write | ( | std::ostream & | s | ) | const [inline, inherited] |
std::ostream & write | ( | std::ostream & | s, |
const Rep | a | ||
) | const [inline, inherited] |
std::ostream& convert | ( | std::ostream & | s, |
const Rep | a | ||
) | const [inline, inherited] |
TT convert | ( | const Rep | a | ) | const [inline, inherited] |
long & convert | ( | long & | r, |
const Rep | a | ||
) | const [inline, inherited] |
unsigned long & convert | ( | unsigned long & | r, |
const Rep | a | ||
) | const [inline, inherited] |
int & convert | ( | int & | r, |
const Rep | a | ||
) | const [inline, inherited] |
unsigned int & convert | ( | unsigned int & | r, |
const Rep | a | ||
) | const [inline, inherited] |
long long & convert | ( | long long & | r, |
const Rep | a | ||
) | const [inline, inherited] |
unsigned long long & convert | ( | unsigned long long & | r, |
const Rep | a | ||
) | const [inline, inherited] |
int operator== | ( | const GFqDom< TT > & | a | ) | const [inline, inherited] |
int operator!= | ( | const GFqDom< TT > & | a | ) | const [inline, inherited] |
bool isZero | ( | const Rep | a | ) | const [inline, inherited] |
bool isnzero | ( | const Rep | a | ) | const [inline, inherited] |
bool isOne | ( | const Rep | a | ) | const [inline, inherited] |
bool isunit | ( | const Rep | a | ) | const [inline, inherited] |
size_t length | ( | const Rep | ) | const [inline, inherited] |
void mul | ( | const size_t | sz, |
Array | r, | ||
constArray | a, | ||
constArray | b | ||
) | const [inline, inherited] |
void mul | ( | const size_t | sz, |
Array | r, | ||
constArray | a, | ||
Rep | b | ||
) | const [inline, inherited] |
void div | ( | const size_t | sz, |
Array | r, | ||
constArray | a, | ||
constArray | b | ||
) | const [inline, inherited] |
void div | ( | const size_t | sz, |
Array | r, | ||
constArray | a, | ||
Rep | b | ||
) | const [inline, inherited] |
void add | ( | const size_t | sz, |
Array | r, | ||
constArray | a, | ||
constArray | b | ||
) | const [inline, inherited] |
void add | ( | const size_t | sz, |
Array | r, | ||
constArray | a, | ||
Rep | b | ||
) | const [inline, inherited] |
void sub | ( | const size_t | sz, |
Array | r, | ||
constArray | a, | ||
constArray | b | ||
) | const [inline, inherited] |
void sub | ( | const size_t | sz, |
Array | r, | ||
constArray | a, | ||
Rep | b | ||
) | const [inline, inherited] |
void neg | ( | const size_t | sz, |
Array | r, | ||
constArray | a | ||
) | const [inline, inherited] |
void inv | ( | const size_t | sz, |
Array | r, | ||
constArray | a | ||
) | const [inline, inherited] |
void axpy | ( | const size_t | sz, |
Array | r, | ||
Rep | a, | ||
constArray | x, | ||
constArray | y | ||
) | const [inline, inherited] |
void axpy | ( | const size_t | sz, |
Array | r, | ||
Rep | a, | ||
constArray | x, | ||
Rep | c | ||
) | const [inline, inherited] |
void axpyin | ( | const size_t | sz, |
Array | r, | ||
Rep | a, | ||
constArray | x | ||
) | const [inline, inherited] |
void axmy | ( | const size_t | sz, |
Array | r, | ||
Rep | a, | ||
constArray | x, | ||
constArray | y | ||
) | const [inline, inherited] |
void axmy | ( | const size_t | sz, |
Array | r, | ||
Rep | a, | ||
constArray | x, | ||
Rep | c | ||
) | const [inline, inherited] |
void maxpyin | ( | const size_t | sz, |
Array | r, | ||
Rep | a, | ||
constArray | x | ||
) | const [inline, inherited] |
void reduceadd | ( | Rep & | r, |
const size_t | sz, | ||
constArray | a | ||
) | const [inherited] |
void reducemul | ( | Rep & | r, |
const size_t | sz, | ||
constArray | a | ||
) | const [inherited] |
GFqDom< TT >::Rep & dotprod | ( | Rep & | r, |
const size_t | sz, | ||
constArray | a, | ||
constArray | b | ||
) | const [inline, inherited] |
GFqDom< TT >::Rep & nonzerorandom | ( | RandIter & | g, |
Rep & | r, | ||
const Rep & | b | ||
) | const [inline, inherited] |
void Init | ( | ) | [inline, static, inherited] |
void End | ( | ) | [inline, static, inherited] |
std::vector<double> _log2dbl [protected] |
const bool balanced |
UTT _characteristic [protected, inherited] |
std::vector<TT> _plus1 [protected, inherited] |
double _dcharacteristic [protected, inherited] |