diff --git a/halo2_proofs/src/plonk/evaluation.rs b/halo2_proofs/src/plonk/evaluation.rs index 4a5d4036c2..eaf87d6a58 100644 --- a/halo2_proofs/src/plonk/evaluation.rs +++ b/halo2_proofs/src/plonk/evaluation.rs @@ -641,7 +641,7 @@ impl Evaluator { // Π(φ_i(X)) let inputs_prod: C::Scalar = inputs_value .iter() - .fold(C::Scalar::ZERO, |acc, input| acc * input); + .fold(C::Scalar::ONE, |acc, input| acc * input); // t(X) + beta let table_value = table_lookup_evaluator.evaluate( @@ -677,7 +677,7 @@ impl Evaluator { .iter() .enumerate() .filter(|(j, _)| *j != i) - .fold(C::Scalar::ZERO, |acc, (_, x)| acc * *x) + .fold(C::Scalar::ONE, |acc, (_, x)| acc * *x) }) .fold(C::Scalar::ZERO, |acc, x| acc + x); inputs * table_value - inputs_prod * m_coset[idx] diff --git a/halo2_proofs/src/plonk/mv_lookup/verifier.rs b/halo2_proofs/src/plonk/mv_lookup/verifier.rs index aec20919ec..5e4921dce2 100644 --- a/halo2_proofs/src/plonk/mv_lookup/verifier.rs +++ b/halo2_proofs/src/plonk/mv_lookup/verifier.rs @@ -91,7 +91,7 @@ impl Evaluated { instance_evals: &[C::Scalar], challenges: &[C::Scalar], ) -> impl Iterator + 'a { - let active_rows = C::Scalar::ZERO - (l_last + l_blind); + let active_rows = C::Scalar::ONE - (l_last + l_blind); /* φ_i(X) = f_i(X) + beta @@ -132,7 +132,7 @@ impl Evaluated { let tau = t_eval + *beta; // Π(φ_i(X)) - let prod_fi = f_evals.iter().fold(C::Scalar::ZERO, |acc, eval| acc * eval); + let prod_fi = f_evals.iter().fold(C::Scalar::ONE, |acc, eval| acc * eval); // ∑ 1/(φ_i(X)) let sum_inv_fi = { f_evals.batch_invert();