Embed internal inj
Iris.BI.embed_internal_inj
Plain-language statement
⎡·⎤ reflects internal equality.
Source project: Iris-Lean
Person-level attribution pending.
Source-pinned research
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.
169 results
Clear filtersIris.BI.embed_internal_inj
Plain-language statement
⎡·⎤ reflects internal equality.
Source project: Iris-Lean
Person-level attribution pending.
Iris.BI.MonPred.monPred_sbi_emp_valid_exist
Plain-language statement
A monotone predicate P is objective if its value does not depend on the index: P i ⊢ P j for all i j. Equivalently P ⊣⊢ <obj> P. -/ @[rocq_alias Objective] class Objective {I : BiIndex} {PROP : Type _} [BI PROP] (P : MonPred I PROP) : Prop where objective_at : ∀ i j : I.car, P.monPred_at i ⊢ P.monPred_at j namespace MonPred variable {I : BiIndex...
Source project: Iris-Lean
Person-level attribution pending.
Iris.chain_option_some
Plain-language statement
If a chain of Option is ever some, it is the lift a chain by some.
Source project: Iris-Lean
Person-level attribution pending.
Iris.fupd_mask_frame_acc
Plain-language statement
A variant of [fupd_mask_frame] that works well for accessors: Tailored to eliminate updates of the form [|={E1,E1∖E2}=> Q] and provides a way to transform the closing view shift instead of letting you prove the same side-conditions twice.
Source project: Iris-Lean
Person-level attribution pending.
Iris.genHeap_init_names
Plain-language statement
Initialize genHeapGS with explicit ghost names. The names of the heap and the meta-data tables are exposed in the conclusion.
Source project: Iris-Lean
Person-level attribution pending.
Iris.ghost_map_alloc_strong
Project documentation
Recover fractional ownership for a read-only element. -/ @[rocq_alias ghost_map_elem_unpersist] theorem ghost_map_elem_unpersist (γ : GName) (k : K) (v : V) : ⊢@{IProp GF} (γ ↪◯MAP[k]{.discard} v) ==∗ ∃ q, (γ ↪◯MAP[k]{.own q} v) := by unfold ghost_map_elem iintro H imod iOwn_updateP update_frag_acquire $$ H with ⟨%a, %Heq, G⟩ obtain ⟨q, Heq⟩ := Heq iexist...
Source project: Iris-Lean
Person-level attribution pending.