soft3/nox/specs/jets/recursion.md

recursion jets — F_p genesis jets

four genesis jets for nox. committed in genesis BBG state. make recursive proof composition and general-purpose polynomial computation practical.

hash is a separate genesis jet — see hash.

jets

# name signature exec cost constraints pure cost
0 poly_eval poly_eval(coeffs, point) → F_p N ~N ~2N
1 merkle_verify merkle_verify(root, leaf, path, index) → {0,1} d×200 ~d×736 d×~210
2 fri_fold fri_fold(poly_layer, challenge) → poly_layer_next N/2 ~N/2 ~N
3 ntt ntt(values, direction) → transformed values N×log(N) ~N×log(N) ~2N×log(N)

role in current architecture

the zheng verifier is field arithmetic plus hemera Merkle-path checks; its cost is set by the proof-system repair (the constraint count of the retired design does not hold).

jet verifier role general role
poly_eval Brakedown opening verification any polynomial evaluation (Horner)
merkle_verify not used by Brakedown verifier cross-system interop, legacy content proofs
fri_fold not used by Brakedown verifier FRI-based protocols, cross-system interop
ntt not used by Brakedown verifier polynomial multiplication, ring operations

poly_eval is verifier-critical. merkle_verify, fri_fold, and ntt are general-purpose computation jets retained for cross-system interoperability and domain-specific acceleration.

hardware mapping

  • poly_eval → fma (field multiply-accumulate, Horner = iterated FMA)
  • merkle_verify → p2r (Poseidon2 round) via hash jet
  • ntt → ntt (direct correspondence)
  • fri_fold → ntt + fma

PCS

polynomial commitment via the Lens trait, openings authenticated by hemera Merkle paths; the scheme is chosen by the bake-off in the proof-system repair

Homonyms

soft3/zheng/specs/recursion
recursion Incrementally verifiable computation over the nox machine (`rs/src/recursion/`). The step relation of step `i` proves its nox segment *and* that the verifier of step `i − 1` accepted: the verifier runs inside the step's trace as the recursion circuit. A proof of any number of steps is the…
soft3/zheng/docs/explanation/recursion
accumulation, IVC and wrap how zheng turns a nox run of any length into one proof whose size does not depend on the length. three layers, each built and measured on the current code; the contracts are zheng/specs/accumulation|accumulation, zheng/specs/machine|machine and…
soft3/zheng/rs/src/recursion
recursion

Graph