Fix is_zero for twisted Edwards curves (#101)

* fix the te is_zero

* update CHANGELOG

Co-authored-by: onewayfunc <onewayfunc@gmail.com>
This commit is contained in:
Weikeng Chen
2022-09-03 19:20:07 -07:00
committed by GitHub
parent 6512e48540
commit 6b1cfd5396
3 changed files with 3 additions and 1 deletions

View File

@@ -186,6 +186,7 @@ jobs:
echo "ark-ec = { git = 'https://github.com/arkworks-rs/algebra' }"
echo "ark-ff = { git = 'https://github.com/arkworks-rs/algebra' }"
echo "ark-poly = { git = 'https://github.com/arkworks-rs/algebra' }"
echo "ark-relations = { git = 'https://github.com/arkworks-rs/snark' }"
echo "ark-serialize = { git = 'https://github.com/arkworks-rs/algebra' }"
echo "ark-algebra-bench-templates = { git = 'https://github.com/arkworks-rs/algebra' }"
echo "ark-algebra-test-templates = { git = 'https://github.com/arkworks-rs/algebra' }"

View File

@@ -18,6 +18,7 @@
### Bug Fixes
- [\#101](https://github.com/arkworks-rs/r1cs-std/pull/101) Fix `is_zero` for twisted Edwards curves.
- [\#86](https://github.com/arkworks-rs/r1cs-std/pull/86) Make result of `query_position_to_coset` consistent with `ark-ldt`.
- [\#77](https://github.com/arkworks-rs/r1cs-std/pull/77) Fix BLS12 `G2PreparedGadget`'s `AllocVar` when G2 uses a divisive twist.

View File

@@ -423,7 +423,7 @@ where
}
fn is_zero(&self) -> Result<Boolean<<P::BaseField as Field>::BasePrimeField>, SynthesisError> {
self.x.is_zero()?.and(&self.x.is_one()?)
self.x.is_zero()?.and(&self.y.is_one()?)
}
#[tracing::instrument(target = "r1cs", skip(cs, f))]