Theorem Inventory
Find a registered Lean theorem by name, property, or source file, and read the model boundary it carries.
On this page
Each of the 165 theorem entries in Chio's published source inventory appears here with its Lean name, source file, property mapping, and claim class.
Search an exact identifier, a property such as P1, a claim class, or a source filename. The prose under each theorem is the inventory's note; the linked source holds the formal statement and proof.
Search all 165 theorems and the reading guidance, or choose a section.
Reading an entry
A theorem names a proposition over particular definitions and inputs. Its property mapping names the architectural claim it supports, and its claim class names the kind of evidence. The statement and its implementation connection set how far that evidence reaches.
| Claim class | Inspect | Boundary |
|---|---|---|
bounded_model | The Lean model, quantified inputs, and premises | The model's actual domain, which may use unbounded Nat and lists; the deployed Rust has separate evidence |
aeneas_ | Whether the row is a mirror fact or a generated machine-value theorem | The extracted functions; runtime callers and effects have separate evidence |
symbolic_crypto | The symbolic hash or verification model and its assumptions | The symbolic model; the cryptographic primitive and its implementation have separate evidence |
The rootImported and optional status fields are registry declarations. A verification result also needs a successful gate run at the intended source revision. An entry without a status field reads “not recorded”, exactly as the inventory leaves it.
Capability monotonicity entry
The headline P1 entry is spec.capability_monotonicity. Its premise is that the child scope passes the modeled subset check, and its conclusion is that a parent grant covers every child grant.
/-- P1: Capability monotonicity -- if a child scope is a subset of a parent
scope, then every grant in the child is covered by some grant in the
parent.
This is the core Chio safety property: delegation can only attenuate,
never amplify. -/
theorem capability_monotonicity (parent child : ChioScope)
(h : child.isSubsetOf parent = true) :
∀ g, g ∈ child.grants →
∃ pg, pg ∈ parent.grants ∧ g.isSubsetOf pg = true := by
intro g h_mem
unfold ChioScope.isSubsetOf at h
exact List.any_eq_true.mp (List.all_eq_true.mp h g h_mem)The theorem is conditional: it proves grant coverage when child.isSubsetOf parent = true, and it says nothing about a proposed child that fails the check. The source statement quantifies over the Lean ChioScope model; runtime scope normalization, delegation admission, and other effects have their own evidence.
The optional-cap mirror theorem is a narrower fact about preserving a parent's numeric cap. The generated-equivalence module supplies the extraction-side proof step for registered helpers. Continue with P1: Capability Monotonicity or the Lean proof walkthrough.
Symbolic-hash axiom
The inventory lists its one assumed axiom apart from the theorem entries. Chio.Json.hash_collision_resistant supplies a SymbolicHash: an output type, a digest function over canonical bytes, and an injectivity proof. The formal development assumes that structure, and SHA-256 itself stays an external contract.
The Lean declaration and the approved axiom list must agree with the inventory's assumption row. SHA-256 hashing is the contract ASSUME-SHA256.
Inspect the approved axiom and its inventory record
allowed_axioms = [
# Symbolic collision resistance over the image of the mechanized canonical
# UTF-8 renderer. This is the Lean idealization registered as ASSUME-SHA256.
"Chio.Json.hash_collision_resistant",
]"assumptions": [
{
"id": "assume.hash.collision_resistant",
"leanName": "Chio.Json.hash_collision_resistant",
"file": "formal/lean4/Chio/Chio/Json/Hash.lean",
"kind": "axiom",
"rootImported": true,
"claimClass": "symbolic_crypto",
"status": "assumed",
"mapsTo": ["P4", "P7"],
"notes": "Symbolic hash collision resistance over the image of the mechanized canonical UTF-8 renderer. This is the sole explicit root-imported Lean axiom and is registered one-to-one as ASSUME-SHA256; concrete SHA-256 remains outside Lean."
}
],Capability algebra
Scope coverage, attenuation and delegation facts over the declared Lean capability model.
core. scope. empty_ isSubsetOf
Structural empty-scope attenuation lemma over the bounded ChioScope model.
- Lean name
Chio.Core. ChioScope. empty_ isSubsetOf - Statement & proof
- Core/Scope.lean
core. tool_ grant. isSubsetOf_ refl
Reflexivity lemma for ToolGrant subset in the bounded capability model.
- Lean name
Chio.Core. ToolGrant. isSubsetOf_ refl - Statement & proof
- Core/Scope.lean
spec. capability_ monotonicity
Primary attenuation theorem over ChioScope grants only; no Rust refinement proof yet.
- Lean name
Chio.Spec. capability_ monotonicity - Statement & proof
- Spec/Properties.lean
spec. empty_ scope_ monotonicity
Shows the empty scope is always a valid attenuation in the bounded model.
- Lean name
Chio.Spec. empty_ scope_ monotonicity - Statement & proof
- Spec/Properties.lean
spec. scope_ budgets_ nonnegative
Budget theorem is about Nat-valued maxInvocations in the reduced model only.
- Lean name
Chio.Spec. scope_ budgets_ nonnegative - Statement & proof
- Spec/Properties.lean
proof. list_ isSubsetOf_ trans
Helper theorem for subset transitivity over bounded lists.
- Lean name
Chio.Proofs. list_ isSubsetOf_ trans - Statement & proof
- Proofs/Monotonicity.lean
proof. scope_ subset_ of_ grants_ subset
Bridges grant-wise subset assumptions into ChioScope subset truth.
- Lean name
Chio.Proofs. scope_ subset_ of_ grants_ subset - Statement & proof
- Proofs/Monotonicity.lean
proof. wildcard_ subsumes
Bounded wildcard-subsumption theorem for tool-name matching.
- Lean name
Chio.Proofs. wildcard_ subsumes - Statement & proof
- Proofs/Monotonicity.lean
proof. reduced_ budget_ is_ subset
Budget-tightening attenuation theorem over maxInvocations only.
- Lean name
Chio.Proofs. reduced_ budget_ is_ subset - Statement & proof
- Proofs/Monotonicity.lean
proof. added_ constraint_ is_ subset
Additional constraint makes a ToolGrant more restrictive in the bounded model.
- Lean name
Chio.Proofs. added_ constraint_ is_ subset - Statement & proof
- Proofs/Monotonicity.lean
proof. delegation_ chain_ integrity
Covers presented delegation-chain narrowing, not full runtime graph acyclicity.
- Lean name
Chio.Proofs. delegation_ chain_ integrity - Statement & proof
- Proofs/Monotonicity.lean
theorem. attenuation. witness_ soundness
Chain-binding soundness: a v2 capability token is admitted by the verifier iff its attenuation_proof.parent_scope_hash matches the trust-root scope hash (direct issue) or the last delegation link's signed scope_hash (delegated chain). The root-imported, sorry-free theorem is exercised by the nightly Lean gate; the Rust shell is exercised by crates/tooling/chio-conformance/tests/attenuation_witness_rejects_inflated_parent_scope.rs and the protocol-side check is implemented in chio_core_types::capability::CapabilityToken::validate_chain_binding.
- Lean name
Chio.Proofs. AttenuationWitness. witness_ soundness - Statement & proof
- Proofs/AttenuationWitness.lean
theorem. budget. sibling_ sum_ soundness
Sibling-sum budget enforcement: when the BudgetRegistry admits a child, the running sum after admission is bounded by the parent's share. This rejects cross-hop amplification where two siblings jointly oversubscribe their parent's budget. The root-imported, sorry-free theorem is exercised by the nightly Lean gate; the Rust shell is exercised by crates/tooling/chio-conformance/tests/budget_split_rejects_oversubscribed_siblings.rs and the cross-hop case by crates/tooling/chio-conformance/tests/budget_split_cross_hop_rejects_amplification.rs. The protocol-side check is implemented in chio_kernel_core::budget_split::BudgetSplit::try_admit_child.
- Lean name
Chio.Proofs. SiblingSumBudget. sibling_ sum_ soundness - Statement & proof
- Proofs/SiblingSumBudget.lean
Revocation
Revocation-store model facts. Evaluator and protocol entries below also map to P2; search P2 to see them together.
proof. revoke_ marks_ capability_ revoked
Revoke operation marks the target capability id revoked in the bounded revocation-store model.
- Lean name
Chio.Proofs. revoke_ marks_ capability_ revoked - Statement & proof
- Proofs/Revocation.lean
proof. revoke_ preserves_ existing_ revocation
Adding a revocation does not clear prior revoked capability ids in the bounded revocation-store model.
- Lean name
Chio.Proofs. revoke_ preserves_ existing_ revocation - Statement & proof
- Proofs/Revocation.lean
proof. checkRevocation_ revoked_ token_ errors
A revoked token returns an error in the bounded revocation check.
- Lean name
Chio.Proofs. checkRevocation_ revoked_ token_ errors - Statement & proof
- Proofs/Revocation.lean
proof. checkRevocation_ revoked_ ancestor_ never_ ok
A delegation chain with a revoked ancestor cannot pass the bounded revocation check.
- Lean name
Chio.Proofs. checkRevocation_ revoked_ ancestor_ never_ ok - Statement & proof
- Proofs/Revocation.lean
proof. checkRevocation_ ok_ implies_ not_ revoked
A successful bounded revocation check implies neither token nor presented ancestor is revoked.
- Lean name
Chio.Proofs. checkRevocation_ ok_ implies_ not_ revoked - Statement & proof
- Proofs/Revocation.lean
Evaluation
Allow and denial properties of the Lean evaluator, including time, signature, scope and revocation checks.
proof. evalToolCall_ total
The bounded evaluator always returns either allow or deny.
- Lean name
Chio.Proofs. evalToolCall_ total - Statement & proof
- Proofs/Evaluation.lean
proof. evalToolCall_ invalid_ signature_ denies
Invalid capability signatures deny in the bounded evaluator.
- Lean name
Chio.Proofs. evalToolCall_ invalid_ signature_ denies - Statement & proof
- Proofs/Evaluation.lean
proof. evalToolCall_ not_ yet_ valid_ denies
Capabilities before their validity window deny in the bounded evaluator.
- Lean name
Chio.Proofs. evalToolCall_ not_ yet_ valid_ denies - Statement & proof
- Proofs/Evaluation.lean
proof. evalToolCall_ expired_ denies
Expired capabilities deny in the bounded evaluator.
- Lean name
Chio.Proofs. evalToolCall_ expired_ denies - Statement & proof
- Proofs/Evaluation.lean
proof. evalToolCall_ revoked_ token_ never_ allows
A revoked token cannot produce allow in the bounded evaluator.
- Lean name
Chio.Proofs. evalToolCall_ revoked_ token_ never_ allows - Statement & proof
- Proofs/Evaluation.lean
proof. evalToolCall_ revoked_ ancestor_ never_ allows
A revoked presented ancestor cannot produce allow in the bounded evaluator.
- Lean name
Chio.Proofs. evalToolCall_ revoked_ ancestor_ never_ allows - Statement & proof
- Proofs/Evaluation.lean
proof. evalToolCall_ out_ of_ scope_ denies
Out-of-scope tool calls deny in the bounded evaluator.
- Lean name
Chio.Proofs. evalToolCall_ out_ of_ scope_ denies - Statement & proof
- Proofs/Evaluation.lean
proof. evalToolCall_ all_ checks_ pass_ allow
The bounded evaluator allows when signature, time, revocation, and scope checks all pass.
- Lean name
Chio.Proofs. evalToolCall_ all_ checks_ pass_ allow - Statement & proof
- Proofs/Evaluation.lean
Canonical data, receipts and Merkle evidence
Canonical rendering, modeled receipts and proof traversal. Read each claim class and the explicit symbolic-hash assumption with the statement.
proof. escape_ string_ inj
A checked decoder proves that Chio's C0, DEL, and C1 escaping, short escapes, quotes, reverse solidus, and literal Unicode scalar rendering are injective.
- Lean name
Chio.Proofs. escape_ string_ inj - Statement & proof
- Proofs/CanonicalInjective.lean
proof. render_ int_ inj
Canonical sign and decimal-digit rendering is injective across the signed i64 and unsigned u64 modeled range.
- Lean name
Chio.Proofs. render_ int_ inj - Statement & proof
- Proofs/CanonicalInjective.lean
proof. sorted_ assoc_ ext
Strictly UTF-16-sorted unique object entries are determined by their canonical rendering.
- Lean name
Chio.Proofs. sorted_ assoc_ ext - Statement & proof
- Proofs/CanonicalInjective.lean
proof. canonical_ inj
A proved injective Unicode-scalar-to-UTF-8 boundary plus deterministic lexical recovery and structural parsing establish canonical byte injectivity for normalized integers, scalar strings, and arbitrary finite arrays and objects.
- Lean name
Chio.Proofs. canonical_ inj - Statement & proof
- Proofs/CanonicalInjective.lean
proof. receipt_ id_ input_ collision_ resistant
Equal symbolic identifiers bind an injective named-object projection of all 20 ChioReceiptIdInput fields. The projection follows UTF-16 field-key order and Rust serde omission rules. Compound action, decision, actor-chain, evidence, metadata, and key values must inhabit bounded JValue; production serde correspondence remains ASSUME-CANONICAL-JSON.
- Lean name
Chio.Proofs. receipt_ id_ input_ collision_ resistant - Statement & proof
- Proofs/Receipt.lean
proof. receipt_ id_ collision_ resistant
Equal symbolic receipt identifiers imply equal modeled content and policy hashes as a corollary of full 20-field projection binding plus the audited hash collision-resistance idealization.
- Lean name
Chio.Proofs. receipt_ id_ collision_ resistant - Statement & proof
- Proofs/Receipt.lean
proof. applyProof_ append
Helper theorem for symbolic Merkle-proof composition.
- Lean name
Chio.Proofs. applyProof_ append - Statement & proof
- Proofs/Receipt.lean
proof. membership_ proof_ sound
Merkle inclusion soundness under the symbolic ReceiptTree hash model.
- Lean name
Chio.Proofs. membership_ proof_ sound - Statement & proof
- Proofs/Receipt.lean
proof. membership_ proof_ verifies
Executable verification theorem for symbolic membership proofs.
- Lean name
Chio.Proofs. membership_ proof_ verifies - Statement & proof
- Proofs/Receipt.lean
proof. stepFoldLoop_ eq_ directedProofLoop_ map
Inductive equivalence between the executable hash fold and the direction-tagged proof decoder at the same bounded fuel.
- Lean name
Chio.Proofs. stepFoldLoop_ eq_ directedProofLoop_ map - Statement & proof
- Proofs/MerkleWalk.lean
proof. stepFold_ eq_ directedProof_ map
The checked inclusion walk and direction-tagged proof decoder agree on invalid geometry, carry levels, path consumption, and trailing-path rejection.
- Lean name
Chio.Proofs. stepFold_ eq_ directedProof_ map - Statement & proof
- Proofs/MerkleWalk.lean
proof. stepFold_ eq_ applyProof
A successfully decoded index-directed audit path produces exactly the existing Receipt.applyProof result.
- Lean name
Chio.Proofs. stepFold_ eq_ applyProof - Statement & proof
- Proofs/MerkleWalk.lean
proof. stepFold_ membership_ sound_ if_ geometry_ agrees
Conditional composition of the index-directed fold with membership_proof_sound. The separate bounded geometry theorem discharges traversal shape for the supported domain.
- Lean name
Chio.Proofs. stepFold_ membership_ sound_ if_ geometry_ agrees - Statement & proof
- Proofs/MerkleWalk.lean
proof. boundedWalkGeometry_ decodes
All 36 carry-last-node geometries through eight leaves decode to a direction-tagged proof whose application reaches the declared symbolic root.
- Lean name
Chio.Proofs. boundedWalkGeometry_ decodes - Statement & proof
- Proofs/MerkleWalk.lean
proof. bounded_ stepFold_ sound
The checked fold reaches the declared symbolic root for every leaf index at every tree size from one through eight. Hashing remains under ASSUME-SHA256.
- Lean name
Chio.Proofs. bounded_ stepFold_ sound - Statement & proof
- Proofs/MerkleWalk.lean
proof. checkpoint_ consistency
Checkpoint consistency over the bounded checkpoint-store model.
- Lean name
Chio.Proofs. checkpoint_ consistency - Statement & proof
- Proofs/Receipt.lean
proof. receipt_ sign_ then_ verify
Receipt signature theorem over the symbolic sign/verify model, not Ed25519 implementation proofs.
- Lean name
Chio.Proofs. receipt_ sign_ then_ verify - Statement & proof
- Proofs/Receipt.lean
proof. receipt_ immutability
Tampering theorem under the symbolic receipt-signature model.
- Lean name
Chio.Proofs. receipt_ immutability - Statement & proof
- Proofs/Receipt.lean
Protocol decisions and lifecycle models
Admission, guard composition, budgets, lineage, delivery, reservation transitions and finding-status decisions. These rows retain their individual model boundaries.
proof. admitSession_ invalid_ dpop_ rejects
DPoP-required admission rejects invalid DPoP evidence in the bounded pure admission model.
- Lean name
Chio.Proofs. admitSession_ invalid_ dpop_ rejects - Statement & proof
- Proofs/Protocol.lean
proof. admitSession_ invalid_ anchor_ rejects
Session-anchor-required admission rejects invalid continuation anchors in the bounded pure admission model.
- Lean name
Chio.Proofs. admitSession_ invalid_ anchor_ rejects - Statement & proof
- Proofs/Protocol.lean
proof. budgetPrecheck_ commit_ preserves_ bounds
Successful bounded budget commits cannot increase remaining invocation or unit counters.
- Lean name
Chio.Proofs. budgetPrecheck_ commit_ preserves_ bounds - Statement & proof
- Proofs/Protocol.lean
proof. budgetCommit_ none_ when_ precheck_ fails
Exhausted bounded budget prechecks fail closed with no commit state.
- Lean name
Chio.Proofs. budgetCommit_ none_ when_ precheck_ fails - Statement & proof
- Proofs/Protocol.lean
proof. budgetTwoCommit_ preserves_ bounds
Two accepted sequential bounded budget commits cannot increase remaining counters.
- Lean name
Chio.Proofs. budgetTwoCommit_ preserves_ bounds - Statement & proof
- Proofs/Protocol.lean
proof. clusterOverrun_ bound_ is_ explicit
Clustered mode proof is limited to the explicit max-cost-per-node overrun bound.
- Lean name
Chio.Proofs. clusterOverrun_ bound_ is_ explicit - Statement & proof
- Proofs/Protocol.lean
proof. governedApproval_ required_ without_ token_ fails
Governed actions that require approval fail without a valid approval token in the bounded model.
- Lean name
Chio.Proofs. governedApproval_ required_ without_ token_ fails - Statement & proof
- Proofs/Protocol.lean
proof. governedApproval_ valid_ token_ passes
A valid approval token satisfies the bounded governed-approval model.
- Lean name
Chio.Proofs. governedApproval_ valid_ token_ passes - Statement & proof
- Proofs/Protocol.lean
proof. dpop_ required_ missing_ proof_ rejects
A grant requiring DPoP rejects when no proof is presented in the bounded nonce model.
- Lean name
Chio.Proofs. dpop_ required_ missing_ proof_ rejects - Statement & proof
- Proofs/Protocol.lean
proof. dpop_ required_ invalid_ proof_ rejects
A grant requiring DPoP rejects invalid presented proof evidence in the bounded nonce model.
- Lean name
Chio.Proofs. dpop_ required_ invalid_ proof_ rejects - Statement & proof
- Proofs/Protocol.lean
proof. dpop_ reused_ nonce_ rejects
A live DPoP nonce cannot be admitted a second time in the bounded replay-cache model.
- Lean name
Chio.Proofs. dpop_ reused_ nonce_ rejects - Statement & proof
- Proofs/Protocol.lean
proof. revocationSnapshot_ revoked_ token_ denies
A projected snapshot that marks the presented token revoked denies in the bounded model.
- Lean name
Chio.Proofs. revocationSnapshot_ revoked_ token_ denies - Statement & proof
- Proofs/Protocol.lean
proof. revocationSnapshot_ revoked_ ancestor_ denies
A projected snapshot that marks a presented ancestor revoked denies in the bounded model.
- Lean name
Chio.Proofs. revocationSnapshot_ revoked_ ancestor_ denies - Statement & proof
- Proofs/Protocol.lean
proof. guardPipeline_ deny_ dominates
A guard deny forces the final bounded guard-composition decision to deny.
- Lean name
Chio.Proofs. guardPipeline_ deny_ dominates - Statement & proof
- Proofs/Protocol.lean
proof. guardPipeline_ error_ dominates
A guard error forces the final bounded guard-composition decision to deny.
- Lean name
Chio.Proofs. guardPipeline_ error_ dominates - Statement & proof
- Proofs/Protocol.lean
proof. guardPipeline_ allow_ requires_ core_ authorized
The bounded guard pipeline can allow only if core authorization already passed.
- Lean name
Chio.Proofs. guardPipeline_ allow_ requires_ core_ authorized - Statement & proof
- Proofs/Protocol.lean
proof. wasm_ guest_ output_ confinement
For Chio's bounded core-module dispatch model, executions with the same typed guest output make the same pipeline decision. This is not a proof of wasmtime internals or full engine information-flow non-interference.
- Lean name
Chio.Guards. WasmBoundary. guest_ output_ confinement - Statement & proof
- Guards/WasmBoundary.lean
proof. wasm_ no_ allow_ amplification
No typed wasm guest output can turn coreAuthorized=false into an allowed bounded pipeline result, including when the guard is advisory.
- Lean name
Chio.Guards. WasmBoundary. no_ allow_ amplification - Statement & proof
- Guards/WasmBoundary.lean
proof. wasm_ resource_ exhaustion_ fail_ closed
Fuel exhaustion, memory exhaustion, and traps map to deny for blocking guards in the bounded dispatch model, subject to ASSUME-WASM-ENGINE.
- Lean name
Chio.Guards. WasmBoundary. resource_ exhaustion_ fail_ closed - Statement & proof
- Guards/WasmBoundary.lean
proof. wasm_ advisory_ mode_ nonblocking
Advisory wasm guards are non-blocking by design: denies, malformed verdicts, traps, and resource exhaustion all contribute allow at this guard layer. Core authorization still dominates the final pipeline.
- Lean name
Chio.Guards. WasmBoundary. advisory_ mode_ is_ nonblocking_ by_ design - Statement & proof
- Guards/WasmBoundary.lean
proof. receiptFieldsCoupled_ preserves_ all_ fields
A coupled receipt body preserves capability, request, verdict, policy hash, and evidence class.
- Lean name
Chio.Proofs. receiptFieldsCoupled_ preserves_ all_ fields - Statement & proof
- Proofs/Protocol.lean
proof. observed_ parent_ edge_ sound
Observed local parent edges imply a parent request existed in the same authenticated session.
- Lean name
Chio.Proofs. observed_ parent_ edge_ sound - Statement & proof
- Proofs/Protocol.lean
proof. verified_ receipt_ lineage_ sound
Verified receipt lineage requires both receipts, trusted kernel signature, and signed linkage in the bounded model.
- Lean name
Chio.Proofs. verified_ receipt_ lineage_ sound - Statement & proof
- Proofs/Protocol.lean
proof. session_ continuity_ sound
Verified session continuity requires a valid session anchor and continuation artifact in the bounded model.
- Lean name
Chio.Proofs. session_ continuity_ sound - Statement & proof
- Proofs/Protocol.lean
proof. capability_ lineage_ consistency_ sound
Verified call-chain consistency requires subject and parent capability references to agree in the bounded model.
- Lean name
Chio.Proofs. capability_ lineage_ consistency_ sound - Statement & proof
- Proofs/Protocol.lean
proof. report_ truthfulness_ asserted_ not_ verified
Report/export surfaces cannot upgrade asserted lineage to verified in the bounded label model.
- Lean name
Chio.Proofs. report_ truthfulness_ asserted_ not_ verified - Statement & proof
- Proofs/Protocol.lean
proof. report_ truthfulness_ observed_ not_ verified
Report/export surfaces cannot upgrade observed lineage to verified in the bounded label model.
- Lean name
Chio.Proofs. report_ truthfulness_ observed_ not_ verified - Statement & proof
- Proofs/Protocol.lean
proof. registry_ publish_ requires_ valid_ signature
The bounded certification registry ignores invalidly signed published records.
- Lean name
Chio.Proofs. registry_ publish_ requires_ valid_ signature - Statement & proof
- Proofs/Protocol.lean
proof. registry_ resolve_ published_ valid_ record
A validly signed published certification record resolves from the bounded registry model.
- Lean name
Chio.Proofs. registry_ resolve_ published_ valid_ record - Statement & proof
- Proofs/Protocol.lean
proof. registry_ revoke_ deactivates_ published_ record
Revoking a published record makes that artifact inactive in the bounded registry model.
- Lean name
Chio.Proofs. registry_ revoke_ deactivates_ published_ record - Statement & proof
- Proofs/Protocol.lean
proof. delegation_ step_ allow_ requires_ attenuation
A semantically admitted delegation step requires attenuation.
- Lean name
Chio.Proofs. delegation_ step_ allow_ requires_ attenuation - Statement & proof
- Proofs/FormalClosure.lean
proof. delegation_ step_ allow_ requires_ subject_ continuity
A semantically admitted delegation step requires subject continuity.
- Lean name
Chio.Proofs. delegation_ step_ allow_ requires_ subject_ continuity - Statement & proof
- Proofs/FormalClosure.lean
proof. delegation_ step_ allow_ requires_ expiry_ monotonicity
A semantically admitted delegation step requires expiry monotonicity.
- Lean name
Chio.Proofs. delegation_ step_ allow_ requires_ expiry_ monotonicity - Statement & proof
- Proofs/FormalClosure.lean
proof. delegation_ revoked_ ancestor_ denies
A revoked ancestor denies a delegation step in the bounded semantic model.
- Lean name
Chio.Proofs. delegation_ revoked_ ancestor_ denies - Statement & proof
- Proofs/FormalClosure.lean
proof. delegation_ max_ depth_ failure_ denies
Delegation max-depth failure denies in the bounded semantic model.
- Lean name
Chio.Proofs. delegation_ max_ depth_ failure_ denies - Statement & proof
- Proofs/FormalClosure.lean
proof. dpop_ binding_ allows_ only_ when_ all_ fields_ match
DPoP binding admits only when every modeled binding field matches.
- Lean name
Chio.Proofs. dpop_ binding_ allows_ only_ when_ all_ fields_ match - Statement & proof
- Proofs/FormalClosure.lean
proof. path_ prefix_ rejects_ sibling_ prefix
Path-prefix model rejects sibling-prefix cases.
- Lean name
Chio.Proofs. path_ prefix_ rejects_ sibling_ prefix - Statement & proof
- Proofs/FormalClosure.lean
proof. path_ prefix_ rejects_ normalized_ traversal_ escape
Path-prefix model rejects normalized traversal escape cases.
- Lean name
Chio.Proofs. path_ prefix_ rejects_ normalized_ traversal_ escape - Statement & proof
- Proofs/FormalClosure.lean
theorem. handshake. negotiation_ safety
Fail-closed admission soundness over the whole CurrentSchema domain: checkCurrentSchema admits only when the presented schema is the current Chio-owned one (any non-current schema is rejected before signature, time, floor, or budget checks). The theorem quantifies over all inputs and rules out admitting anything unrecognized, but the model is bounded to a two-constructor schema enum: it does NOT mechanize the wider hot-path verifier (chain-binding, signature, crypto floor, budgets) and does not model alternate Chio-owned capability schema rungs (none are exposed pre-release).
- Lean name
Chio.Proofs. HandshakeNegotiation. negotiation_ admit_ only_ current - Statement & proof
- Proofs/HandshakeNegotiation.lean
theorem. budget. reservation_ conservation
Pure reservation folds preserve reserved = outstanding + committed + released + retained, with admitted child reserves bounded by sibling_sum_soundness. Apalache interleavings, the Kani and Creusot transition witnesses, the debug journal replay, and the stateful real-store test provide independent evidence for the defect family a6d26dbc4, c201afbd0, 84e98b9d0, and 58abf33d2. Scalar admission is linked; production ledger linkage is not established.
- Lean name
Chio.Proofs. ReservationLedger. ledger_ conservation - Statement & proof
- Proofs/ReservationLedger.lean
theorem. budget. reservation_ terminal_ unique
A finalized pure ledger is absorbing: it cannot reserve again or receive a second positive terminal disposition. Committed and released amount buckets may both be non-zero after partial realization, while the trace still has one terminal hold classification. The theorem is model-level; concrete hold terminality is checked by the debug journal replay and stateful real-store test, not by a production refinement proof.
- Lean name
Chio.Proofs. ReservationLedger. ledger_ terminal_ unique - Statement & proof
- Proofs/ReservationLedger.lean
proof. delivery_ contract. settlement_ admission_ sound
Over finite requirement, evidence, and opaque digest domains, settlement admission implies Allow and proves every required finding purchase is verified and every required output digest matches. The M3 Rust linkage covers the digest comparison; the finding-purchase dimension is the explicit M4 composition boundary. This is not a Rust refinement proof and does not model SHA-256, canonical JSON, signatures, persistence, payment rails, or external settlement.
- Lean name
Chio.Proofs. DeliveryContract. settlement_ admission_ requires_ verified_ evidence - Statement & proof
- Proofs/DeliveryContract.lean
proof. delivery_ contract. allow_ requires_ evidence
An Allow in the bounded delivery finalizer implies that any required finding purchase is verified and any required expected and observed digest identities are equal.
- Lean name
Chio.Proofs. DeliveryContract. allow_ requires_ verified_ evidence - Statement & proof
- Proofs/DeliveryContract.lean
proof. delivery_ contract. denied_ after_ delivery_ no_ settlement
Every reachable deniedAfterDelivery result in the bounded model carries a blocked settlement gate, matching the M3 DeniedAfterDelivery and ContractualZeroCharge boundary without modeling the external rail.
- Lean name
Chio.Proofs. DeliveryContract. denied_ after_ delivery_ cannot_ settle - Statement & proof
- Proofs/DeliveryContract.lean
proof. finding_ status_ epoch_ advance_ is_ strict
A verified signed status epoch advances the durable floor only when its map epoch is strictly greater. Cryptographic and SQLite correctness remain outside this bounded model.
- Lean name
Chio.Proofs. FindingStatusFreshness. epoch_ advance_ is_ strict - Statement & proof
- Proofs/FindingStatusFreshness.lean
proof. finding_ status_ non_ inclusion_ not_ expired
An admitted portable non-inclusion decision has checked_at at or before the signed status epoch valid_until bound.
- Lean name
Chio.Proofs. FindingStatusFreshness. admitted_ non_ inclusion_ not_ past_ valid_ until - Statement & proof
- Proofs/FindingStatusFreshness.lean
proof. finding_ status_ pending_ is_ sticky
A local pending retraction cannot be cleared by a contradictory non-inclusion proof in the bounded decision model.
- Lean name
Chio.Proofs. FindingStatusFreshness. pending_ never_ accepts_ non_ inclusion - Statement & proof
- Proofs/FindingStatusFreshness.lean
proof. finding_ status_ retracted_ is_ sticky
A local retracted observation cannot be cleared by a contradictory non-inclusion proof in the bounded decision model.
- Lean name
Chio.Proofs. FindingStatusFreshness. retracted_ never_ accepts_ non_ inclusion - Statement & proof
- Proofs/FindingStatusFreshness.lean
Treaties and cross-operator admission
Predicate intersection, bilateral acceptance, amendment refinement and bridge models. The treaty abstraction's drift checks do not establish Rust refinement.
proof. treaty_ admission_ iff_ predicate_ intersection
Public bounded treaty model showing bilateral admission is equivalent to the conjunction of syntactic treaty, left-polity, and right-polity predicates over the production-shaped admission projection.
- Lean name
Chio.Treaty. treaty_ admission_ iff_ predicate_ intersection - Statement & proof
- Treaty/Intersection.lean
proof. treaty_ admission_ stable_ under_ ladder_ floor
Public bounded treaty model showing a satisfied governance-mode floor leaves the fail-closed syntactic admission decision unchanged.
- Lean name
Chio.Treaty. treaty_ admission_ stable_ under_ ladder_ floor - Statement & proof
- Treaty/Intersection.lean
proof. amendment_ admissible_ iff_ backward_ refinement
Public bounded amendment model equating admissibility with semantic backward refinement on the candidate's explicit admission domain.
- Lean name
Chio.Treaty. amendment_ admissible_ iff_ backward_ refinement - Statement & proof
- Treaty/Intersection.lean
proof. amendment_ without_ refinement_ rejected
Public bounded amendment model showing a failed finite refinement check produces a rejected verdict.
- Lean name
Chio.Treaty. amendment_ without_ refinement_ rejected - Statement & proof
- Treaty/Intersection.lean
proof. freestanding_ accept_ set_ theorem
Bounded bilateral DSSE accept-set model showing acceptance is exactly issuer-key trust, kernel-key trust, and fail-closed predicate satisfaction over the admission projection. Signature verification remains abstracted.
- Lean name
Chio.Treaty. BilateralAccept. freestanding_ accept_ set_ theorem - Statement & proof
- Treaty/BilateralAccept.lean
proof. essential_ preserved_ chain
Bounded syntactic-constitution model showing essential admission preservation composes across amendment chains.
- Lean name
Chio.Treaty. PredicateLang. essential_ preserved_ chain - Statement & proof
- Treaty/PredicateLang.lean
proof. containsPredicate_ preserved_ chain
Bounded syntactic-constitution model showing designated non-amendable predicate presence is trajectory-invariant under preserving amendments.
- Lean name
Chio.Treaty. PredicateLang. containsPredicate_ preserved_ chain - Statement & proof
- Treaty/PredicateLang.lean
proof. anchor_ admission_ iff_ lane_ quorum_ satisfied
Bounded lane-quorum model showing anchor admission is exactly the deduplicated declared-lane quorum check with undeclared contributors rejected.
- Lean name
Chio.Treaty. PredicateLang. anchor_ admission_ iff_ lane_ quorum_ satisfied - Statement & proof
- Treaty/PredicateLang.lean
proof. anchor_ admission_ rejects_ undeclared_ lane
Bounded lane-quorum model showing a witness with undeclared contributing lanes fails closed before quorum counting.
- Lean name
Chio.Treaty. PredicateLang. anchor_ admission_ rejects_ undeclared_ lane - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. unsupported_ denies
Any predicate containing unsupported syntax denies before Boolean evaluation, including under unrestricted negation.
- Lean name
Chio.Treaty. PredicateLang. unsupported_ predicate_ denies - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. undefined_ denies
A supported predicate whose projected runtime field is unavailable denies before Boolean evaluation.
- Lean name
Chio.Treaty. PredicateLang. undefined_ predicate_ denies - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. negated_ unknown_ atom_ denies
A direct negative regression theorem prevents an unknown atom from becoming true through negation.
- Lean name
Chio.Treaty. PredicateLang. negated_ unknown_ atom_ denies - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. negated_ unknown_ mode_ denies
An unavailable governance mode remains denied when a mode predicate is negated.
- Lean name
Chio.Treaty. PredicateLang. negated_ unknown_ mode_ denies - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. runtime_ policy_ exact
The bounded runtime admission constitution accepts exactly when every registered production-shaped gate is supported, defined, and true. Parsing, hashing, signatures, and store lookup are outside this theorem.
- Lean name
Chio.Treaty. PredicateLang. runtime_ admission_ policy_ exact - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. action_ missing_ denies
An invocation action absent from the ladder intersection fails the modeled action-class gate.
- Lean name
Chio.Treaty. PredicateLang. action_ class_ missing_ from_ intersection_ denies - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. signer_ count_ denies
A bilateral invocation without exactly two signer ids fails the modeled signer gate.
- Lean name
Chio.Treaty. PredicateLang. signer_ count_ mismatch_ denies - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. signer_ reuse_ denies
A bilateral invocation whose deduplicated signer list is not a pair fails the modeled signer gate.
- Lean name
Chio.Treaty. PredicateLang. signer_ alias_ reuse_ denies - Statement & proof
- Treaty/PredicateLang.lean
treaty. predicate. signer_ scope_ denies
A signer outside the treaty participant list fails the modeled signer gate.
- Lean name
Chio.Treaty. PredicateLang. signer_ outside_ scope_ denies - Statement & proof
- Treaty/PredicateLang.lean
treaty. bridge. fragment_ completeness
Finite predicate checking is equivalent to semantic refinement on the exact verifier-owned admission domain. It makes no completeness claim outside that domain.
- Lean name
Chio.Treaty. PredicateLang. refinesOn_ complete_ on_ fragment - Statement & proof
- Treaty/PredicateLang.lean
treaty. bridge. constitution_ domain_ completeness
The finite constitution checker is a complete decision procedure for refinement on its explicit admission domain.
- Lean name
Chio.Treaty. PredicateLang. refinesOnConstitution_ complete_ on_ fragment - Statement & proof
- Treaty/PredicateLang.lean
treaty. syntactic. decision_ exact
The amendment constructor returns a checked delta exactly when finite-domain refinement holds; callers do not supply its proof result.
- Lean name
Chio.Treaty. PredicateLang. ConstitutionalDeltaSyn. ofDecide_ isSome_ iff - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. syntactic. admission_ iff_ intersection
Syntactic bilateral admission is equivalent to the fail-closed conjunction of treaty, left-polity, and right-polity predicates.
- Lean name
Chio.Treaty. PredicateLang. synTreaty_ admission_ iff_ predicate_ intersection - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. syntactic. ladder_ floor_ stable
A satisfied governance-mode floor leaves syntactic treaty admission unchanged.
- Lean name
Chio.Treaty. PredicateLang. synTreaty_ admission_ stable_ under_ ladder_ floor - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. syntactic. amendment_ iff_ refinement
Amendment admissibility is equivalent to semantic backward refinement on the candidate's explicit admission domain.
- Lean name
Chio.Treaty. PredicateLang. synAmendment_ admissible_ iff_ backward_ refinement - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. syntactic. failed_ check_ rejected
A failed finite refinement decision produces a rejected amendment verdict.
- Lean name
Chio.Treaty. PredicateLang. synAmendment_ without_ refinement_ rejected - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. bridge. pointwise
Syntactic constitution admission agrees pointwise with admission after lifting to the comparison-only closure representation.
- Lean name
Chio.Treaty. PredicateLang. bridge_ pointwise - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. bridge. refinement_ on_ iff
Domain-scoped backward refinement is equivalent in the syntactic and lifted closure representations.
- Lean name
Chio.Treaty. PredicateLang. bridge_ refinement_ on_ iff - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. bridge. global_ iff
Global backward refinement is equivalent in the syntactic and lifted closure representations.
- Lean name
Chio.Treaty. PredicateLang. bridge_ global_ iff - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. bridge. soundness
Global syntactic refinement transports to the lifted closure representation.
- Lean name
Chio.Treaty. PredicateLang. bridge_ soundness - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. bridge. decidable_ soundness
A successful finite constitution decision transports to closure refinement on exactly the checked admission domain.
- Lean name
Chio.Treaty. PredicateLang. bridge_ decidable_ soundness - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. bridge. equivalence_ admits
Lifting a syntactic bilateral treaty to closures preserves admission for every production-shaped input projection.
- Lean name
Chio.Treaty. PredicateLang. toClosure_ treatyAdmits_ agrees - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. bridge. equivalence_ verdict
The syntactic finite decision and the lifted closure candidate produce the same amendment verdict.
- Lean name
Chio.Treaty. PredicateLang. toClosure_ amendmentVerdict_ agrees - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. predicate. constitution_ domain_ exact
Exact constitution refinement on the explicit production-shaped admission domain.
- Lean name
Chio.Treaty. PredicateLang. refinesOnConstitution_ iff - Statement & proof
- Treaty/PredicateLang.lean
treaty. paper. admission_ iff_ intersection
Preserves the six-conjunct treaty intersection over the production-shaped admission projection.
- Lean name
Chio.Treaty. IntersectionSyntactic. treaty_ admission_ iff_ predicate_ intersection - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. paper. ladder_ floor_ stable
A satisfied governance-mode floor reduces to the bounded treaty decision.
- Lean name
Chio.Treaty. IntersectionSyntactic. treaty_ admission_ stable_ under_ ladder_ floor - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. paper. amendment_ iff_ refinement
Amendment admissibility is equivalent to exact no-widening on the supplied finite domain.
- Lean name
Chio.Treaty. IntersectionSyntactic. amendment_ admissible_ iff_ bounded_ refinement - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. paper. failed_ amendment_ rejected
Preserves fail-closed amendment rejection after a failed finite refinement decision.
- Lean name
Chio.Treaty. IntersectionSyntactic. amendment_ without_ refinement_ rejected - Statement & proof
- Treaty/IntersectionSyntactic.lean
treaty. paper. polity_ admission_ agrees
Pointwise equivalence between syntactic polity admission and the comparison-only closure model.
- Lean name
Chio.Treaty. BridgeEquivalence. Legacy. polity_ admission_ agrees - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. paper. treaty_ admission_ agrees
Pointwise equivalence between syntactic treaty admission and the comparison-only closure model.
- Lean name
Chio.Treaty. BridgeEquivalence. Legacy. treaty_ admission_ agrees - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. paper. mode_ admission_ agrees
Pointwise equivalence after composing both treaty models with the same governance-mode floor.
- Lean name
Chio.Treaty. BridgeEquivalence. Legacy. treaty_ admission_ under_ mode_ agrees - Statement & proof
- Treaty/BridgeEquivalence.lean
treaty. paper. bounded_ amendment_ sound
A checked syntactic delta establishes closure refinement only on the exact supplied domain.
- Lean name
Chio.Treaty. BridgeEquivalence. Legacy. bounded_ amendment_ sound - Statement & proof
- Treaty/BridgeEquivalence.lean
Aeneas and model equivalence
Two proof steps: ordinary-value mirror facts and generated-machine-value equivalence. A row in the mirror module alone is not the extraction-to-model connection.
proof. aeneas_ timeWindowValid_ equiv_ model
Derived ordinary-value bridge to CapabilityToken.isValidAt; proof.generated_time_window_valid_eq_model is the generated-code successor.
- Lean name
Chio.Proofs. aeneas_ timeWindowValid_ equiv_ model - Statement & proof
- Proofs/AeneasEquivalence.lean
proof. aeneas_ optionalCapIsSubset_ preserves_ parent_ cap
Derived ordinary-value attenuation bridge; proof.generated_optional_u32_cap_is_subset_preserves_parent_cap is the generated-code successor.
- Lean name
Chio.Proofs. aeneas_ optionalCapIsSubset_ preserves_ parent_ cap - Statement & proof
- Proofs/AeneasEquivalence.lean
proof. aeneas_ budgetCommit_ equiv_ model
Derived ordinary-value budget bridge; proof.generated_budget_commit_eq_model is the generated-code successor. Store mutation and reservation-ledger transitions remain outside this theorem.
- Lean name
Chio.Proofs. aeneas_ budgetCommit_ equiv_ model - Statement & proof
- Proofs/AeneasEquivalence.lean
proof. aeneas_ dpopAdmits_ equiv_ model
Derived ordinary-value DPoP bridge; proof.generated_dpop_admits_eq_model is the generated-code successor. Cryptographic verification and nonce-store mutation remain outside this theorem.
- Lean name
Chio.Proofs. aeneas_ dpopAdmits_ equiv_ model - Statement & proof
- Proofs/AeneasEquivalence.lean
proof. aeneas_ revocationSnapshot_ equiv_ model
Derived ordinary-value revocation bridge; proof.generated_revocation_snapshot_denies_eq_model is the generated-code successor. Storage and snapshot freshness remain outside this theorem.
- Lean name
Chio.Proofs. aeneas_ revocationSnapshot_ equiv_ model - Statement & proof
- Proofs/AeneasEquivalence.lean
proof. aeneas_ guardStep_ equiv_ model
Derived ordinary-value guard bridge; proof.generated_guard_step_allows_eq_model is the generated-code successor. Runtime error attribution remains outside this theorem.
- Lean name
Chio.Proofs. aeneas_ guardStep_ equiv_ model - Statement & proof
- Proofs/AeneasEquivalence.lean
proof. aeneas_ receiptCoupling_ equiv_ model
Derived ordinary-value receipt bridge; proof.generated_receipt_fields_coupled_eq_model is the generated-code successor. Body construction, canonicalization, and cryptography remain runtime-owned.
- Lean name
Chio.Proofs. aeneas_ receiptCoupling_ equiv_ model - Statement & proof
- Proofs/AeneasEquivalence.lean
proof. generated_ inclusion_ step_ eq_ model
The authenticated generated machine-integer inclusion step projects exactly to the checked Lean Merkle-walk model for every U64 input. Hashing remains outside this scalar theorem.
- Lean name
Chio.Proofs. generated_ inclusion_ step_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ ledger_ is_ terminal_ eq_ model
The generated terminal-state predicate agrees with the bounded reservation ledger model under the exact U64 projection. Runtime store linkage remains outside this theorem.
- Lean name
Chio.Proofs. generated_ ledger_ is_ terminal_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ ledger_ apply_ eq_ model
The generated checked-arithmetic transition projects to the bounded reservation ledger model for every operation and U64 input. Runtime store linkage remains outside this theorem.
- Lean name
Chio.Proofs. generated_ ledger_ apply_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ classify_ time_ window_ code_ eq_ mirror
The generated machine-integer time-window classifier projects to the ordinary-value classifier.
- Lean name
Chio.Proofs. generated_ classify_ time_ window_ code_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ time_ window_ valid_ eq_ mirror
The generated machine-integer validity predicate agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ time_ window_ valid_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ exact_ or_ wildcard_ covers_ by_ flags_ eq_ mirror
The generated exact-or-wildcard decision agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ exact_ or_ wildcard_ covers_ by_ flags_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ prefix_ wildcard_ or_ exact_ covers_ by_ flags_ eq_ mirror
The generated prefix-wildcard decision agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ prefix_ wildcard_ or_ exact_ covers_ by_ flags_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ optional_ u32_ cap_ is_ subset_ eq_ mirror
The generated bounded optional-cap comparison agrees with the Nat projection.
- Lean name
Chio.Proofs. generated_ optional_ u32_ cap_ is_ subset_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ required_ true_ is_ preserved_ eq_ mirror
The generated required-flag decision agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ required_ true_ is_ preserved_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ monetary_ cap_ is_ subset_ by_ parts_ eq_ mirror
The generated bounded monetary-cap comparison agrees with the Nat projection.
- Lean name
Chio.Proofs. generated_ monetary_ cap_ is_ subset_ by_ parts_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ budget_ precheck_ eq_ mirror
The generated budget precheck agrees with the ordinary-value budget decision.
- Lean name
Chio.Proofs. generated_ budget_ precheck_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ budget_ commit_ eq_ mirror
The generated checked subtraction result projects to the ordinary-value budget commit.
- Lean name
Chio.Proofs. generated_ budget_ commit_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ dpop_ freshness_ valid_ eq_ mirror
The generated saturating timestamp checks agree with their bounded Nat projection.
- Lean name
Chio.Proofs. generated_ dpop_ freshness_ valid_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ dpop_ admits_ eq_ mirror
The generated DPoP admission decision agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ dpop_ admits_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ nonce_ admits_ eq_ mirror
The generated nonce admission decision agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ nonce_ admits_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ guard_ step_ allows_ eq_ mirror
The generated one-step guard conjunction agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ guard_ step_ allows_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ revocation_ snapshot_ denies_ eq_ mirror
The generated revocation snapshot decision agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ revocation_ snapshot_ denies_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ receipt_ fields_ coupled_ eq_ mirror
The generated receipt-field conjunction agrees with its ordinary-value semantics.
- Lean name
Chio.Proofs. generated_ receipt_ fields_ coupled_ eq_ mirror - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ time_ window_ valid_ eq_ model
The generated bounded validity predicate composes with the CapabilityToken model under explicit scalar projections.
- Lean name
Chio.Proofs. generated_ time_ window_ valid_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ optional_ u32_ cap_ is_ subset_ preserves_ parent_ cap
A successful generated optional-cap check preserves the present parent cap and cannot widen its value.
- Lean name
Chio.Proofs. generated_ optional_ u32_ cap_ is_ subset_ preserves_ parent_ cap - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ budget_ commit_ eq_ model
The generated checked budget commit projects to the handwritten budgetCommit model.
- Lean name
Chio.Proofs. generated_ budget_ commit_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ dpop_ admits_ eq_ model
The generated DPoP admission decision composes with the handwritten session-admission model.
- Lean name
Chio.Proofs. generated_ dpop_ admits_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ guard_ step_ allows_ eq_ model
The generated one-step guard decision composes with the handwritten guard-pipeline model.
- Lean name
Chio.Proofs. generated_ guard_ step_ allows_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ revocation_ snapshot_ denies_ eq_ model
The generated revocation snapshot decision composes with the handwritten denial model.
- Lean name
Chio.Proofs. generated_ revocation_ snapshot_ denies_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
proof. generated_ receipt_ fields_ coupled_ eq_ model
The generated receipt-field conjunction composes with the handwritten receipt integrity model.
- Lean name
Chio.Proofs. generated_ receipt_ fields_ coupled_ eq_ model - Statement & proof
- Proofs/AeneasGeneratedEquivalence.lean
Property-to-implementation mapping
The formal mapping connects named model properties and harnesses to Rust symbols and required assumptions. It separates manually reviewed model connections from equivalence proofs. A source hash detects drift, and accepting a new hash records review; refinement comes from an equivalence proof.
TLA+ and Apalache mappings
Start with the named invariant, its selected model configuration, and the assumptions in its mapping row. The revocation model's entries include NoAllowAfterRevoke, MonotoneLog, AttenuationPreserving, RevocationFreshness, and RevocationStateCoupled. The liveness property RevocationEventuallySeen depends on model fairness and is checked separately from the safety conjunction.
The mapping column named “Assumption discharge” identifies dependencies; a listed dependency stays in force. The mapped storage contract, for example, covers single-row committed writes, and cross-row crash recovery lies outside it. Read TLA+ Specs and the storage assumption with the model result.
Kani harness mappings
The public harness registry selects the lane, source, unwind policy, and named harness. The mapping's Kani section supplies the target Rust symbols. These records sit apart from the Lean inventory above.
public_normalized_scope_subset_rejects_widened_child concerns the public normalized-scope subset operation, and public_sign_receipt_refuses_content_hash_mismatch exercises receipt signing's content-hash rejection. Read a harness's inputs and assertions before interpreting a pass; Kani Harnesses explains the lane and its bounds.
The mapping checker enforces selected model names, mandatory invariant membership, public Kani names, and registered concurrency harness mappings. It checks cross-references; equivalence between two models, or between a model and Rust, comes from a proof.
Registration and proof runs
Four records answer different questions about a theorem:
- Inventory entry. A declared Lean name, source file, claim class, property mapping, and optional status. It carries no execution result.
- Successful formal gate. The configured Lean build,
sorrychecks, declaration and property-map checks, and the axiom and opaque environment audit completed for that checkout. - Implementation evidence. The extraction, equivalence, contract, harness, or runtime check that connects a model result to the production boundary.
- Source-bound proof report. Recorded modes, gate outcomes, and source identities. Checking its structure does not replay those gates.
The formal gate requires theorem rows to declare rootImported: true and finds the named theorem declarations in their stated files. That inventory check is lexical, and the flag is a declaration; the Lean build and the elaborated assumption audit are the stages that load the modules.
To check the evidence your release carries, use the formal Quickstart. To interpret an existing report, read Verification Evidence, and when a stage fails, keep its output for Failure Modes.