#import "../common.typ": * #import "@preview/prooftrees:0.1.0": * #show: doc => conf("Steve Zdancewic", doc) - Reasoning about monadic programs in Coq - Imp ``` Inductive com : Type := | CSkip | CAssign (x : string) (a : aexp) | CSeq (c1 c2 : com) | CIf (b : bexp) (c1 c2 : com) | CWhile (b : bexp) (c : com) . ``` "Relationally defined operational semantics" State monad