def testRsub(self): # Fp - Fq s = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(1, 1)], self.F3), self.F81) result = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(0, 1), (1, 2)], self.F3), self.F81) self.assertEqual(result, self.F3.one - s) # Z -Fq self.assertEqual(result, 1 - s)
def testAdd(self): s = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(1, 1)], self.F3), self.F81) t = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(0, 1), (1, 1)], self.F3), self.F81) result = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(0, 1), (1, 2)], self.F3), self.F81) self.assertEqual(result, s + t) self.assertEqual(t, s + self.F81.one) self.assertEqual(t, s + self.F3.one)
def testSub(self): s = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(1, 1)], self.F3), self.F81) t = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(0, 1), (1, 1)], self.F3), self.F81) result = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(0, 2)], self.F3), self.F81) tluser = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(0, 1)], self.F3), self.F81) self.assertEqual(result, s - t) self.assertEqual(tluser, t - s) self.assertEqual(self.F81.zero, s - s)
def testNorm(self): a3 = FiniteExtendedFieldElement( FinitePrimeFieldPolynomial([(3, 1)], self.F3), self.F81) self.assertTrue(a3.norm() in self.F3, repr(a3.norm()))