equal
deleted
inserted
replaced
13 modular :: "['a, ('a=>'b) program set] => bool" |
13 modular :: "['a, ('a=>'b) program set] => bool" |
14 "modular i X == |
14 "modular i X == |
15 ALL F G. F : X --> drop_prog i F = drop_prog i G --> G : X" |
15 ALL F G. F : X --> drop_prog i F = drop_prog i G --> G : X" |
16 |
16 |
17 |
17 |
18 (UNITY.thy????????????????*) |
18 (*UNITY.thy????????????????*) |
19 (*An Idle program can do nothing*) |
19 (*An Idle program can do nothing*) |
20 Idle :: 'a program set |
20 Idle :: 'a program set |
21 "Idle == {F. Union (Acts F) <= Id}" |
21 "Idle == {F. Union (Acts F) <= Id}" |
22 |
22 |
23 (*simplifies the expression of some specifications*) |
23 (*simplifies the expression of some specifications*) |
172 sysOfAlloc :: "(allocState * (nat => clientState)) => systemState" |
172 sysOfAlloc :: "(allocState * (nat => clientState)) => systemState" |
173 "sysOfAlloc == %(s,y). (| allocGiv = allocGiv s, |
173 "sysOfAlloc == %(s,y). (| allocGiv = allocGiv s, |
174 allocAsk = allocAsk s, |
174 allocAsk = allocAsk s, |
175 allocRel = allocRel s, |
175 allocRel = allocRel s, |
176 client = y |)" |
176 client = y |)" |
|
177 (*** "sysOfAlloc == %(s,y). s(|client := y|)" TYPE DOESN'T CHANGE***) |
|
178 |
177 |
179 |
178 sysOfClient :: "((nat => clientState) * allocState ) => systemState" |
180 sysOfClient :: "((nat => clientState) * allocState ) => systemState" |
179 "sysOfClient == %(x,y). sysOfAlloc(y,x)" |
181 "sysOfClient == %(x,y). sysOfAlloc(y,x)" |
180 |
182 |
181 |
183 |
193 |
195 |
194 defines |
196 defines |
195 System_def |
197 System_def |
196 "System == (extend sysOfAlloc Alloc) |
198 "System == (extend sysOfAlloc Alloc) |
197 Join |
199 Join |
198 (extend sysOfClient (PPI x: lessThan Nclients. Client)) |
200 (extend sysOfClient (plam x: lessThan Nclients. Client)) |
199 Join |
201 Join |
200 Network" |
202 Network" |
201 end |
203 end |