INNER CODE UNIT · Go
TestPairNegativeG2
cloudflare/bn256 · bn256_test.go:217
func TestPairNegativeG2(t *testing.T) {
g1Inf := new(G1).ScalarBaseMult(Order)
g2Inf := new(G2).ScalarBaseMult(Order)
gTInf := Pair(g1Inf, g2Inf)
g1 := new(G1).ScalarBaseMult(big.NewInt(1))
g2 := new(G2).ScalarBaseMult(big.NewInt(1))
p1 := Pair(g1, g2)
pn1 := Pair(new(G1).Neg(g1), g2)
np1 := Pair(g1, new(G2).Neg(g2))
p1np1 := new(GT).Add(p1, np1)
if !bytes.Equal(p1np1.Marshal(), gTInf.Marshal()) {
t.Errorf("p1 * np1 = %v want %v", p1np1, gTInf)
}
if !bytes.Equal(pn1.Marshal(), np1.Marshal()) {
t.Errorf("e(-G1, G2) != e(G1, -G2)")
}