| Some definitions of interest. |
|
fair-fifo | Def FairFifo
Def == ( i:Id, t: , l:IdLnk. source(l) = i  onlnk(l;m(i;t)) = nil Msg List)
Def == & ( i:Id, t: .
Def == & ( isnull(a(i;t))
Def == & (
Def == & (( x:Id. s(i;t+1).x = s(i;t).x vartype(i;x))
Def == & (& m(i;t) = nil Msg List)
Def == & ( i:Id, t: , l:IdLnk.
Def == & ( isrcv(l;a(i;t))
Def == & (
Def == & (destination(l) = i
Def == & (& ||queue(l;t)|| 1 & hd(queue(l;t)) = msg(a(i;t)) Msg)
Def == & ( l:IdLnk, t: .
Def == & ( t': .
Def == & (t t' & isrcv(l;a(destination(l);t')) queue(l;t') = nil Msg List) |
|
w-E | Def E == {p:(Id )|  isnull(a(1of(p);2of(p))) } |
|
w-match | Def match(l;t;t')
Def == (||snds(l;t)|| ||rcvs(l;t')||)
Def == (||rcvs(l;t')||< ||snds(l;t)||+||onlnk(l;m(source(l);t))||) |
|
w-snds | Def snds(l;t) == concat(map( t1.m(l;t1);upto(t))) |
|
w-onlnk | Def onlnk(l;mss) == filter( ms.mlnk(ms) = l;mss) |
|
w-rcvs | Def rcvs(l;t) == filter( a.isrcv(l;a);map( t1.a(destination(l);t1);upto(t))) |
|
world | Def World
Def == T:Id Id Type
Def == TA:Id Id Type
Def == M:IdLnk Id Type
Def == (i:Id    (x:Id T(i,x))) (i:Id    action(w-action-dec(TA;M;i)))
Def == (i:Id    ({m:Msg(M)| source(mlnk(m)) = i } List)) Top |
| | Thm* World Type{i'} |
|
assert | Def b == if b True else False fi |
| | Thm* b: . b Prop |
|
int_seg | Def {i..j } == {k: | i k < j } |
| | Thm* m,n: . {m..n } Type |
|
isrcv | Def isrcv(k) == isl(k) |
| | Thm* k:Knd. isrcv(k)  |
|
length | Def ||as|| == Case of as; nil 0 ; a.as' ||as'||+1 (recursive) |
| | Thm* A:Type, l:A List. ||l||  |
| | Thm* ||nil||  |
|
w-msg | Def msg(a) == msg(lnk(kind(a));tag(kind(a));val(a)) |
|
lnk | Def lnk(k) == 1of(outl(k)) |
| | Thm* k:Knd. isrcv(k)  lnk(k) IdLnk |
|
lsrc | Def source(l) == 1of(l) |
| | Thm* l:IdLnk. source(l) Id |
|
w-Msg | Def Msg == Msg(w.M) |
|
nat | Def == {i: | 0 i } |
| | Thm* Type |
|
select | Def l[i] == hd(nth_tl(i;l)) |
| | Thm* A:Type, l:A List, n: . 0 n  n<||l||  l[n] A |
|
w-ekind | Def kind(e) == kind(act(e)) |
|
w-a | Def a(i;t) == 1of(2of(2of(2of(2of(w)))))(i,t) |
|
w-loc | Def loc(e) == 1of(e) |
|
w-m | Def m(i;t) == 1of(2of(2of(2of(2of(2of(w))))))(i,t) |
|
w-time | Def time(e) == 2of(e) |