FflasFfpack
Public Types | Public Member Functions | Static Public Member Functions | Data Fields | Static Public Attributes | Protected Attributes
ModularBalanced< int64_t > Class Template Reference

#include <modular-balanced-int64.h>

Public Types

typedef int64_t Element
typedef
ModularBalancedRandIter
< int64_t > 
RandIter

Public Member Functions

 ModularBalanced ()
 ModularBalanced (int64_t value, int exp=1)
 ModularBalanced (const ModularBalanced< int64_t > &mf)
ModularBalanced< Element > & assign (const ModularBalanced< Element > &F)
const ModularBalancedoperator= (const ModularBalanced< int64_t > &F)
uint64_t characteristic () const
size_t cardinality () 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
template<class Element1 >
Elementinit (Element &x, const Element1 &y) const
Elementinit (Element &x, const double &y) const
Elementinit (Element &x, const size_t &y) const
Elementinit (Element &x, int y=0) const
Elementinit (Element &x, long y) const
Elementassign (Element &x, const Element &y) const
bool areEqual (const Element &x, const Element &y) const
bool isZero (const Element &x) const
bool isOne (const Element &x) const
Elementadd (Element &x, const Element &y, const Element &z) const
Elementsub (Element &x, const Element &y, const Element &z) const
Elementmul (Element &x, const Element &y, const Element &z) const
Elementdiv (Element &x, const Element &y, const Element &z) const
Elementneg (Element &x, const Element &y) const
Elementinv (Element &x, const Element &y) const
Elementaxpy (Element &r, const Element &a, const Element &x, const Element &y) const
Elementaddin (Element &x, const Element &y) const
Elementsubin (Element &x, const Element &y) const
Elementmulin (Element &x, const Element &y) const
Elementdivin (Element &x, const Element &y) const
Elementnegin (Element &x) const
Elementinvin (Element &x) const
Elementaxpyin (Element &r, const Element &a, const Element &x) const

Static Public Member Functions

static int64_t getMaxModulus ()

Data Fields

const Element one
const Element zero
const Element mOne

Static Public Attributes

static const bool balanced = true

Protected Attributes

int64_t modulus
int64_t half_mod
int64_t mhalf_mod
double modulusinv

Member Typedef Documentation

typedef int64_t Element

Constructor & Destructor Documentation

ModularBalanced ( )
inline
ModularBalanced ( int64_t  value,
int  exp = 1 
)
inline
ModularBalanced ( const ModularBalanced< int64_t > &  mf)
inline

Member Function Documentation

ModularBalanced<Element>& assign ( const ModularBalanced< Element > &  F)
inline
const ModularBalanced& operator= ( const ModularBalanced< int64_t > &  F)
inline
uint64_t characteristic ( ) const
inline
size_t cardinality ( ) const
inline
double& convert ( double &  x,
const Element y 
) const
inline
float& convert ( float &  x,
const Element y 
) const
inline
std::ostream& write ( std::ostream &  os) const
inline
std::istream& read ( std::istream &  is)
inline
std::ostream& write ( std::ostream &  os,
const Element x 
) const
inline
std::istream& read ( std::istream &  is,
Element x 
) const
inline
Element& init ( Element x,
const Element1 &  y 
) const
inline
Element& init ( Element x,
const double &  y 
) const
inline
Element& init ( Element x,
const size_t &  y 
) const
inline
Element& init ( Element x,
int  y = 0 
) const
inline
Element& init ( Element x,
long  y 
) const
inline
Element& assign ( Element x,
const Element y 
) const
inline
bool areEqual ( const Element x,
const Element y 
) const
inline
bool isZero ( const Element x) const
inline
bool isOne ( const Element x) const
inline
Element& add ( Element x,
const Element y,
const Element z 
) const
inline
Element& sub ( Element x,
const Element y,
const Element z 
) const
inline
Element& mul ( Element x,
const Element y,
const Element z 
) const
inline
Element& div ( Element x,
const Element y,
const Element z 
) const
inline
Element& neg ( Element x,
const Element y 
) const
inline
Element& inv ( Element x,
const Element y 
) const
inline
Element& axpy ( Element r,
const Element a,
const Element x,
const Element y 
) const
inline
Element& addin ( Element x,
const Element y 
) const
inline
Element& subin ( Element x,
const Element y 
) const
inline
Element& mulin ( Element x,
const Element y 
) const
inline
Element& divin ( Element x,
const Element y 
) const
inline
Element& negin ( Element x) const
inline
Element& invin ( Element x) const
inline
Element& axpyin ( Element r,
const Element a,
const Element x 
) const
inline
static int64_t getMaxModulus ( )
inlinestatic

Field Documentation

int64_t modulus
protected
int64_t half_mod
protected
int64_t mhalf_mod
protected
double modulusinv
protected
const Element one
const Element zero
const Element mOne
const bool balanced = true
static

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