LatMRG Online Documentation unknown
Tools to analyze the lattice structure of linear generators
Loading...
Searching...
No Matches
LatMRG::FlexModInt< Int > Class Template Reference

The FlexModInt class permits one to use the NTL functions that work on integers, vectors, and polynomials over Z_p (with arithmetic modulo p) using the flexible type Int for the modulus and coefficients. More...

Public Types

typedef NTL::ZZ_p IntP
typedef NTL::ZZ_pE PolE
typedef NTL::ZZ_pX PolX
typedef NTL::vec_ZZ_p IntVecP
typedef NTL::mat_ZZ_p IntMatP

Static Public Member Functions

static NTL::ZZ_p to_Int_p (Int a)
static void mod_init (Int m)

Detailed Description

template<typename Int>
class LatMRG::FlexModInt< Int >

The FlexModInt class permits one to use the NTL functions that work on integers, vectors, and polynomials over Z_p (with arithmetic modulo p) using the flexible type Int for the modulus and coefficients.

In NTL, these functions are in different files, with names ZZ_* for ZZ and zz_* for int64_t. Below, we give the generic (template) names IntP, PolE, PolX, IntVecP, IntMatP to some of these files, and the meaning of these names depend on the template Int. To use the appropriate version for type Int, it suffices to prefix the generic file name by FlexModInt<Int>::. For example, FlexModInt<Int>::IntP::init(p) calls the init function from ZZ_p or zz_p, and FlexModInt<Int>::PolX f; declares a polynomial from ZZ_pX or zz_pX, depending on the meaning of Int. The modulus p that is used in those classes for a given Int type must be set via setModulusIntP<Int>(p);.

Member Typedef Documentation

◆ IntP

template<typename Int>
typedef NTL::ZZ_p LatMRG::FlexModInt< Int >::IntP

◆ PolE

template<typename Int>
typedef NTL::ZZ_pE LatMRG::FlexModInt< Int >::PolE

◆ PolX

template<typename Int>
typedef NTL::ZZ_pX LatMRG::FlexModInt< Int >::PolX

◆ IntVecP

template<typename Int>
typedef NTL::vec_ZZ_p LatMRG::FlexModInt< Int >::IntVecP

◆ IntMatP

template<typename Int>
typedef NTL::mat_ZZ_p LatMRG::FlexModInt< Int >::IntMatP

Member Function Documentation

◆ to_Int_p()

template<typename Int>
NTL::ZZ_p LatMRG::FlexModInt< Int >::to_Int_p ( Int a)
inlinestatic

◆ mod_init()

template<typename Int>
void LatMRG::FlexModInt< Int >::mod_init ( Int m)
inlinestatic

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