zorch.verify¶
Sumcheck replay driver — the dual of prove.
Stops at the reduced point-claim: the final final_claim == oracle(point) check
needs a PCS opening, so it is the consumer's and this block stays scheme- and
PCS-agnostic. The bound point rides the carry rather than a per-step output, so
a round reports only its verdict and every recurrence shape shares one protocol.
verify ¶
verify(
verifier: VerifierRound[RunningClaim, Array],
claim: Array,
proof: Array,
transcript: Transcript,
) -> tuple[Array, Array, Transcript, Array]
Replay proof against claim → (point, final_claim, transcript, ok).
ok ANDs every round's check; one false anywhere rejects the proof.
Requires a device-FS transcript. fs_on_host keeps the sponge
host-resident as an eager primitive, so it cannot be traced.
Source code in zorch/verify.py
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | |