Struct kimchi::proof::ProofEvaluations
source · pub struct ProofEvaluations<Evals> {Show 26 fields
pub public: Option<Evals>,
pub w: [Evals; 15],
pub z: Evals,
pub s: [Evals; 6],
pub coefficients: [Evals; 15],
pub generic_selector: Evals,
pub poseidon_selector: Evals,
pub complete_add_selector: Evals,
pub mul_selector: Evals,
pub emul_selector: Evals,
pub endomul_scalar_selector: Evals,
pub range_check0_selector: Option<Evals>,
pub range_check1_selector: Option<Evals>,
pub foreign_field_add_selector: Option<Evals>,
pub foreign_field_mul_selector: Option<Evals>,
pub xor_selector: Option<Evals>,
pub rot_selector: Option<Evals>,
pub lookup_aggregation: Option<Evals>,
pub lookup_table: Option<Evals>,
pub lookup_sorted: [Option<Evals>; 5],
pub runtime_lookup_table: Option<Evals>,
pub runtime_lookup_table_selector: Option<Evals>,
pub xor_lookup_selector: Option<Evals>,
pub lookup_gate_lookup_selector: Option<Evals>,
pub range_check_lookup_selector: Option<Evals>,
pub foreign_field_mul_lookup_selector: Option<Evals>,
}
Expand description
Polynomial evaluations contained in a ProverProof
.
- Chunked evaluations
Field
is instantiated with vectors with a length that equals the length of the chunk - Non chunked evaluations
Field
is instantiated with a field, so they are single-sized#serde_as
Fields§
§public: Option<Evals>
public input polynomials
w: [Evals; 15]
witness polynomials
z: Evals
permutation polynomial
s: [Evals; 6]
permutation polynomials (PERMUTS-1 evaluations because the last permutation is only used in commitment form)
coefficients: [Evals; 15]
coefficient polynomials
generic_selector: Evals
evaluation of the generic selector polynomial
poseidon_selector: Evals
evaluation of the poseidon selector polynomial
complete_add_selector: Evals
evaluation of the elliptic curve addition selector polynomial
mul_selector: Evals
evaluation of the elliptic curve variable base scalar multiplication selector polynomial
emul_selector: Evals
evaluation of the endoscalar multiplication selector polynomial
endomul_scalar_selector: Evals
evaluation of the endoscalar multiplication scalar computation selector polynomial
range_check0_selector: Option<Evals>
evaluation of the RangeCheck0 selector polynomial
range_check1_selector: Option<Evals>
evaluation of the RangeCheck1 selector polynomial
foreign_field_add_selector: Option<Evals>
evaluation of the ForeignFieldAdd selector polynomial
foreign_field_mul_selector: Option<Evals>
evaluation of the ForeignFieldMul selector polynomial
xor_selector: Option<Evals>
evaluation of the Xor selector polynomial
rot_selector: Option<Evals>
evaluation of the Rot selector polynomial
lookup_aggregation: Option<Evals>
evaluation of lookup aggregation polynomial
lookup_table: Option<Evals>
evaluation of lookup table polynomial
lookup_sorted: [Option<Evals>; 5]
evaluation of lookup sorted polynomials
runtime_lookup_table: Option<Evals>
evaluation of runtime lookup table polynomial
runtime_lookup_table_selector: Option<Evals>
evaluation of the runtime lookup table selector polynomial
xor_lookup_selector: Option<Evals>
evaluation of the Xor range check pattern selector polynomial
lookup_gate_lookup_selector: Option<Evals>
evaluation of the Lookup range check pattern selector polynomial
range_check_lookup_selector: Option<Evals>
evaluation of the RangeCheck range check pattern selector polynomial
foreign_field_mul_lookup_selector: Option<Evals>
evaluation of the ForeignFieldMul range check pattern selector polynomial
Implementations§
source§impl<Eval> ProofEvaluations<Eval>
impl<Eval> ProofEvaluations<Eval>
source§impl<F: Zero + Copy> ProofEvaluations<PointEvaluations<F>>
impl<F: Zero + Copy> ProofEvaluations<PointEvaluations<F>>
pub fn dummy_with_witness_evaluations( curr: [F; 15], next: [F; 15] ) -> ProofEvaluations<PointEvaluations<F>>
source§impl<F: FftField> ProofEvaluations<PointEvaluations<Vec<F>>>
impl<F: FftField> ProofEvaluations<PointEvaluations<Vec<F>>>
pub fn combine( &self, pt: &PointEvaluations<F> ) -> ProofEvaluations<PointEvaluations<F>>
source§impl<F> ProofEvaluations<F>
impl<F> ProofEvaluations<F>
pub fn get_column(&self, col: Column) -> Option<&F>
Trait Implementations§
source§impl<Evals: Clone> Clone for ProofEvaluations<Evals>
impl<Evals: Clone> Clone for ProofEvaluations<Evals>
source§fn clone(&self) -> ProofEvaluations<Evals>
fn clone(&self) -> ProofEvaluations<Evals>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more