The executor runs any contiguous range of a segment from a carried-in position and emits a boundary per transaction (cumulative gas and pgas, the carry link, the state root natively); the planner cuts at transaction boundaries to at most S_p pgas (provisional S_p = B_p / 4, the specification has no number yet), deterministically from the trace. Witnesses are partial Merkle Patricia tries (touched leaves in full, every untouched subtree as a hash, collapse-safe siblings carried) for the account trie and each touched storage trie; the guest rebuilds the pre-root from them, refuses any read they do not cover, and rebuilds the post-root after execution. The shard statement commits the prover's payout address (ledger P12) and the carry links; the block statement verifies the shard proofs in order, chains roots, links and transaction commitments, and carries the provers and the shard program id (design 5.1, 5.3). Port moved to igneum-exec b7fca5a0 (spec 7.5 pgas cap and abort). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| fixtures | ||
| igneum-prove | ||
| windows-wsl2 | ||
| README.md | ||
proving
Igneum proving v0 (3 October 2026): the first SP1 proof of an Igneum block. Plan and scope: docs/plans/proving-v0.md.
igneum-prove/: Cargo workspace.core(the block statement, a port of the execution layer's executor),program(the SP1 guest),host(execute, core, compressed modes; the versionedProofSystemtrait with the stub and the SP1 implementation inhost/src/proof_system.rs),export(cuts a real block out of anigneum_exportSegmentsdump and checks the port against the node's state roots).fixtures/: real simnet blocks,block-78-increment.json(the Counterincrement(5)call) andblock-56-transfers.json(three transfers).windows-wsl2/: SETUP-PROVER.bat, PROVE-BLOCK.bat and the Linux scripts for Josh's PC;make-package.shbuilds the zip.
Build and run on a machine with the SP1 toolchain (curl -L https://sp1up.succinct.xyz | bash && sp1up):
cd proving/igneum-prove
cargo build --release -p igneum-prove-export
./target/release/igneum-prove-export ../../tools/evm-smoke/seq.json 78 ../fixtures/block-78-increment.json
cargo build --release -p igneum-prove-host # add --features igneum-prove-host/cuda on Linux x86_64 with an NVIDIA card
./target/release/igneum-prove-host ../fixtures/block-78-increment.json --mode execute # native check + cycle count
SP1_PROVER=cuda ./target/release/igneum-prove-host ../fixtures/block-78-increment.json --mode all --out results.json