State-indexed predicates #
This module provides a type SPred σs
of predicates indexed by a list of states.
This type forms the basis for the notion of assertion in Std.Do
; see Std.Do.Assertion
.
@[reducible, inline]
A predicate indexed by a list of states.
example : SPred [Nat, Bool] = (Nat → Bool → ULift Prop) := rfl
Equations
- Std.Do.SPred σs = Std.Do.SVal σs (ULift Prop)
Instances For
Universal quantifier in SPred
.
Equations
- Std.Do.SPred.forall P_2 = { down := ∀ (a : α), (P_2 a).down }
- Std.Do.SPred.forall P_2 = fun (s : σ) => Std.Do.SPred.forall fun (a : α) => P_2 a s