Add `ToConstraintFieldGadget` bounds to `CurveVar` and `FieldVar`
winderica winderica@gmail.com
Fri, 05 Apr 2024 05:36:23 +0800
2 files changed,
4 insertions(+),
2 deletions(-)
M
src/fields/mod.rs
→
src/fields/mod.rs
@@ -5,7 +5,7 @@ fmt::Debug,
ops::{Add, AddAssign, Mul, MulAssign, Sub, SubAssign}, }; -use crate::convert::{ToBitsGadget, ToBytesGadget}; +use crate::convert::{ToBitsGadget, ToBytesGadget, ToConstraintFieldGadget}; use crate::prelude::*; /// This module contains a generic implementation of cubic extension field@@ -76,6 +76,7 @@ + ToBitsGadget<ConstraintF>
+ AllocVar<F, ConstraintF> + ToBytesGadget<ConstraintF> + CondSelectGadget<ConstraintF> + + ToConstraintFieldGadget<ConstraintF> + for<'a> FieldOpsBounds<'a, F, Self> + for<'a> AddAssign<&'a Self> + for<'a> SubAssign<&'a Self>
M
src/groups/mod.rs
→
src/groups/mod.rs
@@ -1,5 +1,5 @@
use crate::{ - convert::{ToBitsGadget, ToBytesGadget}, + convert::{ToBitsGadget, ToBytesGadget, ToConstraintFieldGadget}, fields::emulated_fp::EmulatedFpVar, prelude::*, };@@ -41,6 +41,7 @@ + EqGadget<ConstraintF>
+ CondSelectGadget<ConstraintF> + AllocVar<C, ConstraintF> + AllocVar<C::Affine, ConstraintF> + + ToConstraintFieldGadget<ConstraintF> + for<'a> GroupOpsBounds<'a, C, Self> + for<'a> AddAssign<&'a Self> + for<'a> SubAssign<&'a Self>