diff --git a/evm/src/fixed_recursive_verifier.rs b/evm/src/fixed_recursive_verifier.rs index 06333b27..4908dfbc 100644 --- a/evm/src/fixed_recursive_verifier.rs +++ b/evm/src/fixed_recursive_verifier.rs @@ -46,8 +46,8 @@ use crate::proof::{PublicValues, PublicValuesTarget, StarkProofWithMetadata}; use crate::prover::prove; use crate::recursive_verifier::{ add_common_recursion_gates, add_virtual_public_values, recursive_stark_circuit, - set_block_metadata_target, set_trie_roots_target, PlonkWrapperCircuit, PublicInputs, - StarkWrapperCircuit, + set_block_metadata_target, set_public_value_targets, set_trie_roots_target, + PlonkWrapperCircuit, PublicInputs, StarkWrapperCircuit, }; use crate::stark::Stark; @@ -813,25 +813,10 @@ where &self.aggregation.circuit.verifier_only, ); - set_block_metadata_target( + set_public_value_targets( &mut root_inputs, - &self.root.public_values.block_metadata, - &all_proof.public_values.block_metadata, - ); - - root_inputs.set_target( - self.root.public_values.cpu_trace_len, - F::from_canonical_usize(all_proof.public_values.cpu_trace_len), - ); - set_trie_roots_target( - &mut root_inputs, - &self.root.public_values.trie_roots_before, - &all_proof.public_values.trie_roots_before, - ); - set_trie_roots_target( - &mut root_inputs, - &self.root.public_values.trie_roots_after, - &all_proof.public_values.trie_roots_after, + &self.root.public_values, + &all_proof.public_values, ); let root_proof = self.root.circuit.prove(root_inputs)?; diff --git a/evm/src/recursive_verifier.rs b/evm/src/recursive_verifier.rs index b9b36dcd..975fa419 100644 --- a/evm/src/recursive_verifier.rs +++ b/evm/src/recursive_verifier.rs @@ -636,7 +636,6 @@ pub(crate) fn set_stark_proof_target, W, const D: set_fri_proof_target(witness, &proof_target.opening_proof, &proof.opening_proof); } -#[allow(unused)] // TODO: used later? pub(crate) fn set_public_value_targets( witness: &mut W, public_values_target: &PublicValuesTarget, @@ -660,6 +659,10 @@ pub(crate) fn set_public_value_targets( &public_values_target.block_metadata, &public_values.block_metadata, ); + witness.set_target( + public_values_target.cpu_trace_len, + F::from_canonical_usize(public_values.cpu_trace_len), + ); } pub(crate) fn set_trie_roots_target(