Struct ark_r1cs_std::poly::domain::vanishing_poly::VanishingPolynomial
source · pub struct VanishingPolynomial<F: Field> {
pub constant_term: F,
pub dim_h: u64,
pub order_h: u64,
}
Expand description
Struct describing vanishing polynomial for a multiplicative coset H where |H| is a power of 2. As H is a coset, every element can be described as h*g^i and therefore has vanishing polynomial Z_H(x) = x^|H| - h^|H|
Fields§
§constant_term: F
h^|H|
dim_h: u64
log_2(|H|)
order_h: u64
|H|
Implementations§
source§impl<F: PrimeField> VanishingPolynomial<F>
impl<F: PrimeField> VanishingPolynomial<F>
sourcepub fn evaluate(&self, x: &F) -> F
pub fn evaluate(&self, x: &F) -> F
Evaluates the vanishing polynomial without generating the constraints.
sourcepub fn evaluate_constraints(
&self,
x: &FpVar<F>
) -> Result<FpVar<F>, SynthesisError>
pub fn evaluate_constraints(
&self,
x: &FpVar<F>
) -> Result<FpVar<F>, SynthesisError>
Evaluates the constraints and just gives you the gadget for the result. Caution for use in holographic lincheck: The output has 2 entries in one matrix