FflasFfpack
RNSInteger< RNS > Class Template Reference

#include <rns-integer.h>

Data Structures

class  RandIter
 

Public Types

typedef RNS::Element Element
 
typedef RNS::Element_ptr Element_ptr
 
typedef RNS::ConstElement_ptr ConstElement_ptr
 

Public Member Functions

 RNSInteger (const RNS &myrns)
 
template<typename T >
 RNSInteger (const T &F)
 
const RNSrns () const
 
size_t size () const
 
bool isOne (const Element &x) const
 
bool isMOne (const Element &x) const
 
bool isZero (const Element &x) const
 
integer characteristic (integer &p) const
 
integer cardinality (integer &p) const
 
Elementinit (Element &x) const
 
Elementinit (Element &x, const Givaro::Integer &y) const
 
Elementreduce (Element &x, const Element &y) const
 
Elementreduce (Element &x) const
 
Givaro::Integer convert (Givaro::Integer &x, const Element &y) const
 
Elementassign (Element &x, const Element &y) const
 
std::ostream & write (std::ostream &os, const Element &y) const
 
std::ostream & write (std::ostream &os) const
 

Data Fields

Element one
 
Element mOne
 
Element zero
 

Protected Types

typedef RNS::BasisElement BasisElement
 
typedef Givaro::Integer integer
 

Protected Attributes

const RNS_rns
 

Member Typedef Documentation

◆ BasisElement

template<typename RNS >
RNS::BasisElement BasisElement
protected

◆ integer

template<typename RNS >
Givaro::Integer integer
protected

◆ Element

template<typename RNS >
RNS::Element Element

◆ Element_ptr

template<typename RNS >
RNS::Element_ptr Element_ptr

◆ ConstElement_ptr

Constructor & Destructor Documentation

◆ RNSInteger() [1/2]

template<typename RNS >
RNSInteger ( const RNS & myrns)
inline

◆ RNSInteger() [2/2]

template<typename RNS >
template<typename T >
RNSInteger ( const T & F)
inline

Member Function Documentation

◆ rns()

template<typename RNS >
const RNS & rns ( ) const
inline

◆ size()

template<typename RNS >
size_t size ( ) const
inline

◆ isOne()

template<typename RNS >
bool isOne ( const Element & x) const
inline

◆ isMOne()

template<typename RNS >
bool isMOne ( const Element & x) const
inline

◆ isZero()

template<typename RNS >
bool isZero ( const Element & x) const
inline

◆ characteristic()

template<typename RNS >
integer characteristic ( integer & p) const
inline

◆ cardinality()

template<typename RNS >
integer cardinality ( integer & p) const
inline

◆ init() [1/2]

template<typename RNS >
Element & init ( Element & x) const
inline

◆ init() [2/2]

template<typename RNS >
Element & init ( Element & x,
const Givaro::Integer & y ) const
inline

◆ reduce() [1/2]

template<typename RNS >
Element & reduce ( Element & x,
const Element & y ) const
inline

◆ reduce() [2/2]

template<typename RNS >
Element & reduce ( Element & x) const
inline

◆ convert()

template<typename RNS >
Givaro::Integer convert ( Givaro::Integer & x,
const Element & y ) const
inline

◆ assign()

template<typename RNS >
Element & assign ( Element & x,
const Element & y ) const
inline

◆ write() [1/2]

template<typename RNS >
std::ostream & write ( std::ostream & os,
const Element & y ) const
inline

◆ write() [2/2]

template<typename RNS >
std::ostream & write ( std::ostream & os) const
inline

Field Documentation

◆ _rns

template<typename RNS >
const RNS* _rns
protected

◆ one

template<typename RNS >
Element one

◆ mOne

template<typename RNS >
Element mOne

◆ zero

template<typename RNS >
Element zero

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