src/HOL/TLA/Memory/MemClerk.thy
changeset 17309 c43ed29bd197
parent 11703 6e5de8d4290a
child 21624 6f79647cf536
equal deleted inserted replaced
17308:5d9bbc0d9bd3 17309:c43ed29bd197
     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