11 PrivateFunctionExecutionMockCircuitProducer& circuit_producer,
auto& precomputed_vks)
13 const size_t NUM_CIRCUITS = circuit_producer.total_num_circuits;
14 Chonk ivc{ NUM_CIRCUITS };
16 BB_ASSERT_EQ(precomputed_vks.size(), NUM_CIRCUITS,
"There should be a precomputed VK for each circuit");
18 for (
size_t circuit_idx = 0; circuit_idx < NUM_CIRCUITS; ++circuit_idx) {
22 circuit = circuit_producer.create_next_circuit(ivc);
25 ivc.accumulate(circuit, precomputed_vks[circuit_idx]);
27 return { ivc.prove(), ivc.get_hiding_kernel_vk_and_hash() };
50 PrivateFunctionExecutionMockCircuitProducer& circuit_producer)
52 const size_t NUM_CIRCUITS = circuit_producer.total_num_circuits;
53 Chonk ivc{ NUM_CIRCUITS };
56 for (
size_t j = 0; j < NUM_CIRCUITS; ++j) {
58 auto circuit = circuit_producer.create_next_circuit(ivc);
59 const bool is_hiding_kernel = (j == NUM_CIRCUITS - 1);
60 auto vk = PrivateFunctionExecutionMockCircuitProducer::get_verification_key(circuit, is_hiding_kernel);
62 ivc.accumulate(circuit,
vk);