Givaro
|
Forward declaration for Givaro::Modular. More...
#include <modular-inttype.h>
Public Types | |
using | Storage_t = IntType |
using | Residu_t = IntType |
using | Compute_t = _Compute_t |
using | Self_t = Modular< Storage_t, Compute_t > |
using | Parent_t = Modular_implem< Storage_t, Compute_t, Residu_t > |
using | Element = Storage_t |
typedef ModularRandIter< Self_t > | RandIter |
typedef GeneralRingNonZeroRandIter< Self_t > | NonZeroRandIter |
enum | |
using | Element_ptr = Element * |
using | ConstElement = const Element |
using | ConstElement_ptr = const Element * |
using | is_elt_integral = std::is_integral< Element > |
using | is_elt_floating_point = std::is_floating_point< Element > |
Public Member Functions | |
Element & | init (Element &x) const |
Element & | init (Element &x, const Integer &y) const final |
template<typename T > | |
Element & | init (Element &r, const T &a) const |
Element & | reduce (Element &x, const Element &y) const |
Element & | reduce (Element &x) const |
Element & | mul (Element &r, const Element &a, const Element &b) const |
Element & | div (Element &r, const Element &a, const Element &b) const |
Element & | add (Element &r, const Element &a, const Element &b) const |
Element & | sub (Element &r, const Element &a, const Element &b) const |
Element & | neg (Element &r, const Element &a) const |
Element & | inv (Element &r, const Element &a) const |
Element & | mulin (Element &r, const Element &a) const |
Element & | divin (Element &r, const Element &a) const |
Element & | addin (Element &r, const Element &a) const |
Element & | subin (Element &r, const Element &a) const |
Element & | negin (Element &r) const |
Element & | invin (Element &r) const |
Element & | axpy (Element &r, const Element &a, const Element &x, const Element &y) const |
Element & | axpyin (Element &r, const Element &a, const Element &x) const |
Element & | axmy (Element &r, const Element &a, const Element &x, const Element &y) const |
Element & | axmyin (Element &r, const Element &a, const Element &x) const |
Element & | maxpy (Element &r, const Element &a, const Element &x, const Element &y) const |
Element & | maxpyin (Element &r, const Element &a, const Element &x) const |
template<class Random > | |
Element & | random (Random &g, Element &r) const |
template<class Random > | |
Element & | nonzerorandom (Random &g, Element &a) const |
Element | minElement () const |
Element | maxElement () const |
Residu_t | residu () const |
Residu_t | size () const |
Residu_t | characteristic () const |
T & | characteristic (T &p) const |
Residu_t | cardinality () const |
T & | cardinality (T &p) const |
bool | isZero (const Element &a) const |
bool | isOne (const Element &a) const |
bool | isMOne (const Element &a) const |
bool | areEqual (const Element &a, const Element &b) const |
bool | isUnit (const Element &a) const |
size_t | length (const Element a) const |
bool | operator== (const Self_t &F) const |
bool | operator!= (const Self_t &F) const |
Element & | assign (Element &x, const Element &y) const |
T & | convert (T &r, const Element &a) const |
std::ostream & | write (std::ostream &s, const Element &a) const |
std::ostream & | write (std::ostream &s, const E &a) const |
std::ostream & | write (std::ostream &s, const E &a) const |
std::ostream & | write (std::ostream &s, const E &a) const |
std::ostream & | write (std::ostream &s) const |
std::ostream & | write (std::ostream &s) const |
std::ostream & | write (std::ostream &s) const |
std::istream & | read (std::istream &s) |
std::istream & | read (std::istream &, Element &) const |
Static Public Member Functions | |
static const std::string | type_string () |
static Residu_t | minCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
static Residu_t | maxCardinality () |
Data Fields | |
Residu_t | _p |
Compute_t | _pc |
const Element | zero |
const Element | one |
const Element | mOne |
Static Public Attributes | |
static constexpr bool | is_elt_integral_v |
static constexpr bool | is_elt_floating_point_v |
Forward declaration for Givaro::Modular.
This class implement the standard arithmetic with Modulo Elements.
Elements will be stored in the storage type. While arithmetics will occur on the unsigned version of COMP type. Example: Modular<int32_t, uint64_t>
using Compute_t = _Compute_t |
using Parent_t = Modular_implem<Storage_t, Compute_t, Residu_t> |
typedef ModularRandIter<Self_t> RandIter |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inline |
|
inlinefinalvirtual |
Implements Modular_implem< IntType, _Compute_t, IntType >.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlinestaticinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Residu_t _p |
Compute_t _pc |
const Element zero |
const Element one |
const Element mOne |
|
staticconstexprinherited |
|
staticconstexprinherited |