| Some definitions of interest. |
|
msga | Def MsgA
Def == ds:x:Id fp-> Type
Def == da:a:Knd fp-> Type
Def == x:Id fp-> ds(x)?Void a:Id fp-> State(ds) ma-valtype(da; locl(a)) Prop
Def == kx:Knd Id fp-> State(ds) ma-valtype(da; 1of(kx)) ds(2of(kx))?Void
Def == kl:Knd IdLnk fp-> (tg:Id
Def == kl:Knd IdLnk fp-> ( State(ds) ma-valtype(da; 1of(kl))
Def == kl:Knd IdLnk fp-> ((da(rcv(2of(kl); tg))?Void List)) List
Def == x:Id fp-> Knd List ltg:IdLnk Id fp-> Knd List Top |
| | Thm* MsgA Type{i'} |
|
Id | Def Id == Atom  |
| | Thm* Id Type |
|
once | Def once(loc;a;i)
Def == if loc = i
Def == if [ma-single-pre-init1("done"; ;false ;a;Unit;x,v. x);
Def == if [only members of [locl(a)] affect "done" : ;
Def == if [ma-single-effect0("done"; ;locl(a);Unit; x,v. true )]
Def == else nil fi |
| | Thm* loc,a,i:Id. once(loc;a;i) MsgA List |