Skip to content

recursion v2 leaf verifier circuit and prover #1365

Description

@kunxian-xia

Parent: #1266

Implement the recursion-v2 leaf-level verifier circuit and prover wrapper for Ceno app-level proofs.

Goal

Build the first recursive leaf layer that takes one or more Ceno app-level proofs as input, verifies them inside the recursion-v2 AIR stack, and produces an OpenVM v2 proof for that verifier circuit.

Expected behavior

  • Accept multiple app-level Ceno proofs, verifying keys, and public inputs as leaf inputs.
  • Run proof preflight for all registered leaf verifier modules.
  • Generate traces for every AIR participating in the leaf verifier circuit; placeholder traces are acceptable only for Phase 0 stack wiring where noted in PLAN.md.
  • Bind app proof public values into the recursive public-value flow.
  • Support 1-proof and 2-proof leaf inputs in integration tests.
  • Expose a prover object/orchestrator that can invoke OpenVM v2 CPU or GPU proving for the leaf circuit.
  • Verify the generated recursive proof with the corresponding OpenVM v2 verifier.

Acceptance criteria

  • Leaf prover API can be called from continuation tests with 1 and 2 app proofs.
  • CPU proving path works end-to-end; GPU path is wired behind the existing OpenVM v2 prover selection/configuration if available.
  • Integration test logs proving time, proof size, per-AIR trace heights, and tracegen timing.
  • The implementation aligns with ceno_recursion_v2/PLAN.md Phase 0 and does not block later replacement of placeholder AIR traces with soundness-complete traces.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions