Source-pinned research

Research proof index

Search theorem names, mathematical ideas, modules, topics, projects, and role-labelled researchers. Open a result for its complete indexed Lean declaration and source record.

This index contains 169 research declarations. Search 10,000 more complete Mathlib declarations.

1 topic

169 results

Clear filters
Project-declaredLean 4.32.0

Get Putative Root With Hash unique

InductiveMerkleTree.getPutativeRootWithHash_unique

Plain-language statement

Merkle opening uniqueness. When h is injective, two openings at the same leaf index that produce the same root must agree on both the leaf value and the entire authentication path. Proof: induction on the index. At each internal node, injectivity of h forces both hash arguments to agree , the sibling (proof head) and the recursive subtree root. Th...

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Log Has Collision of chain In Log of ne

InductiveMerkleTree.logHasCollision_of_chainInLog_of_ne

Plain-language statement

Log-level binding (Collision Lemma at the log level). Log-formalized analog of getPutativeRootWithHash_binding_collision: two distinct openings (x, proof₁) ≠ (y, proof₂) of the same root at the same index, both witnessed by hash chains ChainInLog in the same log, force log to contain a hash collision (two log entries with equal responses b...

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Simulate Q build Merkle Tree

InductiveMerkleTree.simulateQ_buildMerkleTree

Plain-language statement

Running the monadic version of buildMerkleTree with an oracle function f is equivalent to running the functional version of buildMerkleTreeWithHash with the same oracle function.

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Simulate Q get Putative Batch Root

InductiveMerkleTree.simulateQ_getPutativeBatchRoot

Plain-language statement

Running the monadic getPutativeBatchRoot with an oracle function f is the same as running the functional getPutativeBatchRootWithHash with the corresponding hash function.

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Run Steps Async empty trivial eq

Interaction.Concurrent.runStepsAsync_empty_trivial_eq

Plain-language statement

Under the empty env alphabet (EnvAction.empty Unit) and the trivial env scheduler (always processTick), runStepsAsync reduces to ProcessOver.runSteps with the env state pinned to () and a constant processTick trace. This is the operational core of the sync-recovery story: it factors the async engine into the synchronous ProcessOver.runSteps...

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.1

Big Op L hom weak

Iris.Algebra.BigOpL.bigOpL_hom_weak

Plain-language statement

Weak monoid homomorphisms distribute over non-empty big ops.

separation logicprogram logicsemantics

Source project: Iris-Lean

Person-level attribution pending.

View proof record