IOA/example/Spec.thy
changeset 168 44ff2275d44f
parent 156 fd1be45b64bf
child 249 492493334e0f
equal deleted inserted replaced
167:37a6e2f55230 168:44ff2275d44f
       
     1 (*  Title:      HOL/IOA/example/Spec.thy
       
     2     ID:         $Id$
       
     3     Author:     Tobias Nipkow & Konrad Slind
       
     4     Copyright   1994  TU Muenchen
       
     5 
       
     6 The specification of reliable transmission
       
     7 *)
       
     8 
     1 Spec = List + IOA + Action +
     9 Spec = List + IOA + Action +
     2 
    10 
     3 consts
    11 consts
     4 
    12 
     5 spec_sig   :: "'m action signature"
    13 spec_sig   :: "'m action signature"
     6 spec_trans :: "('m action, 'm list)transition set"
    14 spec_trans :: "('m action, 'm list)transition set"
     7 spec_ioa   :: "('m action, 'm list)ioa"
    15 spec_ioa   :: "('m action, 'm list)ioa"
     8 
    16 
     9 rules
    17 defs
    10 
    18 
    11 sig_def "spec_sig == <UN m.{S_msg(m)}, \
    19 sig_def "spec_sig == <UN m.{S_msg(m)}, \
    12 \                     UN m.{R_msg(m)}, \
    20 \                     UN m.{R_msg(m)}, \
    13 \                     {}>"
    21 \                     {}>"
    14 
    22 
    15 trans_def "spec_trans =                            \
    23 trans_def "spec_trans ==                           \
    16 \ {tr. let s = fst(tr);                            \
    24 \ {tr. let s = fst(tr);                            \
    17 \          t = snd(snd(tr))                        \
    25 \          t = snd(snd(tr))                        \
    18 \      in                                          \
    26 \      in                                          \
    19 \      case fst(snd(tr))                           \
    27 \      case fst(snd(tr))                           \
    20 \      of                                          \
    28 \      of                                          \