From 8e07058ad2456c53b6ff3f104f221168b59d0c6c Mon Sep 17 00:00:00 2001 From: Daniel Lubarov Date: Tue, 1 Feb 2022 09:00:22 -0800 Subject: [PATCH] Remove `inner_config` param - redundant with `inner_common_data` (#453) * Remove inner_config param - redundant with inner_common_data * import * imports --- plonky2/src/plonk/recursive_verifier.rs | 59 +++++++------------------ 1 file changed, 15 insertions(+), 44 deletions(-) diff --git a/plonky2/src/plonk/recursive_verifier.rs b/plonky2/src/plonk/recursive_verifier.rs index fccaea5c..3e4260a9 100644 --- a/plonky2/src/plonk/recursive_verifier.rs +++ b/plonky2/src/plonk/recursive_verifier.rs @@ -3,7 +3,7 @@ use plonky2_field::extension_field::Extendable; use crate::hash::hash_types::{HashOutTarget, RichField}; use crate::iop::challenger::RecursiveChallenger; use crate::plonk::circuit_builder::CircuitBuilder; -use crate::plonk::circuit_data::{CircuitConfig, CommonCircuitData, VerifierCircuitTarget}; +use crate::plonk::circuit_data::{CommonCircuitData, VerifierCircuitTarget}; use crate::plonk::config::{AlgebraicHasher, GenericConfig}; use crate::plonk::proof::{OpeningSetTarget, ProofTarget, ProofWithPublicInputsTarget}; use crate::plonk::vanishing_poly::eval_vanishing_poly_recursively; @@ -16,7 +16,6 @@ impl, const D: usize> CircuitBuilder { pub fn verify_proof_with_pis>( &mut self, proof_with_pis: ProofWithPublicInputsTarget, - inner_config: &CircuitConfig, inner_verifier_data: &VerifierCircuitTarget, inner_common_data: &CommonCircuitData, ) where @@ -33,7 +32,6 @@ impl, const D: usize> CircuitBuilder { self.verify_proof( proof, public_inputs_hash, - inner_config, inner_verifier_data, inner_common_data, ); @@ -44,7 +42,6 @@ impl, const D: usize> CircuitBuilder { &mut self, proof: ProofTarget, public_inputs_hash: HashOutTarget, - inner_config: &CircuitConfig, inner_verifier_data: &VerifierCircuitTarget, inner_common_data: &CommonCircuitData, ) where @@ -52,7 +49,7 @@ impl, const D: usize> CircuitBuilder { { let one = self.one_extension(); - let num_challenges = inner_config.num_challenges; + let num_challenges = inner_common_data.config.num_challenges; let mut challenger = RecursiveChallenger::::new(self); @@ -211,7 +208,7 @@ mod tests { use crate::fri::FriConfig; use crate::gates::noop::NoopGate; use crate::iop::witness::{PartialWitness, Witness}; - use crate::plonk::circuit_data::VerifierOnlyCircuitData; + use crate::plonk::circuit_data::{CircuitConfig, VerifierOnlyCircuitData}; use crate::plonk::config::{GenericConfig, KeccakGoldilocksConfig, PoseidonGoldilocksConfig}; use crate::plonk::proof::{CompressedProofWithPublicInputs, ProofWithPublicInputs}; use crate::plonk::prover::prove; @@ -228,7 +225,7 @@ mod tests { let (proof, vd, cd) = dummy_proof::(&config, 4_000)?; let (proof, _vd, cd) = - recursive_proof::(proof, vd, cd, &config, &config, None, true, true)?; + recursive_proof::(proof, vd, cd, &config, None, true, true)?; test_serialization(&proof, &cd)?; Ok(()) @@ -250,12 +247,12 @@ mod tests { // Shrink it to 2^13. let (proof, vd, cd) = - recursive_proof::(proof, vd, cd, &config, &config, Some(13), false, false)?; + recursive_proof::(proof, vd, cd, &config, Some(13), false, false)?; assert_eq!(cd.degree_bits, 13); // Shrink it to 2^12. let (proof, _vd, cd) = - recursive_proof::(proof, vd, cd, &config, &config, None, true, true)?; + recursive_proof::(proof, vd, cd, &config, None, true, true)?; assert_eq!(cd.degree_bits, 12); test_serialization(&proof, &cd)?; @@ -281,16 +278,7 @@ mod tests { assert_eq!(cd.degree_bits, 12); // A standard recursive proof. - let (proof, vd, cd) = recursive_proof( - proof, - vd, - cd, - &standard_config, - &standard_config, - None, - false, - false, - )?; + let (proof, vd, cd) = recursive_proof(proof, vd, cd, &standard_config, None, false, false)?; assert_eq!(cd.degree_bits, 12); // A high-rate recursive proof, designed to be verifiable with fewer routed wires. @@ -303,16 +291,8 @@ mod tests { }, ..standard_config }; - let (proof, vd, cd) = recursive_proof::( - proof, - vd, - cd, - &standard_config, - &high_rate_config, - None, - true, - true, - )?; + let (proof, vd, cd) = + recursive_proof::(proof, vd, cd, &high_rate_config, None, true, true)?; assert_eq!(cd.degree_bits, 12); // A final proof, optimized for size. @@ -327,16 +307,8 @@ mod tests { }, ..high_rate_config }; - let (proof, _vd, cd) = recursive_proof::( - proof, - vd, - cd, - &high_rate_config, - &final_config, - None, - true, - true, - )?; + let (proof, _vd, cd) = + recursive_proof::(proof, vd, cd, &final_config, None, true, true)?; assert_eq!(cd.degree_bits, 12, "final proof too large"); test_serialization(&proof, &cd)?; @@ -357,11 +329,11 @@ mod tests { let (proof, vd, cd) = dummy_proof::(&config, 4_000)?; let (proof, vd, cd) = - recursive_proof::(proof, vd, cd, &config, &config, None, false, false)?; + recursive_proof::(proof, vd, cd, &config, None, false, false)?; test_serialization(&proof, &cd)?; let (proof, _vd, cd) = - recursive_proof::(proof, vd, cd, &config, &config, None, false, false)?; + recursive_proof::(proof, vd, cd, &config, None, false, false)?; test_serialization(&proof, &cd)?; Ok(()) @@ -398,7 +370,6 @@ mod tests { inner_proof: ProofWithPublicInputs, inner_vd: VerifierOnlyCircuitData, inner_cd: CommonCircuitData, - inner_config: &CircuitConfig, config: &CircuitConfig, min_degree_bits: Option, print_gate_counts: bool, @@ -417,14 +388,14 @@ mod tests { pw.set_proof_with_pis_target(&inner_proof, &pt); let inner_data = VerifierCircuitTarget { - constants_sigmas_cap: builder.add_virtual_cap(inner_config.fri_config.cap_height), + constants_sigmas_cap: builder.add_virtual_cap(inner_cd.config.fri_config.cap_height), }; pw.set_cap_target( &inner_data.constants_sigmas_cap, &inner_vd.constants_sigmas_cap, ); - builder.verify_proof_with_pis(pt, inner_config, &inner_data, &inner_cd); + builder.verify_proof_with_pis(pt, &inner_data, &inner_cd); if print_gate_counts { builder.print_gate_counts(0);