src/HOL/Hoare_Parallel/RG_Com.thy
author nipkow
Tue, 23 Feb 2016 16:25:08 +0100
changeset 62390 842917225d56
parent 62042 6c6ccf573479
permissions -rw-r--r--
more canonical names
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
59189
ad8e0a789af6 update_cartouches;
wenzelm
parents: 58884
diff changeset
     1
chapter \<open>The Rely-Guarantee Method\<close>
13020
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
     2
59189
ad8e0a789af6 update_cartouches;
wenzelm
parents: 58884
diff changeset
     3
section \<open>Abstract Syntax\<close>
13020
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
     4
16417
9bc16273c2d4 migrated theory headers to new format
haftmann
parents: 13020
diff changeset
     5
theory RG_Com imports Main begin
13020
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
     6
59189
ad8e0a789af6 update_cartouches;
wenzelm
parents: 58884
diff changeset
     7
text \<open>Semantics of assertions and boolean expressions (bexp) as sets
62042
6c6ccf573479 isabelle update_cartouches -c -t;
wenzelm
parents: 59189
diff changeset
     8
of states.  Syntax of commands \<open>com\<close> and parallel commands
6c6ccf573479 isabelle update_cartouches -c -t;
wenzelm
parents: 59189
diff changeset
     9
\<open>par_com\<close>.\<close>
13020
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
    10
42174
d0be2722ce9f modernized specifications;
wenzelm
parents: 32621
diff changeset
    11
type_synonym 'a bexp = "'a set"
13020
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
    12
59189
ad8e0a789af6 update_cartouches;
wenzelm
parents: 58884
diff changeset
    13
datatype 'a com =
13020
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
    14
    Basic "'a \<Rightarrow>'a"
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
    15
  | Seq "'a com" "'a com"
59189
ad8e0a789af6 update_cartouches;
wenzelm
parents: 58884
diff changeset
    16
  | Cond "'a bexp" "'a com" "'a com"
ad8e0a789af6 update_cartouches;
wenzelm
parents: 58884
diff changeset
    17
  | While "'a bexp" "'a com"
ad8e0a789af6 update_cartouches;
wenzelm
parents: 58884
diff changeset
    18
  | Await "'a bexp" "'a com"
13020
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
    19
42174
d0be2722ce9f modernized specifications;
wenzelm
parents: 32621
diff changeset
    20
type_synonym 'a par_com = "'a com option list"
13020
791e3b4c4039 HoareParallel Theories
prensani
parents:
diff changeset
    21
62390
842917225d56 more canonical names
nipkow
parents: 62042
diff changeset
    22
end