Public Types |
typedef double | Element |
typedef unsigned long | FieldInt |
typedef
ModularBalancedRandIter
< double > | RandIter |
typedef NonzeroRandIter
< ModularBalanced< double >
, RandIter > | NonZeroRandIter |
Public Member Functions |
| ModularBalanced (int32_t p, int exp=1) |
| ModularBalanced (double p) |
| ModularBalanced (unsigned long p) |
| ModularBalanced (long p) |
| ModularBalanced (const ModularBalanced< double > &mf) |
const ModularBalanced< double > & | operator= (const ModularBalanced< double > &F) |
FieldInt & | cardinality (FieldInt &c) const |
FieldInt | cardinality () const |
unsigned long | characteristic () const |
FieldInt & | characteristic (FieldInt &c) const |
unsigned long & | convert (unsigned long &x, const Element &y) const |
double & | convert (double &x, const Element &y) const |
float & | convert (float &x, const Element &y) const |
std::ostream & | write (std::ostream &os) const |
std::istream & | read (std::istream &is) |
std::ostream & | write (std::ostream &os, const Element &x) const |
std::istream & | read (std::istream &is, Element &x) const |
Element & | init (Element &x, const unsigned long &y) const |
Element & | init (Element &x, const double y=0) const |
template<class T > |
Element & | init (Element &x, const T y=0) const |
Element & | assign (Element &x, const Element &y) const |
bool | areEqual (const Element &x, const Element &y) const |
| Tests equality.
|
bool | isZero (const Element &x) const |
bool | isOne (const Element &x) const |
Element & | add (Element &x, const Element &y, const Element &z) const |
Element & | sub (Element &x, const Element &y, const Element &z) const |
Element & | mul (Element &x, const Element &y, const Element &z) const |
Element & | div (Element &x, const Element &y, const Element &z) const |
Element & | neg (Element &x, const Element &y) const |
Element & | inv (Element &x, const Element &y) const |
Element & | axpy (Element &r, const Element &a, const Element &x, const Element &y) const |
Element & | addin (Element &x, const Element &y) const |
Element & | subin (Element &x, const Element &y) const |
Element & | mulin (Element &x, const Element &y) const |
Element & | divin (Element &x, const Element &y) const |
Element & | negin (Element &x) const |
Element & | invin (Element &x) const |
Element & | axpyin (Element &r, const Element &a, const Element &x) const |
Static Public Member Functions |
static double | getMaxModulus () |
Data Fields |
const bool | balanced |
Protected Attributes |
double | modulus |
double | half_mod |
double | mhalf_mod |
unsigned long | lmodulus |