src/HOL/UNITY/Traces.thy
author paulson
Fri, 03 Apr 1998 12:34:33 +0200
changeset 4776 1f9362e769c1
child 4837 eab729051897
permissions -rw-r--r--
New UNITY theory

Traces = UNITY +

consts traces :: "['a set, ('a * 'a)set set] => 'a list set"

inductive "traces Init Acts"
  intrs 
         (*Initial trace is empty*)
    Init  "s: Init ==> [s] : traces Init Acts"

    Acts  "[| act: Acts;  s#evs : traces Init Acts;  (s,s'): act |]
	   ==> s'#s#evs : traces Init Acts"


consts reachable :: "['a set, ('a * 'a)set set] => 'a set"

inductive "reachable Init Acts"
  intrs 
         (*Initial trace is empty*)
    Init  "s: Init ==> s : reachable Init Acts"

    Acts  "[| act: Acts;  s : reachable Init Acts;  (s,s'): act |]
	   ==> s' : reachable Init Acts"

end