src/HOL/UNITY/Comp/README_Comp.thy
author wenzelm
Mon, 11 Sep 2023 19:30:48 +0200
changeset 78659 b5f3d1051b13
parent 75916 b6589c8ccadd
permissions -rw-r--r--
tuned;

theory README_Comp imports Main
begin

section \<open>UNITY: Examples Involving Program Composition\<close>

text \<open>
  The directory presents verification examples involving program composition.
  They are mostly taken from the works of Chandy, Charpentier and Chandy.

  \<^item> examples of \<^emph>\<open>universal properties\<close>: the counter (\<^file>\<open>Counter.thy\<close>) and
    priority system (\<^file>\<open>Priority.thy\<close>)
  \<^item> the allocation system (\<^file>\<open>Alloc.thy\<close>)
  \<^item> client implementation (\<^file>\<open>Client.thy\<close>)
  \<^item> allocator implementation (\<^file>\<open>AllocImpl.thy\<close>)
  \<^item> the handshake protocol (\<^file>\<open>Handshake.thy\<close>)
  \<^item> the timer array (demonstrates arrays of processes) (\<^file>\<open>TimerArray.thy\<close>)

  Safety proofs (invariants) are often proved automatically. Progress proofs
  involving ENSURES can sometimes be proved automatically. The level of
  automation appears to be about the same as in HOL-UNITY by Flemming Andersen
  et al.
\<close>

end