• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/amule/libcryptoxx-5.6.0/

Lines Matching refs:PolynomialMod2

17 class CRYPTOPP_DLL PolynomialMod2
26 DivideByZero() : Exception(OTHER_ERROR, "PolynomialMod2: division by zero") {}
35 PolynomialMod2();
37 PolynomialMod2(const PolynomialMod2& t);
44 PolynomialMod2(word value, size_t bitLength=WORD_BITS);
47 PolynomialMod2(const byte *encodedPoly, size_t byteCount)
51 PolynomialMod2(BufferedTransformation &encodedPoly, size_t byteCount)
55 PolynomialMod2(RandomNumberGenerator &rng, size_t bitcount)
59 static PolynomialMod2 CRYPTOPP_API Monomial(size_t i);
61 static PolynomialMod2 CRYPTOPP_API Trinomial(size_t t0, size_t t1, size_t t2);
63 static PolynomialMod2 CRYPTOPP_API Pentanomial(size_t t0, size_t t1, size_t t2, size_t t3, size_t t4);
65 static PolynomialMod2 CRYPTOPP_API AllOnes(size_t n);
68 static const PolynomialMod2 & CRYPTOPP_API Zero();
70 static const PolynomialMod2 & CRYPTOPP_API One();
126 bool Equals(const PolynomialMod2 &rhs) const;
132 PolynomialMod2& operator=(const PolynomialMod2& t);
134 PolynomialMod2& operator&=(const PolynomialMod2& t);
136 PolynomialMod2& operator^=(const PolynomialMod2& t);
138 PolynomialMod2& operator+=(const PolynomialMod2& t) {return *this ^= t;}
140 PolynomialMod2& operator-=(const PolynomialMod2& t) {return *this ^= t;}
142 PolynomialMod2& operator*=(const PolynomialMod2& t);
144 PolynomialMod2& operator/=(const PolynomialMod2& t);
146 PolynomialMod2& operator%=(const PolynomialMod2& t);
148 PolynomialMod2& operator<<=(unsigned int);
150 PolynomialMod2& operator>>=(unsigned int);
164 void swap(PolynomialMod2 &a) {reg.swap(a.reg);}
172 PolynomialMod2 operator+() const {return *this;}
174 PolynomialMod2 operator-() const {return *this;}
180 PolynomialMod2 And(const PolynomialMod2 &b) const;
182 PolynomialMod2 Xor(const PolynomialMod2 &b) const;
184 PolynomialMod2 Plus(const PolynomialMod2 &b) const {return Xor(b);}
186 PolynomialMod2 Minus(const PolynomialMod2 &b) const {return Xor(b);}
188 PolynomialMod2 Times(const PolynomialMod2 &b) const;
190 PolynomialMod2 DividedBy(const PolynomialMod2 &b) const;
192 PolynomialMod2 Modulo(const PolynomialMod2 &b) const;
195 PolynomialMod2 operator>>(unsigned int n) const;
197 PolynomialMod2 operator<<(unsigned int n) const;
209 PolynomialMod2 Doubled() const {return Zero();}
211 PolynomialMod2 Squared() const;
216 PolynomialMod2 MultiplicativeInverse() const {return IsUnit() ? One() : Zero();}
219 static PolynomialMod2 CRYPTOPP_API Gcd(const PolynomialMod2 &a, const PolynomialMod2 &n);
221 PolynomialMod2 InverseMod(const PolynomialMod2 &) const;
224 static void CRYPTOPP_API Divide(PolynomialMod2 &r, PolynomialMod2 &q, const PolynomialMod2 &a, const PolynomialMod2 &d);
230 friend std::ostream& operator<<(std::ostream& out, const PolynomialMod2 &a);
240 inline bool operator==(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b)
243 inline bool operator!=(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b)
246 inline bool operator> (const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b)
249 inline bool operator>=(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b)
252 inline bool operator< (const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b)
255 inline bool operator<=(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b)
258 inline CryptoPP::PolynomialMod2 operator&(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b) {return a.And(b);}
260 inline CryptoPP::PolynomialMod2 operator^(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b) {return a.Xor(b);}
262 inline CryptoPP::PolynomialMod2 operator+(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b) {return a.Plus(b);}
264 inline CryptoPP::PolynomialMod2 operator-(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b) {return a.Minus(b);}
266 inline CryptoPP::PolynomialMod2 operator*(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b) {return a.Times(b);}
268 inline CryptoPP::PolynomialMod2 operator/(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b) {return a.DividedBy(b);}
270 inline CryptoPP::PolynomialMod2 operator%(const CryptoPP::PolynomialMod2 &a, const CryptoPP::PolynomialMod2 &b) {return a.Modulo(b);}
273 // but before the use of QuotientRing<EuclideanDomainOf<PolynomialMod2> > for VC .NET 2003
274 CRYPTOPP_DLL_TEMPLATE_CLASS AbstractGroup<PolynomialMod2>;
275 CRYPTOPP_DLL_TEMPLATE_CLASS AbstractRing<PolynomialMod2>;
276 CRYPTOPP_DLL_TEMPLATE_CLASS AbstractEuclideanDomain<PolynomialMod2>;
277 CRYPTOPP_DLL_TEMPLATE_CLASS EuclideanDomainOf<PolynomialMod2>;
278 CRYPTOPP_DLL_TEMPLATE_CLASS QuotientRing<EuclideanDomainOf<PolynomialMod2> >;
281 class CRYPTOPP_DLL GF2NP : public QuotientRing<EuclideanDomainOf<PolynomialMod2> >
284 GF2NP(const PolynomialMod2 &modulus);
337 mutable PolynomialMod2 result;
346 : GF2NP(PolynomialMod2::Pentanomial(t0, t1, t2, t3, t4)), t0(t0), t1(t1), t2(t2), t3(t3) {}
362 template<> inline void swap(CryptoPP::PolynomialMod2 &a, CryptoPP::PolynomialMod2 &b)