linbox
1
|
extend Wrapper of ZZ_p from NTL. Add PIR functions
More...
#include <PIR-ntl-ZZ_p.h>
Inherits UnparametricField< K >.
Static Public Member Functions | |
template<class Element2 > | |
static Element & | init (Element &x, const Element2 &y) |
Init x from y. | |
static Element & | init (Element &x, const Element &y) |
Init from a NTL::ZZ_p. | |
static Element & | init (Element &x, const integer &y) |
I don't know how to init from integer. | |
static integer & | convert (integer &x, const Element &y) |
Convert y to an Element. | |
static Element & | assign (Element &x, const Element &y) |
x = y. | |
static bool | areEqual (const Element &x, const Element &y) |
Test if x == y. | |
static bool | isZero (const Element &x) |
Test if x == 0. | |
static bool | isOne (const Element &x) |
Test if x == 1. | |
static Element & | add (Element &x, const Element &y, const Element &z) |
return x = y + z | |
static Element & | sub (Element &x, const Element &y, const Element &z) |
return x = y - z | |
template<class Int > | |
static Element & | mul (Element &x, const Element &y, const Int &z) |
return x = y * z | |
static Element & | div (Element &x, const Element &y, const Element &z) |
If exists a, such that a * z =y, return x = one of them. Otherwise, throw an exception. | |
static Element & | inv (Element &x, const Element &y) |
If y is a unit, return x = 1 / y, otherwsie, throw an exception. | |
static Element & | neg (Element &x, const Element &y) |
return x = -y; | |
template<class Int > | |
static Element & | axpy (Element &r, const Element &a, const Int &x, const Element &y) |
return r = a x + y | |
static Element & | addin (Element &x, const Element &y) |
return x += y; | |
static Element & | subin (Element &x, const Element &y) |
return x -= y; | |
template<class Int > | |
static Element & | mulin (Element &x, const Int &y) |
return x *= y; | |
static Element & | divin (Element &x, const Element &y) |
If y divides x, return x /= y, otherwise throw an exception. | |
static Element & | invin (Element &x) |
If x is a unit, x = 1 / x, otherwise, throw an exception. | |
static Element & | negin (Element &x) |
return x = -x; | |
template<class Int > | |
static Element & | axpyin (Element &r, const Element &a, const Int &x) |
return r += a x | |
static std::ostream & | write (std::ostream &out, const Element &y) |
out << y; | |
static std::istream & | read (std::istream &in, Element &x) |
read x from istream in | |
static bool | isUnit (const Element &x) |
Test if x is a unit. | |
static Element & | gcd (Element &g, const Element &a, const Element &b) |
return g = gcd (a, b) | |
static Element & | gcdin (Element &g, const Element &b) |
return g = gcd (g, b) | |
static Element & | xgcd (Element &g, Element &s, Element &t, const Element &a, const Element &b) |
g = gcd(a, b) = a*s + b*t. and gcd (s, t) is a unit. | |
static Element & | dxgcd (Element &g, Element &s, Element &t, Element &a1, Element &b1, const Element &a, const Element &b) |
g = gcd(a, b) = a*s + b*t. and gcd (s, t) is a unit. s * a1 + t * b1 = a unit. | |
static bool | isDivisor (const Element &a, const Element &b) |
Test if a | b. | |
static Element & | normal (Element &a, const Element &b) |
a = normalization of b. | |
static Element & | normalIn (Element &a) |
Additional Inherited Members | |
![]() | |
typedef K | Element |
typedef UnparametricRandIter< K > | RandIter |
Type of random field element generators. | |
![]() | |
template<> | |
NTL::zz_p & | init (NTL::zz_p &x, const integer &y) const |
template<> | |
integer & | convert (integer &x, const NTL::zz_p &y) const |
template<> | |
integer & | cardinality (integer &c) const |
template<> | |
integer & | characteristic (integer &c) const |
template<> | |
NTL::zz_p & | inv (NTL::zz_p &x, const NTL::zz_p &y) const |
template<> | |
bool | isZero (const NTL::zz_p &x) const |
template<> | |
bool | isOne (const NTL::zz_p &x) const |
template<> | |
NTL::zz_p & | invin (NTL::zz_p &x) const |
template<> | |
std::ostream & | write (std::ostream &os) const |
template<> | |
std::ostream & | write (std::ostream &os) const |
template<> | |
std::ostream & | write (std::ostream &os) const |
UnparametricField (integer q=0, size_t e=1) | |
UnparametricField (const UnparametricField &F) | |
construct this field as copy of F. | |
~UnparametricField () | |
const UnparametricField & | operator= (const UnparametricField &F) const |
Element & | init (Element &x, const integer &y=0) const |
x := y. Caution: it is via cast to long. Good candidate for specialization. | |
integer & | convert (integer &x, const Element &y) const |
x := y. Caution: it is via cast to long. Good candidate for specialization. | |
double & | convert (double &x, const Element &y) const |
x := y. Caution: it is via cast to long. Good candidate for specialization. –dpritcha | |
Element & | assign (Element &x, const Element &y) const |
integer & | cardinality (integer &c) const |
c := cardinality of this field (-1 if infinite). | |
integer & | characteristic (integer &c) const |
c := characteristic of this field (zero or prime). | |
bool | areEqual (const Element &x, const Element &y) const |
x == y | |
bool | isZero (const Element &x) const |
x == 0 | |
bool | isOne (const Element &x) const |
x == 1 | |
Element & | add (Element &x, const Element &y, const Element &z) const |
x := y + z | |
Element & | sub (Element &x, const Element &y, const Element &z) const |
x := y - z | |
Element & | mul (Element &x, const Element &y, const Element &z) const |
x := y*z | |
Element & | div (Element &x, const Element &y, const Element &z) const |
x := y/z | |
Element & | neg (Element &x, const Element &y) const |
x := -y | |
Element & | inv (Element &x, const Element &y) const |
x := 1/y | |
Element & | axpy (Element &z, const Element &a, const Element &x, const Element &y) const |
z := a*x + y | |
Element & | addin (Element &x, const Element &y) const |
x := x + y | |
Element & | subin (Element &x, const Element &y) const |
x := x - y | |
Element & | mulin (Element &x, const Element &y) const |
x := x*y | |
Element & | divin (Element &x, const Element &y) const |
x := x/y | |
Element & | negin (Element &x) const |
x := -x | |
Element & | invin (Element &x) const |
x := 1/x | |
Element & | axpyin (Element &y, const Element &a, const Element &x) const |
y := a*x + y | |
std::ostream & | write (std::ostream &os) const |
std::istream & | read (std::istream &is) const |
std::ostream & | write (std::ostream &os, const Element &x) const |
std::istream & | read (std::istream &is, Element &x) const |
UnparametricField (const K &A) | |
Default constructor. | |
const K & | operator() (void) const |
K & | operator() (void) |
template<> | |
NTL::RR & | init (NTL::RR &x, const integer &y) const |
template<> | |
integer & | convert (integer &x, const NTL::RR &y) const |
template<> | |
NTL::RR & | inv (NTL::RR &x, const NTL::RR &y) const |
template<> | |
bool | isZero (const NTL::RR &x) const |
template<> | |
bool | isOne (const NTL::RR &x) const |
template<> | |
NTL::RR & | invin (NTL::RR &x) const |
template<> | |
std::ostream & | write (std::ostream &os) const |
template<> | |
UnparametricField (integer q, size_t e) | |
template<> | |
NTL::ZZ_p & | init (NTL::ZZ_p &x, const integer &y) const |
template<> | |
integer & | convert (integer &x, const NTL::ZZ_p &y) const |
template<> | |
integer & | cardinality (integer &c) const |
template<> | |
integer & | characteristic (integer &c) const |
template<> | |
NTL::ZZ_p & | inv (NTL::ZZ_p &x, const NTL::ZZ_p &y) const |
template<> | |
bool | isZero (const NTL::ZZ_p &x) const |
template<> | |
bool | isOne (const NTL::ZZ_p &x) const |
template<> | |
NTL::ZZ_p & | invin (NTL::ZZ_p &x) const |
template<> | |
std::ostream & | write (std::ostream &os) const |
extend Wrapper of ZZ_p from NTL. Add PIR functions
|
inlinestatic |
Test if x is a unit.
some PIR function