Allow CS being none for into_edwards (#16)

* allow cs being none for into_edwards
This commit is contained in:
Weikeng Chen
2020-11-16 01:39:07 -08:00
committed by GitHub
parent 18824c0c83
commit edc9a8ce02

View File

@@ -135,14 +135,18 @@ mod montgomery_affine_impl {
u.mul_equals(&self.y, &self.x)?; u.mul_equals(&self.y, &self.x)?;
let v = F::new_witness(ark_relations::ns!(cs, "v"), || { let v = F::new_variable(
let mut t0 = self.x.value()?; ark_relations::ns!(cs, "v"),
let mut t1 = t0; || {
t0 -= &P::BaseField::one(); let mut t0 = self.x.value()?;
t1 += &P::BaseField::one(); let mut t1 = t0;
t0 -= &P::BaseField::one();
t1 += &P::BaseField::one();
Ok(t0 * &t1.inverse().ok_or(SynthesisError::DivisionByZero)?) Ok(t0 * &t1.inverse().ok_or(SynthesisError::DivisionByZero)?)
})?; },
mode,
)?;
let xplusone = &self.x + P::BaseField::one(); let xplusone = &self.x + P::BaseField::one();
let xminusone = &self.x - P::BaseField::one(); let xminusone = &self.x - P::BaseField::one();