Givaro
|
#include <givrns.h>
Public Types | |
typedef RING | ring |
typedef Domain::Element | modulo |
typedef Array0< modulo > | array |
typedef Array0< Domain > | domains |
Public Member Functions | |
RNSsystem () | |
~RNSsystem () | |
RNSsystem (const Self_t &R) | |
RNSsystem (const domains &primes) | |
void | RnsToMixedRadix (array &mixrad, const array &residu) |
RING & | MixedRadixToRing (RING &res, const array &mixrad) const |
void | RingToRns (array &rns, const RING &a) const |
RING & | RnsToRing (RING &a, const array &rns) |
size_t | size () const |
const domains & | Primes () const |
const Domain | ith (const size_t i) const |
const array & | Reciprocals () const |
– Returns an array of the reciprocal More... | |
const modulo | reciprocal (const size_t i) const |
void | setPrimes (const domains &primes) |
Protected Member Functions | |
void | ComputeCk () |
Protected Attributes | |
domains | _primes |
array | _ck |
class RNSsystem.
Structure which manages list of domains in order to convert integer to/from RNS number system using a mixed radix form. This class is parameterized by the type of RING
and of Domain
. The ring should have:
typedef RING ring |
typedef Domain::Element modulo |
RING & MixedRadixToRing | ( | RING & | res, |
const array & | mixrad | ||
) | const |
void RingToRns | ( | array & | rns, |
const RING & | a | ||
) | const |
RING & RnsToRing | ( | RING & | a, |
const array & | rns | ||
) |
|
inline |
const Domain ith | ( | const size_t | i | ) | const |
void setPrimes | ( | const domains & | primes | ) |
|
protected |
|
protected |
|
protected |