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 350 research declarations. Search 10,000 more complete Mathlib declarations.

1 topic

350 results

Clear filters
Project-declaredLean 4.32.0

Is Total Query Bound list Map M

OracleComp.isTotalQueryBound_listMapM

Project documentation

Every counting-oracle support point of the body oa lifts to a counting-oracle support point of replicate n oa whose query count is n times the body's. -/ private lemma countingOracle.support_simulate_replicate_const [DecidableEq ι] {oa : OracleComp spec α} {z : α × QueryCount ι} (hz : z ∈ support (countingOracle.simulate oa 0)) : ∀ n, ∃ ys, (ys, fun...

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Le prob Output seeded Fork

OracleComp.le_probOutput_seededFork

Project documentation

Key bound of the forking lemma: the probability that both runs succeed with fork point s is at least Pr[cf(main) = s]² - Pr[cf(main) = s] / |Range i|.

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Trace Noninterference bind

OracleComp.Leakage.traceNoninterference_bind

Plain-language statement

Trace noninterference is preserved by sequential composition (bind). The continuations may depend on both the result and the trace, but whenever the traces match, the continuations must themselves be trace noninterfering.

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Log entry in cache and mono

OracleComp.log_entry_in_cache_and_mono

Plain-language statement

When running loggingOracle inside cachingOracle, every log entry ends up in the cache. We prove two properties simultaneously by induction: 1. Every log entry is in the final cache. 2. The initial cache is a subset of the final cache (monotonicity). The proof works by induction on oa. The pure case is trivial (empty log). For query t >>= mx: the...

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Map run simulate Q bind eq of query map eq inv

OracleComp.map_run_simulateQ_bind_eq_of_query_map_eq_inv'

Project documentation

Invariant-gated state-projection theorem for a simulated prefix followed by a stateful continuation.

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record
Project-declaredLean 4.32.0

Monad Lift lift M Option T

OracleComp.monadLift_liftM_OptionT

Plain-language statement

Coherence: lifting an OracleComp to a superspec and then into OptionT via the standard MonadLift equals lifting directly through the transitive MonadLiftT chain (which goes through the simulateQ-based OptionT MonadLift instance).

program verificationseparation logiccryptography

Source project: VCVio

Person-level attribution pending.

View proof record