23 lines
389 B
Text
23 lines
389 B
Text
#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
|
|
|