Triple-kernel (Coq/Lean/Verus) CUB theorem corpus with in-crate proof-to-code bindings — mixed-snapshot scoped

Scoped
Scope boundary: Mixed-corpus snapshot — closure is per-file / manifest-scoped, NOT a blanket zero-axiom certificate. The proofs are standalone: 0/476 Verus specs import the runtime crates, so the corpus does not formally verify the shipping Rust.

Claim

cubie-tf and cubie-research ship a triple-kernel formal proof corpus (Coq 8.18, Lean 4, Verus) keyed by CUB theorem IDs. The published cubie-tf snapshot (baseline commit c3d4ae27, verified SHA-256 0a60569...fbbd) is a MIXED corpus: coq/ 487 files, lean/ 563 files, verus/ 476 files — containing both closed proofs and statement-form/stub material. It is NOT a blanket zero-axiom / proof-closure certificate; its own published library MANIFEST (/objects/cubie-tf/verified-proofs/2026-07-04/MANIFEST.md) says "Do not cite the full ZIP as uniformly verified evidence" and names known-unclosed files (coq/CUB_2000_CubeObjectSize192.v Admitted; verus/cubie_adversarial_robustness_theorem_spec.rs ensures-true stub). Live re-measured flagged counts on the snapshot: Coq 138/487 files contain an `Admitted` token, Lean 258/563 contain a `sorry` token, Verus 142/476 contain a stub marker (external_body 42, ensures-true 77, assume 51) — but these are coarse file-presence upper bounds: many hits are in comments (e.g. only ~52/563 Lean files have `sorry` on a non-comment line), so genuinely-unclosed file counts are materially lower. The proofs are STANDALONE: 0/476 verus specs import the crates, and CI runs the Verus kernel check with `verus --crate-type lib` on the spec files STANDALONE (proof-kernel-check.yml over the spec corpus, exit 1 on failure; proof-kernel-verification.yml a hard gate, continue-on-error:false, on the narrow CUB-1940..1966 TEP band proofs/*/tep/CUB_19[4-6][0-9]_*), so the corpus does NOT formally verify the runtime crate code. Proof-to-code binding is by CUB-ID cross-reference plus behavioral Rust tests, not Verus-over-runtime: CUB-1921 (Page-CUSUM aggregator) has coq/CubieCusumAggregator.v + lean/CubieCusumAggregator.lean + verus/cubie_cusum_aggregator_spec.rs (proofs), cubie-tep/src/cusum.rs (code), and cubie-tep/tests/cusum_wiring.rs (behavioral OR-gate wiring test naming CUB-1921). Separately, in-crate `verus! {}` blocks bind directly to the shipping exec fns (cubie-core/src/replay.rs, cubie-platform/src/uah.rs, etc.) — ~62 files / ~429 blocks across the runtime crates, cubie-core the majority — and erase to plain Rust under a normal cargo build. A REPORT-ONLY CI job ('Verus in-crate wiring' in proof-kernel-check.yml, continue-on-error, pinned Verus 0.2026.05.24) runs `verus --crate-type lib` over ~51 wired runtime files; being report-only it SURFACES pass/fail but does NOT block merge, and closure over all in-crate files is partial. Documented locally verified (Verus 0.2026.05.03, `--crate-type lib`, 0 errors): 6 files / 105 obligations — agent_stress.rs 12, cube_topology.rs 21, ising_hamiltonian.rs 5, ramen_corner.rs 17, belnap.rs 32, landauer.rs 18 (docs/audit/2026-07-12_verus_in_crate_binding_evidence.md). Tracked live at the unified registry's meta.in_crate_verus (https://registry.trustfortress.ai). The v6 TEP whitepaper (repo cubie-math revision, 2026-05-26) claims a broader envelope — CUB-0704..CUB-1966 (1,966 unique IDs), 1,145 IDs with full triple-kernel parity, and substantive (no admit/sorry) CI-enforced bodies specifically for the CUB-1940..1966 band; those are whitepaper-revision numbers, not the cubie-tf snapshot's live verified-ID count. cubie-research holds a SEPARATE, tightly-scoped triple-kernel corpus (proofs/coq 36, lean4 22, verus 23; provenance commit 1e8c3e26): CUB-TSP-001–006, 008–012, 014–016 (14 proven in all three kernels) with Coq coqchk `Axioms: <none>`, Lean on 3 standard axioms (no sorry), Verus no assume/admit — but its README explicitly bounds this as a seal over axiom-free Coq DEFINITIONS ("trivial" on definitions), not a P vs NP result.

Direct downloads (public — lib.trustfortress.ai)

v6 TEP whitepaper (CUB-0704..1966, 1145-ID triple parity, CUB-1940..1966 substantive; cubie-math revision 2026-05-26)

Source evidence (pinned)

cubie-tf coq/ proof dir (487 .v files at snapshot baseline)
🔒 Sourcecubie-tf/coq/CubieCusumAggregator.v@c3d4ae27private repo
cubie-tf lean/ proof dir (563 .lean files at snapshot baseline)
🔒 Sourcecubie-tf/lean/CubieCusumAggregator.lean@c3d4ae27private repo
cubie-tf verus/ proof dir (476 .rs files; standalone, 0 import crates)
🔒 Sourcecubie-tf/verus/cubie_cusum_aggregator_spec.rs@c3d4ae27private repo
CUB-1921 proof-to-code binding: cusum.rs runtime code
🔒 Sourcecubie-tf/cubie-tep/src/cusum.rs@c3d4ae27private repo
CUB-1921 behavioral wiring test binding proof-ID to live TepDetector
🔒 Sourcecubie-tf/cubie-tep/tests/cusum_wiring.rs@c3d4ae27private repo
In-crate verus! block (erases under cargo build; not CI-verified against runtime)
🔒 Sourcecubie-tf/cubie-core/src/replay.rs@c3d4ae27private repo
In-crate proof-to-code verification via the report-only 'Verus in-crate wiring' CI job (proof-kernel-check.yml): `verus --crate-type lib` over ~51 wired runtime files. Documented locally verified: 6 files / 105 obligations, 0 errors (agent_stress 12, cube_topology 21, ising_hamiltonian 5, ramen_corner 17, belnap 32, landauer 18) — docs/audit/2026-07-12_verus_in_crate_binding_evidence.md. Report-only => surfaces pass/fail, not a hard gate; closure over all in-crate files is partial. Live count at registry meta.in_crate_verus.
🔒 Sourcecubie-tf/cubie-core/src/belnap.rs@3ca82b4bprivate repo
CI Verus kernel check runs `verus --crate-type lib` on the spec files standalone; proof-kernel-verification.yml is a hard gate (continue-on-error:false) on the CUB-1940..1966 TEP band, and 0/476 specs import the runtime crates — so CI does not formally verify the runtime crate code.
🔒 Sourcecubie-tf/.github/workflows/proof-kernel-verification.yml@88ef7e83private repo
Known-unclosed example flagged by manifest (Admitted)
🔒 Sourcecubie-tf/coq/CUB_2000_CubeObjectSize192.v@c3d4ae27private repo
Published proof-corpus MANIFEST (scoping: mixed snapshot, not uniformly verified)
Locked IPemail-gated IP
Published proof-corpus ZIP snapshot (2723732 bytes, SHA-256 verified live)
Locked IPemail-gated IPsha256 0a60569028a0b6653444510343e435d35b57af9cdf044c39e808cca43a19fbbd
cubie-research proofs/coq (36 .v, CUB-TSP band, coqchk Axioms: none on definitions)
🔒 Sourcecubie-research/proofs/coq/CubTsp001.v@1e8c3e26private repo
cubie-research proofs/lean4 (22 .lean, 3 standard axioms, no sorry)
🔒 Sourcecubie-research/proofs/lean4/CubTsp001.lean@1e8c3e26private repo
cubie-research proofs/verus (23 .rs, no assume/admit)
🔒 Sourcecubie-research/proofs/verus/cub_tsp_001.rs@1e8c3e26private repo
cubie-research proof SHA-256 ledger (127 files, provers coq 8.18.0 / lean4 4.31.0 / verus 0.2026.06.28)
🔒 Sourcecubie-research/ledger/proof_hashes.json@1e8c3e26private repo
cubie-research canonical verification script
🔒 Sourcecubie-research/tools/verify_proofs.ps1@1e8c3e26private repo

Reproduce this result

# 1. Verify the published cubie-tf snapshot ZIP hash.
git archive --format=zip -o cubie-tf-verified-proofs-corpus-20260704.zip c3d4ae2783f4de9403dd3a3f02abcc1cc8a53a08 coq/ lean/ verus/
sha256sum cubie-tf-verified-proofs-corpus-20260704.zip   # git-archive ZIP container hashes are Git/toolchain-sensitive; use the published object below as canonical
# Download the published object directly and hash it:
curl -sL -o corpus.zip 'https://lib.trustfortress.ai/objects/cubie-tf%2Fverified-proofs%2F2026-07-04%2Fcubie-tf-verified-proofs-corpus-20260704.zip' && sha256sum corpus.zip   # must equal 0a60569028a0b6653444510343e435d35b57af9cdf044c39e808cca43a19fbbd
# 2. Re-measure file counts and real-vs-flagged binding counts on the snapshot:
unzip -q corpus.zip -d ex
find ex/coq -name '*.v' | wc -l        # 487
find ex/lean -name '*.lean' | wc -l    # 563
find ex/verus -name '*.rs' | wc -l     # 476
grep -rlE '\bAdmitted\b' ex/coq --include='*.v' | wc -l     # 138 files (coarse upper bound; some in comments)
grep -rlE '\bsorry\b' ex/lean --include='*.lean' | wc -l    # 258 files raw; ~52 with sorry on a non-comment line
grep -rlE 'external_body|ensures[[:space:]]+true\b|assume\(' ex/verus --include='*.rs' | wc -l  # 142 files
grep -rlE 'use +crate::|use +cubie_core|extern crate cubie' ex/verus --include='*.rs' | wc -l    # 0 -> standalone, not runtime-wired
# 3. Per-kernel verifier checks on a CLOSED file (scoped, not the whole ZIP):
coqc ex/coq/CubieCusumAggregator.v && coqchk ex/coq/CubieCusumAggregator.vo   # expect Axioms: <none> on closed modules
lake env lean ex/lean/CubieCusumAggregator.lean   # then '#print axioms <thm>' per theorem
verus --crate-type lib ex/verus/cubie_cusum_aggregator_spec.rs   # standalone per-file check in CI; NOT report-only
# 4. cubie-research triple-kernel corpus (clone iamdatanick/cubie-research at 1e8c3e26):
pwsh tools/verify_proofs.ps1 -Build   # runs all proofs + coqchk Axioms: <none> audit + SHA-256 ledger integrity
python tools/gen_sha_ledger.py --check # verify ledger/proof_hashes.json root_sha256 7881e3a9...d54

Verification checks

Known boundaries / open gaps

Fact-checked 2026-08-03 · status Scoped · source pins cubie-tf 88ef7e8303ed / cubie-research 1e8c3e2690c0 · canonical JSON at /api/claims · registry index