equal
deleted
inserted
replaced
1 (* |
1 (* |
2 File: MemClerk.thy |
2 File: MemClerk.thy |
|
3 ID: $Id$ |
3 Author: Stephan Merz |
4 Author: Stephan Merz |
4 Copyright: 1997 University of Munich |
5 Copyright: 1997 University of Munich |
5 |
6 |
6 Theory Name: MemClerk |
7 Theory Name: MemClerk |
7 Logic Image: TLA |
8 Logic Image: TLA |
8 |
9 |
9 RPC-Memory example: specification of the memory clerk. |
10 RPC-Memory example: specification of the memory clerk. |
10 *) |
11 *) |
11 |
12 |
12 MemClerk = Memory + RPC + MemClerkParameters + |
13 theory MemClerk |
|
14 imports Memory RPC MemClerkParameters |
|
15 begin |
13 |
16 |
14 types |
17 types |
15 (* The clerk takes the same arguments as the memory and sends requests to the RPC *) |
18 (* The clerk takes the same arguments as the memory and sends requests to the RPC *) |
16 mClkSndChType = "memChType" |
19 mClkSndChType = "memChType" |
17 mClkRcvChType = "rpcSndChType" |
20 mClkRcvChType = "rpcSndChType" |
62 & SF(MClkReply send rcv cst p)_(cst!p, rtrner send!p, caller rcv!p)" |
65 & SF(MClkReply send rcv cst p)_(cst!p, rtrner send!p, caller rcv!p)" |
63 |
66 |
64 MClkISpec :: "mClkSndChType => mClkRcvChType => mClkStType => temporal" |
67 MClkISpec :: "mClkSndChType => mClkRcvChType => mClkStType => temporal" |
65 "MClkISpec send rcv cst == TEMP (ALL p. MClkIPSpec send rcv cst p)" |
68 "MClkISpec send rcv cst == TEMP (ALL p. MClkIPSpec send rcv cst p)" |
66 |
69 |
|
70 ML {* use_legacy_bindings (the_context ()) *} |
|
71 |
67 end |
72 end |