Skip to content
This repository has been archived by the owner on Apr 9, 2024. It is now read-only.

fix: initialize recursive proof output to zero #524

Merged
merged 3 commits into from
Sep 4, 2023
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 10 additions & 2 deletions acvm/src/pwg/blackbox/mod.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
use acir::{
circuit::opcodes::{BlackBoxFuncCall, FunctionInput},
native_types::{Witness, WitnessMap},
FieldElement,
};
use blackbox_solver::{blake2s, keccak256, sha256};

use super::{OpcodeNotSolvable, OpcodeResolutionError};
use super::{insert_value, OpcodeNotSolvable, OpcodeResolutionError};
use crate::BlackBoxFunctionSolver;

mod fixed_base_scalar_mul;
Expand Down Expand Up @@ -150,6 +151,13 @@
BlackBoxFuncCall::FixedBaseScalarMul { input, outputs } => {
fixed_base_scalar_mul(backend, initial_witness, *input, *outputs)
}
BlackBoxFuncCall::RecursiveAggregation { .. } => Ok(()),
BlackBoxFuncCall::RecursiveAggregation { output_aggregation_object, .. } => {
// Solve the output of the recursive aggregation to zero to prevent missing assignement errors

Check warning on line 155 in acvm/src/pwg/blackbox/mod.rs

View workflow job for this annotation

GitHub Actions / Spellcheck / Spellcheck

Unknown word (assignement)
guipublic marked this conversation as resolved.
Show resolved Hide resolved
// The correct value will be computed by the backend
for witness in output_aggregation_object {
insert_value(witness, FieldElement::zero(), initial_witness)?;
}
Ok(())
}
}
}
Loading