public void One_initializes() { Fp6 _ = Fp6.One; Assert.AreEqual(Fp2.One, _.A, "A"); Assert.AreEqual(Fp2.Zero, _.B, "B"); Assert.AreEqual(Fp2.Zero, _.C, "C"); }
public void Double_cross_check() { Fp2 a2 = new Fp2(Parameters.P / 2, Parameters.P / 4); Fp6 a = new Fp6(a2, a2, a2); Assert.True(a.IsValid()); Assert.AreEqual(a.Double(), a.Add(a)); }
public void Square_cross_check() { Fp2 a2 = new Fp2(Parameters.P / 2, Parameters.P / 4); Fp6 a = new Fp6(a2, a2, a2); Assert.True(a.IsValid()); Assert.AreEqual(a.Squared(), a.Mul(a)); }
public void Negate_negate() { Fp2 a2 = new Fp2(Parameters.P / 2, Parameters.P / 4); Fp6 a = new Fp6(a2, a2, a2); Assert.True(a.IsValid()); Assert.AreEqual(a, a.Negate().Negate()); }
public void Inverse_mul_self() { Fp2 a2 = new Fp2(Parameters.P / 2, Parameters.P / 4); Fp6 a = new Fp6(a2, a2, a2); Assert.True(a.IsValid()); Assert.AreEqual(Fp6.One, a.Mul(a.Inverse())); }
public void Inverse_inverse() { Fp2 a2 = new Fp2(Parameters.P / 2, Parameters.P / 4); Fp6 a = new Fp6(a2, a2, a2); Assert.True(a.IsValid()); Assert.AreEqual(a, a.Inverse().Inverse()); }
public void Unitary_inverse_seems_fine() { // ReSharper disable once EqualExpressionComparison Fp6 oneOneOne = new Fp6(Fp2.One, Fp2.One, Fp2.One); Fp12 unitaryInverted = new Fp12(oneOneOne, oneOneOne).UnitaryInverse(); Assert.AreEqual(oneOneOne, unitaryInverted.A, "A"); Assert.AreEqual(oneOneOne.Negate(), unitaryInverted.B, "B"); }
public void Add_negate() { Fp2 a2 = new Fp2(Parameters.P / 2, Parameters.P / 4); Fp6 a = new Fp6(a2, a2, a2); Assert.True(a.IsValid()); Assert.AreEqual(Fp6.Zero, a.Add(a.Negate())); Assert.AreEqual(Fp6.Zero, a.Negate().Add(a)); }
public void Square_cross_check() { Fp2 a2 = new Fp2(Parameters.P / 2, Parameters.P / 4); Fp6 a6 = new Fp6(a2, a2, a2); Fp12 a12 = new Fp12(a6, a6); Assert.True(a12.IsValid()); Assert.AreEqual(a12.Squared(), a12.Mul(a12)); }
public void Inverse_mul_self_is_commutative_regression() { Fp2 a2 = new Fp2(Parameters.P / 2, Parameters.P / 4); Fp6 a = new Fp6(a2, a2, a2); Assert.True(a.IsValid()); Fp6 inv = a.Inverse(); Assert.AreEqual(a.Mul(inv), inv.Mul(a)); }