Fix `is_zero` for twisted Edwards curves (#101) * fix the te is_zero * update CHANGELOG Co-authored-by: onewayfunc <onewayfunc@gmail.com>
Weikeng Chen w.k@berkeley.edu
Sat, 03 Sep 2022 19:20:07 -0700
3 files changed,
3 insertions(+),
1 deletions(-)
M
.github/workflows/ci.yml
→
.github/workflows/ci.yml
@@ -186,6 +186,7 @@ echo "ark-std = { git = 'https://github.com/arkworks-rs/std' }"
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' }"
M
CHANGELOG.md
→
CHANGELOG.md
@@ -18,6 +18,7 @@ ### Improvements
### 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.
M
src/groups/curves/twisted_edwards/mod.rs
→
src/groups/curves/twisted_edwards/mod.rs
@@ -423,7 +423,7 @@ Self::new(F::zero(), F::one())
} 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))]