Givaro
Public Types | Public Member Functions | Protected Types | Protected Attributes
CyclotomicTable< Domain, Tag > Class Template Reference

CyclotomicTable. More...

#include <givpoly1tabcycl.h>

+ Inheritance diagram for CyclotomicTable< Domain, Tag >:
+ Collaboration diagram for CyclotomicTable< Domain, Tag >:

Public Types

typedef GivRandom random_generator
 
typedef Signed_Trait< typename Domain::Element >::unsigned_type Residu_t
 
typedef Signed_Trait< typename Domain::Element >::signed_type Element_t
 
typedef Poly1Dom< Domain, Tag >::Type_t Type_t
 

Public Member Functions

 CyclotomicTable (Domain &_d, const long expo, const Indeter &X=Indeter())
 
Element & getcyclo (Element &res) const
 
void set_random_irreducible (const Domain &_d, const long expo)
 
void table_0 (const typename Domain::Residu_t mod, const long expo)
 
void table_50 (const typename Domain::Residu_t mod, const long expo)
 
void SplitFactor (Container< Rep, Alloc< Rep > > &L, const Rep &G, Degree d, Residu_t MOD) const
 
void SplitFactor (Container< Rep, Alloc< Rep > > &L, const Rep &G, Degree d) const
 
RepSplitFactor (Rep &R, const Rep &G, Degree d, Residu_t MOD) const
 
RepSplitFactor (Rep &R, const Rep &G, Degree d) const
 
void DistinctDegreeFactor (Container< Rep, Alloc< Rep > > &L, const Rep &f, Residu_t MOD) const
 
void DistinctDegreeFactor (Container< Rep, Alloc< Rep > > &L, const Rep &f) const
 
void CZfactor (Container< Rep, Alloc< Rep > > &Lf, Container< uint64_t, Alloc< uint64_t > > &Le, const Rep &f, Residu_t MOD) const
 
void CZfactor (Container< Rep, Alloc< Rep > > &Lf, Container< uint64_t, Alloc< uint64_t > > &Le, const Rep &f) const
 
Repfactor (Rep &W, const Rep &P, Residu_t MOD) const
 
Repfactor (Rep &W, const Rep &P) const
 
bool is_irreducible (const Rep &P, Residu_t MOD) const
 
bool is_irreducible (const Rep &P) const
 
bool is_irreducible2 (const Rep &P, Residu_t MOD) const
 
bool is_irreducible2 (const Rep &P) const
 
Element & random_irreducible (Element &P, Degree n) const
 random irreducible polynomial More...
 
Element & creux_random_irreducible (Element &P, Degree n) const
 random irreducible polynomial tries to be sparse More...
 
Element & ixe_irreducible (Element &R, Degree n) const
 random irreducible polynomial with X as primitive root More...
 
Element & ixe_irreducible2 (Element &R, Degree n) const
 random irreducible polynomial with X as primitive root More...
 
IntegerDom::Element order (const Rep &P, const Rep &F) const
 
bool is_prim_root (const Rep &P, const Rep &F) const
 
Reprandom_prim_root (Rep &P, Rep &R, Degree n) const
 
Repgive_random_prim_root (Rep &R, const Rep &F) const
 
Repgive_prim_root (Rep &R, const Rep &F) const
 

Protected Types

typedef Poly1Dom< Domain, Tag >::Rep Rep
 

Protected Attributes

GivRandom _g
 

Detailed Description

template<class Domain, class Tag>
class Givaro::CyclotomicTable< Domain, Tag >

CyclotomicTable.

Member Typedef Documentation

typedef Poly1Dom<Domain,Tag>::Rep Rep
protectedinherited
typedef GivRandom random_generator
inherited
typedef Signed_Trait<typename Domain::Element>::unsigned_type Residu_t
inherited
typedef Signed_Trait<typename Domain::Element>::signed_type Element_t
inherited
typedef Poly1Dom<Domain,Tag>::Type_t Type_t
inherited

Constructor & Destructor Documentation

CyclotomicTable ( Domain _d,
const long  expo,
const Indeter X = Indeter() 
)
inline

Member Function Documentation

Element& getcyclo ( Element &  res) const
inline
void set_random_irreducible ( const Domain _d,
const long  expo 
)
inline
void table_0 ( const typename Domain::Residu_t  mod,
const long  expo 
)
inline
void table_50 ( const typename Domain::Residu_t  mod,
const long  expo 
)
inline
void SplitFactor ( Container< Rep, Alloc< Rep > > &  L,
const Rep G,
Degree  d,
Residu_t  MOD 
) const
inherited
void SplitFactor ( Container< Rep, Alloc< Rep > > &  L,
const Rep G,
Degree  d 
) const
inlineinherited
Rep& SplitFactor ( Rep R,
const Rep G,
Degree  d,
Residu_t  MOD 
) const
inherited
Rep& SplitFactor ( Rep R,
const Rep G,
Degree  d 
) const
inlineinherited
void DistinctDegreeFactor ( Container< Rep, Alloc< Rep > > &  L,
const Rep f,
Residu_t  MOD 
) const
inherited
void DistinctDegreeFactor ( Container< Rep, Alloc< Rep > > &  L,
const Rep f 
) const
inlineinherited
void CZfactor ( Container< Rep, Alloc< Rep > > &  Lf,
Container< uint64_t, Alloc< uint64_t > > &  Le,
const Rep f,
Residu_t  MOD 
) const
inherited
void CZfactor ( Container< Rep, Alloc< Rep > > &  Lf,
Container< uint64_t, Alloc< uint64_t > > &  Le,
const Rep f 
) const
inlineinherited
Rep& factor ( Rep W,
const Rep P,
Residu_t  MOD 
) const
inherited
Rep& factor ( Rep W,
const Rep P 
) const
inlineinherited
bool is_irreducible ( const Rep P,
Residu_t  MOD 
) const
inherited
bool is_irreducible ( const Rep P) const
inlineinherited
bool is_irreducible2 ( const Rep P,
Residu_t  MOD 
) const
inherited
bool is_irreducible2 ( const Rep P) const
inlineinherited
Element& random_irreducible ( Element P,
Degree  n 
) const
inherited

random irreducible polynomial

Element& creux_random_irreducible ( Element P,
Degree  n 
) const
inherited

random irreducible polynomial tries to be sparse

Element& ixe_irreducible ( Element R,
Degree  n 
) const
inherited

random irreducible polynomial with X as primitive root

Element& ixe_irreducible2 ( Element R,
Degree  n 
) const
inherited

random irreducible polynomial with X as primitive root

IntegerDom::Element order ( const Rep P,
const Rep F 
) const
inherited
bool is_prim_root ( const Rep P,
const Rep F 
) const
inherited
Rep& random_prim_root ( Rep P,
Rep R,
Degree  n 
) const
inherited
Rep& give_random_prim_root ( Rep R,
const Rep F 
) const
inherited
Rep& give_prim_root ( Rep R,
const Rep F 
) const
inherited

Field Documentation

GivRandom _g
mutableprotectedinherited

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