| author | kleing |
| Thu, 26 May 2005 10:05:28 +0200 | |
| changeset 16088 | f084ba24de29 |
| parent 14981 | e73f8140af78 |
| child 17233 | 41eee2e7b465 |
| permissions | -rw-r--r-- |
| 3071 | 1 |
(* Title: HOL/IOA/meta_theory/Asig.thy |
2 |
ID: $Id$ |
|
| 12218 | 3 |
Author: Olaf Müller, Tobias Nipkow & Konrad Slind |
| 3071 | 4 |
|
| 12218 | 5 |
Action signatures. |
| 3071 | 6 |
*) |
7 |
||
| 7661 | 8 |
Asig = Main + |
| 3071 | 9 |
|
10 |
types |
|
11 |
||
12 |
'a signature = "('a set * 'a set * 'a set)"
|
|
13 |
||
14 |
consts |
|
|
3433
2de17c994071
added deadlock freedom, polished definitions and proofs
mueller
parents:
3275
diff
changeset
|
15 |
actions,inputs,outputs,internals,externals,locals |
| 3071 | 16 |
::"'action signature => 'action set" |
17 |
is_asig ::"'action signature => bool" |
|
18 |
mk_ext_asig ::"'action signature => 'action signature" |
|
19 |
||
20 |
||
21 |
defs |
|
22 |
||
23 |
asig_inputs_def "inputs == fst" |
|
24 |
asig_outputs_def "outputs == (fst o snd)" |
|
25 |
asig_internals_def "internals == (snd o snd)" |
|
26 |
||
27 |
actions_def |
|
28 |
"actions(asig) == (inputs(asig) Un outputs(asig) Un internals(asig))" |
|
29 |
||
30 |
externals_def |
|
31 |
"externals(asig) == (inputs(asig) Un outputs(asig))" |
|
32 |
||
|
3433
2de17c994071
added deadlock freedom, polished definitions and proofs
mueller
parents:
3275
diff
changeset
|
33 |
locals_def |
|
2de17c994071
added deadlock freedom, polished definitions and proofs
mueller
parents:
3275
diff
changeset
|
34 |
"locals asig == ((internals asig) Un (outputs asig))" |
|
2de17c994071
added deadlock freedom, polished definitions and proofs
mueller
parents:
3275
diff
changeset
|
35 |
|
| 3071 | 36 |
is_asig_def |
37 |
"is_asig(triple) == |
|
38 |
((inputs(triple) Int outputs(triple) = {}) &
|
|
39 |
(outputs(triple) Int internals(triple) = {}) &
|
|
40 |
(inputs(triple) Int internals(triple) = {}))"
|
|
41 |
||
42 |
||
43 |
mk_ext_asig_def |
|
44 |
"mk_ext_asig(triple) == (inputs(triple), outputs(triple), {})"
|
|
45 |
||
46 |
||
47 |
end |