Embedding of propositions into a complete lattice #
⌜p⌝ embeds a proposition p into an assertion lattice as ⊤ if p holds and ⊥ otherwise.
Embedding of propositions into an CompleteLattice type. ⌜p⌝ embeds p : Prop as ⊤ if p holds
and ⊥ otherwise.
Equations
Instances For
Embedding of propositions into an CompleteLattice type. ⌜p⌝ embeds p : Prop as ⊤ if p holds
and ⊥ otherwise.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Pointwise characterization of CompleteLattice.ofProp on a function lattice.
x ⊑ ⌜p⌝ whenever p holds.
⌜p⌝ ⊑ rhs reduces to assuming p and proving ⊤ ⊑ rhs.
⌜p⌝ ⊓ x ⊑ rhs reduces to assuming p and proving x ⊑ rhs.
Embedding a proposition into the Prop lattice (⌜p⌝) is the proposition itself.
Prop-valued, fixed-arity specializations of CompleteLattice.ofProp_apply: ⌜p⌝ at a
state-indexed Prop lattice, applied to its states, is p. Fixing the carrier to Prop (a ground
instance) leaves every parameter recoverable from the trigger, so these are usable @[grind =]
lemmas where the general ofProp_apply is not. They reduce a guard straight to its Prop in one
step, avoiding the intermediate (⌜p⌝ : Prop) whose instance ofProp_prop_eq fails to match.
Frame a single state coordinate: from the function-order premise (fun u => ⌜u = s⌝ ⊓ pre) ⊑ Q
conclude the point entailment pre ⊑ Q s. Instantiating the premise at u := s collapses
⌜s = s⌝ ⊓ pre to pre. Iterating it over a state chain point-frames pre ⊑ Q s₁ … sₙ to the
function-order goal (fun u⃗ => ⌜u⃗ = s⃗⌝ ⊓ pre) ⊑ Q.