pub struct ExternalChecks<F: PrimeField> {
pub multi_ranges: Vec<[F; 3]>,
pub limb_ranges: Vec<F>,
pub compact_multi_ranges: Vec<[F; 2]>,
pub bounds: Vec<[F; 3]>,
pub high_bounds: Vec<F>,
}
Expand description
Track external check witness data
Fields§
§multi_ranges: Vec<[F; 3]>
§limb_ranges: Vec<F>
§compact_multi_ranges: Vec<[F; 2]>
§bounds: Vec<[F; 3]>
§high_bounds: Vec<F>
Implementations§
Source§impl<F: PrimeField> ExternalChecks<F>
impl<F: PrimeField> ExternalChecks<F>
Sourcepub fn add_bound_check(&mut self, limbs: &[F; 3])
pub fn add_bound_check(&mut self, limbs: &[F; 3])
Track a bound check
Sourcepub fn add_high_bound_computation(&mut self, limb: &F)
pub fn add_high_bound_computation(&mut self, limb: &F)
Track a high bound computation
Sourcepub fn add_limb_check(&mut self, limb: &F)
pub fn add_limb_check(&mut self, limb: &F)
Track a limb-range-check
Sourcepub fn add_multi_range_check(&mut self, limbs: &[F; 3])
pub fn add_multi_range_check(&mut self, limbs: &[F; 3])
Track a multi-range-check
Sourcepub fn add_compact_multi_range_check(&mut self, limbs: &[F; 2])
pub fn add_compact_multi_range_check(&mut self, limbs: &[F; 2])
Track a compact-multi-range-check
Sourcepub fn extend_witness_multi_range_checks(&mut self, witness: &mut [Vec<F>; 15])
pub fn extend_witness_multi_range_checks(&mut self, witness: &mut [Vec<F>; 15])
Extend the witness with external multi range_checks
Sourcepub fn extend_witness_compact_multi_range_checks(
&mut self,
witness: &mut [Vec<F>; 15],
)
pub fn extend_witness_compact_multi_range_checks( &mut self, witness: &mut [Vec<F>; 15], )
Extend the witness with external compact multi range_checks
Sourcepub fn extend_witness_limb_checks(&mut self, witness: &mut [Vec<F>; 15])
pub fn extend_witness_limb_checks(&mut self, witness: &mut [Vec<F>; 15])
Extend the witness with external compact multi range_checks
Sourcepub fn extend_witness_bound_addition(
&mut self,
witness: &mut [Vec<F>; 15],
foreign_field_modulus: &[F; 3],
)
pub fn extend_witness_bound_addition( &mut self, witness: &mut [Vec<F>; 15], foreign_field_modulus: &[F; 3], )
Extend the witness with external bound addition as foreign field addition
Sourcepub fn extend_witness_high_bounds_computation(
&mut self,
witness: &mut [Vec<F>; 15],
foreign_field_modulus: &BigUint,
)
pub fn extend_witness_high_bounds_computation( &mut self, witness: &mut [Vec<F>; 15], foreign_field_modulus: &BigUint, )
Extend the witness with external high bounds additions as double generic gates
Trait Implementations§
Source§impl<F: Default + PrimeField> Default for ExternalChecks<F>
impl<F: Default + PrimeField> Default for ExternalChecks<F>
Source§fn default() -> ExternalChecks<F>
fn default() -> ExternalChecks<F>
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl<F> Freeze for ExternalChecks<F>
impl<F> RefUnwindSafe for ExternalChecks<F>where
F: RefUnwindSafe,
impl<F> Send for ExternalChecks<F>
impl<F> Sync for ExternalChecks<F>
impl<F> Unpin for ExternalChecks<F>where
F: Unpin,
impl<F> UnwindSafe for ExternalChecks<F>where
F: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more