Theory RG_Com

theory RG_Com
imports Main
chapter ‹The Rely-Guarantee Method›

section ‹Abstract Syntax›

theory RG_Com imports Main begin

text ‹Semantics of assertions and boolean expressions (bexp) as sets
of states.  Syntax of commands @{text com} and parallel commands
@{text par_com}.›

type_synonym 'a bexp = "'a set"

datatype 'a com =
    Basic "'a =>'a"
  | Seq "'a com" "'a com"
  | Cond "'a bexp" "'a com" "'a com"
  | While "'a bexp" "'a com"
  | Await "'a bexp" "'a com"

type_synonym 'a par_com = "'a com option list"