def test_gf2m_mod__neg(self): """ Negative tests for gf2m_mod(a,f) """ # Not meant to be called with other values than int or long self.failUnlessRaises(AttributeError, ar.gf2m_mod, 0.0, 0b110) self.failUnlessRaises(TypeError, ar.gf2m_mod, "asdf", 0b110) self.failUnlessEqual(ar.gf2m_mod(-0b101110, 0b10011), 0b1000) self.failUnlessEqual(ar.gf2m_mod(0b101110, -0b10011), 0b1000) self.failUnlessEqual(ar.gf2m_mod(-0b101110, -0b10011), 0b1000)
def test_gf2m_mod__neg(self): """ Negative tests for gf2m_mod(a,f) """ # Not meant to be called with other values than int or long self.failUnlessRaises(AttributeError, ar.gf2m_mod, 0.0, 0b110) self.failUnlessRaises(TypeError, ar.gf2m_mod, "asdf", 0b110) self.failUnlessEqual(ar.gf2m_mod(-0b101110,0b10011), 0b1000) self.failUnlessEqual(ar.gf2m_mod(0b101110,-0b10011), 0b1000) self.failUnlessEqual(ar.gf2m_mod(-0b101110,-0b10011), 0b1000)
def test_gf2m_mod__pos(self): """ Positive tests gf2m_mod(a, f) Sage test calculations:: sage: F.<x> = GF(2)[] sage: a = x^5 + x^3 + x^2 + x # a = 0b101110 sage: f = x^4 + x +1 # f = 0b10011 sage: c.mod(f) x^3 # == 0b1000 sage: a = x^4 + x^3 + x^2 + x + 1 # a = 0b11111 sage: a.mod(f) x^3 + x^2 sage: a = x^13 + x^12 + x^11 + x^10 + x^9 + x^8 + x^6 + x^5 + x^4 + x^3 + x^2 + x # a = 0b11111101111110 sage: f = x^8 + x^4 + x^3 + x + 1 # f = 0b100011011 sage: a.mod(fx) 1 sage: f = x^4 + x +1 # f = 0b10011 sage: a = x^3 + x # a = 0b1010 sage: a.mod(fx) x^3 + x --- sage: f = x^4 + x + 1 sage: a = x^0 # a == 1 sage: a.mod(f) 1 sage: a = x^0 + 1 # a == 1 + 1 == 0 sage: a.mod(f) 0 """ self.failUnlessEqual(ar.gf2m_mod(0b101110, 0b10011), 0b1000) self.failUnlessEqual(ar.gf2m_mod(0b11111, 0b10011), 0b1100) self.failUnlessEqual(ar.gf2m_mod(0b11111101111110, 0b100011011), 0b1) self.failUnlessEqual(ar.gf2m_mod(0b1010, 0b10011), 0b1010) self.failUnlessEqual(ar.gf2m_mod(0b0, 0b10011), 0b0) self.failUnlessEqual(ar.gf2m_mod(0b1, 0b10011), 0b1)
def test_gf2m_mod__pos(self): """ Positive tests gf2m_mod(a, f) Sage test calculations:: sage: F.<x> = GF(2)[] sage: a = x^5 + x^3 + x^2 + x # a = 0b101110 sage: f = x^4 + x +1 # f = 0b10011 sage: c.mod(f) x^3 # == 0b1000 sage: a = x^4 + x^3 + x^2 + x + 1 # a = 0b11111 sage: a.mod(f) x^3 + x^2 sage: a = x^13 + x^12 + x^11 + x^10 + x^9 + x^8 + x^6 + x^5 + x^4 + x^3 + x^2 + x # a = 0b11111101111110 sage: f = x^8 + x^4 + x^3 + x + 1 # f = 0b100011011 sage: a.mod(fx) 1 sage: f = x^4 + x +1 # f = 0b10011 sage: a = x^3 + x # a = 0b1010 sage: a.mod(fx) x^3 + x --- sage: f = x^4 + x + 1 sage: a = x^0 # a == 1 sage: a.mod(f) 1 sage: a = x^0 + 1 # a == 1 + 1 == 0 sage: a.mod(f) 0 """ self.failUnlessEqual(ar.gf2m_mod(0b101110,0b10011), 0b1000) self.failUnlessEqual(ar.gf2m_mod(0b11111,0b10011), 0b1100) self.failUnlessEqual(ar.gf2m_mod(0b11111101111110,0b100011011), 0b1) self.failUnlessEqual(ar.gf2m_mod(0b1010,0b10011), 0b1010) self.failUnlessEqual(ar.gf2m_mod(0b0,0b10011), 0b0) self.failUnlessEqual(ar.gf2m_mod(0b1,0b10011), 0b1)