Crypto++  5.6.3
Free C++ class library of cryptographic schemes
Classes | Public Types | Public Member Functions | List of all members
RingOfPolynomialsOver< T > Class Template Reference

Ring of polynomials over another ring. More...

+ Inheritance diagram for RingOfPolynomialsOver< T >:

Classes

class  InterpolationFailed
 

Public Types

typedef T CoefficientRing
 
typedef PolynomialOver< T > Element
 
typedef Element::CoefficientType CoefficientType
 
typedef Element::RandomizationParameter RandomizationParameter
 
- Public Types inherited from AbstractEuclideanDomain< PolynomialOver< T > >
typedef PolynomialOver< T > Element
 
- Public Types inherited from AbstractRing< PolynomialOver< T > >
typedef PolynomialOver< T > Element
 
- Public Types inherited from AbstractGroup< PolynomialOver< T > >
typedef PolynomialOver< T > Element
 

Public Member Functions

 RingOfPolynomialsOver (const CoefficientRing &ring)
 
Element RandomElement (RandomNumberGenerator &rng, const RandomizationParameter &parameter)
 
bool Equal (const Element &a, const Element &b) const
 
const ElementIdentity () const
 
const ElementAdd (const Element &a, const Element &b) const
 
ElementAccumulate (Element &a, const Element &b) const
 
const ElementInverse (const Element &a) const
 
const ElementSubtract (const Element &a, const Element &b) const
 
ElementReduce (Element &a, const Element &b) const
 
const ElementDouble (const Element &a) const
 
const ElementMultiplicativeIdentity () const
 
const ElementMultiply (const Element &a, const Element &b) const
 
const ElementSquare (const Element &a) const
 
bool IsUnit (const Element &a) const
 
const ElementMultiplicativeInverse (const Element &a) const
 
const ElementDivide (const Element &a, const Element &b) const
 
const ElementMod (const Element &a, const Element &b) const
 
void DivisionAlgorithm (Element &r, Element &q, const Element &a, const Element &d) const
 
Element Interpolate (const CoefficientType x[], const CoefficientType y[], unsigned int n) const
 
CoefficientType InterpolateAt (const CoefficientType &position, const CoefficientType x[], const CoefficientType y[], unsigned int n) const
 
- Public Member Functions inherited from AbstractEuclideanDomain< PolynomialOver< T > >
virtual const ElementGcd (const Element &a, const Element &b) const
 
- Public Member Functions inherited from AbstractRing< PolynomialOver< T > >
 AbstractRing (const AbstractRing &source)
 
AbstractRingoperator= (const AbstractRing &source)
 
virtual Element Exponentiate (const Element &a, const Integer &e) const
 
virtual Element CascadeExponentiate (const Element &x, const Integer &e1, const Element &y, const Integer &e2) const
 
virtual void SimultaneousExponentiate (Element *results, const Element &base, const Integer *exponents, unsigned int exponentsCount) const
 
virtual const AbstractGroup< PolynomialOver< T > > & MultiplicativeGroup () const
 
- Public Member Functions inherited from AbstractGroup< PolynomialOver< T > >
virtual bool InversionIsFast () const
 
virtual Element ScalarMultiply (const Element &a, const Integer &e) const
 
virtual Element CascadeScalarMultiply (const Element &x, const Integer &e1, const Element &y, const Integer &e2) const
 
virtual void SimultaneousMultiply (Element *results, const Element &base, const Integer *exponents, unsigned int exponentsCount) const
 

Detailed Description

template<class T>
class RingOfPolynomialsOver< T >

Ring of polynomials over another ring.

Definition at line 318 of file polynomi.h.


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