From 4f9aa8879bc99b2e0be75fdba24fa15b1d7294bf Mon Sep 17 00:00:00 2001 From: Daniel Lubarov Date: Fri, 23 Apr 2021 14:25:24 -0700 Subject: [PATCH] Properly use the three betas and gammas ... for the three different `Z`s we use. Before I was just using the first value as a temporary thing. --- src/prover.rs | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/src/prover.rs b/src/prover.rs index 17b52ded..c600c598 100644 --- a/src/prover.rs +++ b/src/prover.rs @@ -96,18 +96,14 @@ pub(crate) fn prove( let alphas = challenger.get_n_challenges(num_checks); - // TODO - let beta = betas[0]; - let gamma = gammas[0]; - let start_vanishing_polys = Instant::now(); let vanishing_polys = compute_vanishing_polys( common_data, prover_data, wire_ldes_t, plonk_z_ldes_t, - beta, - gamma, + &betas, + &gammas, &alphas, ); info!( @@ -170,8 +166,8 @@ fn compute_vanishing_polys( prover_data: &ProverOnlyCircuitData, wire_ldes_t: Vec>, plonk_z_lde_t: Vec>, - beta: F, - gamma: F, + betas: &[F], + gammas: &[F], alphas: &[F], ) -> Vec> { let lde_size = common_data.lde_size(); @@ -208,8 +204,8 @@ fn compute_vanishing_polys( local_plonk_zs, next_plonk_zs, s_sigmas, - beta, - gamma, + betas, + gammas, alphas, ) }) @@ -231,8 +227,8 @@ fn compute_vanishing_poly_entry( local_plonk_zs: &[F], next_plonk_zs: &[F], s_sigmas: &[F], - beta: F, - gamma: F, + betas: &[F], + gammas: &[F], alphas: &[F], ) -> Vec { let constraint_terms = @@ -255,8 +251,8 @@ fn compute_vanishing_poly_entry( let k_i = common_data.k_is[j]; let s_id = k_i * x; let s_sigma = s_sigmas[j]; - f_prime *= wire_value + beta * s_id + gamma; - g_prime *= wire_value + beta * s_sigma + gamma; + f_prime *= wire_value + betas[i] * s_id + gammas[i]; + g_prime *= wire_value + betas[i] * s_sigma + gammas[i]; } vanishing_v_shift_terms.push(f_prime * z_x - g_prime * z_gz); }