barretenberg icon indicating copy to clipboard operation
barretenberg copied to clipboard

Only create witnesses for VK and pub inputs in ivc recursion constraint

Open ledwards2225 opened this issue 4 months ago • 0 comments

Currently an ACIR ivc recursion constraint requires witnesses corresponding to the VK, the public inputs, and the proof (without public inputs). The VK and public inputs are genuinely known in the noir program at runtime but the proof is not (since computing the proof requires running the full IVC up to that point). Currently we create dummy witnesses for the proof anyway then link them to the genuine witnesses in the backend. This isn't necessary, requires knowledge of the proof size, and could be misleading. Instead, only create (genuine) witnesses for the VK and public inputs and not the proof.

ledwards2225 avatar Oct 02 '24 18:10 ledwards2225