src/HOL/UNITY/Comp/README_Comp.thy
author wenzelm
Wed, 12 Mar 2025 11:39:00 +0100
changeset 82265 4b875a4c83b0
parent 75916 b6589c8ccadd
permissions -rw-r--r--
update for release;

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