diff --git a/ecc/bls12-377/twistededwards/point.go b/ecc/bls12-377/twistededwards/point.go index f8e953b2f..00d0bfe67 100644 --- a/ecc/bls12-377/twistededwards/point.go +++ b/ecc/bls12-377/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bls12-378/twistededwards/point.go b/ecc/bls12-378/twistededwards/point.go index ba15bd171..7d89fe2f7 100644 --- a/ecc/bls12-378/twistededwards/point.go +++ b/ecc/bls12-378/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bls12-381/bandersnatch/point.go b/ecc/bls12-381/bandersnatch/point.go index 62edd905b..4c9d8593c 100644 --- a/ecc/bls12-381/bandersnatch/point.go +++ b/ecc/bls12-381/bandersnatch/point.go @@ -461,11 +461,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -498,11 +493,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bls12-381/twistededwards/point.go b/ecc/bls12-381/twistededwards/point.go index 5e6d156d0..9cc65643f 100644 --- a/ecc/bls12-381/twistededwards/point.go +++ b/ecc/bls12-381/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bls24-315/twistededwards/point.go b/ecc/bls24-315/twistededwards/point.go index 134acfe0d..54f9a1892 100644 --- a/ecc/bls24-315/twistededwards/point.go +++ b/ecc/bls24-315/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bls24-317/twistededwards/point.go b/ecc/bls24-317/twistededwards/point.go index 5195a1740..6ecf0a703 100644 --- a/ecc/bls24-317/twistededwards/point.go +++ b/ecc/bls24-317/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bn254/twistededwards/point.go b/ecc/bn254/twistededwards/point.go index d883b553f..7855b89b3 100644 --- a/ecc/bn254/twistededwards/point.go +++ b/ecc/bn254/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bw6-633/twistededwards/point.go b/ecc/bw6-633/twistededwards/point.go index 6c4125e75..1f0c3ad77 100644 --- a/ecc/bw6-633/twistededwards/point.go +++ b/ecc/bw6-633/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bw6-756/twistededwards/point.go b/ecc/bw6-756/twistededwards/point.go index 3714d6f4c..fb7a3580b 100644 --- a/ecc/bw6-756/twistededwards/point.go +++ b/ecc/bw6-756/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X). diff --git a/ecc/bw6-761/twistededwards/point.go b/ecc/bw6-761/twistededwards/point.go index 27910c378..c5e3ff21c 100644 --- a/ecc/bw6-761/twistededwards/point.go +++ b/ecc/bw6-761/twistededwards/point.go @@ -486,11 +486,6 @@ func (p *PointExtended) FromAffine(p1 *PointAffine) *PointExtended { // Add adds points in extended coordinates // See https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd-2 func (p *PointExtended) Add(p1, p2 *PointExtended) *PointExtended { - if p1.Equal(p2) { - p.Double(p1) - return p - } - var A, B, C, D, E, F, G, H, tmp fr.Element A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) @@ -523,11 +518,6 @@ func (p *PointExtended) MixedAdd(p1 *PointExtended, p2 *PointAffine) *PointExten A.Mul(&p2.X, &p1.Z) B.Mul(&p2.Y, &p1.Z) - if p1.X.Equal(&A) && p1.Y.Equal(&B) { - p.MixedDouble(p1) - return p - } - A.Mul(&p1.X, &p2.X) B.Mul(&p1.Y, &p2.Y) C.Mul(&p1.Z, &p2.X).