Documentation

Mt.Task.Impl

inductive Mt.TaskM.impl.IterationResult (spec : Mt.Spec) (T : Type) :
Type
Instances For
    def Mt.TaskM.impl.TaskM (spec : Mt.Spec) (T : Type) :
    Type
    Equations
    def Mt.TaskM.impl.TaskM.atomic_read_modify_read {spec : Mt.Spec} {T : Type} (f : spec.StateT × spec.State) :
    Equations
    def Mt.TaskM.impl.TaskM.panic {spec : Mt.Spec} {T : Type} (msg : String) :
    Equations
    def Mt.TaskM.impl.TaskM.atomic_assert {spec : Mt.Spec} (cond : spec.StateBool) :
    Equations
    • One or more equations did not get rendered due to their size.
    def Mt.TaskM.impl.TaskM.atomic_blocking_rmr {spec : Mt.Spec} {T : Type} (block_until : spec.StateBool) (f : spec.StateT × spec.State) :
    Equations
    inductive Mt.TaskM.impl.TaskM.is_direct_cont {spec : Mt.Spec} {T : Type} :
    Mt.TaskM.impl.TaskM spec TMt.TaskM.impl.TaskM spec TProp
    Instances For
      theorem Mt.TaskM.impl.TaskM.is_direct_cont.wf {spec : Mt.Spec} {T : Type} :
      WellFounded Mt.TaskM.impl.TaskM.is_direct_cont
      theorem Mt.TaskM.impl.TaskM.is_direct_cont.wf.helper {spec : Mt.Spec} {T : Type} (it : Mt.TaskM.impl.IterationResult spec T) (p : Mt.TaskM.impl.TaskM spec T) {s : spec.State} {block_until : spec.StateBool} :
      it = Mt.TaskM.impl.IterationResult.Running s block_until pAcc Mt.TaskM.impl.TaskM.is_direct_cont p
      Equations
      • Mt.TaskM.impl.TaskM.instWf = { rel := Mt.TaskM.impl.TaskM.is_direct_cont, wf := (_ : WellFounded Mt.TaskM.impl.TaskM.is_direct_cont) }
      def Mt.TaskM.impl.TaskM.bind {spec : Mt.Spec} {U : Type} {V : Type} (mu : Mt.TaskM.impl.TaskM spec U) (f : UMt.TaskM.impl.TaskM spec V) :
      Equations
      • One or more equations did not get rendered due to their size.
      theorem Mt.TaskM.impl.TaskM.bind_def {U : Type} {V : Type} {spec : Mt.Spec} {mu : Mt.TaskM.impl.TaskM spec U} {f : UMt.TaskM.impl.TaskM spec V} {s : spec.State} :
      theorem Mt.TaskM.impl.TaskM.bind_assoc {spec : Mt.Spec} {U : Type} {V : Type} {W : Type} (mu : Mt.TaskM.impl.TaskM spec U) (f : UMt.TaskM.impl.TaskM spec V) (g : VMt.TaskM.impl.TaskM spec W) :