Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

AbstractGroup< T > Class Template Reference

#include <algebra.h>

Inheritance diagram for AbstractGroup< T >:

AbstractRing< T > AbstractRing< EuclideanDomainOf< PolynomialMod2 >::Element > AbstractRing< T::Element > AbstractEuclideanDomain< T > QuotientRing< T > QuotientRing< EuclideanDomainOf< PolynomialMod2 > > EuclideanDomainOf< T > GF2NP GF2NPP GF2NT List of all members.

Detailed Description

template<class T>
class AbstractGroup< T >

Abstract Group.

Definition at line 19 of file algebra.h.

Public Types

typedef T Element

Public Member Functions

virtual bool Equal (const Element &a, const Element &b) const=0
virtual const Element & Identity () const=0
virtual const Element & Add (const Element &a, const Element &b) const=0
virtual const Element & Inverse (const Element &a) const=0
virtual bool InversionIsFast () const
virtual const Element & Double (const Element &a) const
virtual const Element & Subtract (const Element &a, const Element &b) const
virtual Element & Accumulate (Element &a, const Element &b) const
virtual Element & Reduce (Element &a, const Element &b) 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


The documentation for this class was generated from the following files:
Generated on Sun Mar 14 20:44:30 2004 for Crypto++ by doxygen 1.3.6-20040222