Skip to content

@noir:proof

Project the proof JSON bound by noir:prove into the argument tuple of its Solidity UltraHonk verifier: [proof publicInputs] for verify(bytes,bytes32[])(bool). Destructure with set [$p $signals] @noir:proof($proof).

⚗️ Experimental — available at next.evmcrispr.com.

Returns: array

@noir:proof(proof)
NameTypeDescription
proofstringProof JSON string bound by noir:prove
set $src <<<NOIR
fn main(x: Field, y: pub Field) {
assert(x != y);
}
NOIR
noir:prove $proof --noir $src --inputs [x:3 y:5]
set [$p $signals] @noir:proof($proof)
exec $verifier "verify(bytes,bytes32[])(bool)" $p $signals

The tuple matches the generated HonkVerifier ABI: proof as one bytes blob and the public inputs as a bytes32[] array (one 32-byte word per public input, in calldata order).