arnaucube
arnaucube/ark-r1cs-stdPublic Self-hosted repository
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
commit

6b1cfd5396b2f0bc5be4e97174512847641a060f

parent

6512e48540cf98d4bb9e1a4b2badd077867f510a

3 files changed, 3 insertions(+), 1 deletions(-)

jump to
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))]