| Some definitions of interest. |
|
ma-da | Def M.da(a) == 1of(2of(M))(a)?Top |
|
ma-valtype | Def ma-valtype(da; k) == da(k)?Top |
|
Kind-deq | Def KindDeq == union-deq(IdLnk Id;Id;product-deq(IdLnk;Id;IdLnkDeq;IdDeq);IdDeq) |
|
w-action | Def Action(i) == action(w-action-dec(w.TA;w.M;i)) |
|
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'} |
|
Knd | Def Knd == (IdLnk Id)+Id |
| | Thm* Knd Type |
|
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) |
|
IdLnk | Def IdLnk == Id Id  |
| | Thm* IdLnk Type |
|
ma-state | Def State(ds) == x:Id ds(x)?Top |
|
w-E | Def E == {p:(Id )|  isnull(a(1of(p);2of(p))) } |
|
Id | Def Id == Atom  |
| | Thm* Id Type |
|
id-deq | Def IdDeq == product-deq(Atom; ;AtomDeq;NatDeq) |
|
assert | Def b == if b True else False fi |
| | Thm* b: . b Prop |
|
fpf-cap | Def f(x)?z == if x dom(f) f(x) else z fi |
|
deq-member | Def deq-member(eq;x;L) == reduce( a,b. eqof(eq)(a,x)  b;false ;L) |
|
eqof | Def eqof(d) == 1of(d) |
| | Thm* T:Type, d:EqDecider(T). eqof(d) T T   |
|
fpf | Def a:A fp-> B(a) == d:A List a:{a:A| (a d) } B(a) |
| | Thm* A:Type, B:(A Type). a:A fp-> B(a) Type |
|
ma-empty | Def == mk-ma(; ; ; ; ; ; ; ) |
|
fpf-empty | Def == <nil, x. > |
|
isrcv | Def isrcv(k) == isl(k) |
| | Thm* k:Knd. isrcv(k)  |
|
w-valtype | Def valtype(i;a) == kindcase(kind(a);a.w.TA(i,a);l,tg.w.M(l,tg)) |
|
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 |
|
not | Def A == A  False |
| | Thm* A:Prop. ( A) Prop |
|
w-M | Def w.M == 1of(2of(2of(w))) |
|
w-ekind | Def kind(e) == kind(act(e)) |
|
w-kind | Def kind(a) == 1of(outr(a)) |
|
w-vartype | Def vartype(i;x) == w.T(i,x) |
|
pi1 | Def 1of(t) == t.1 |
| | Thm* A:Type, B:(A Type), p:(a:A B(a)). 1of(p) A |
|
tagof | Def tag(k) == 2of(outl(k)) |
| | Thm* k:Knd. isrcv(k)  tag(k) Id |
|
pi2 | Def 2of(t) == t.2 |
| | Thm* A:Type, B:(A Type), p:(a:A B(a)). 2of(p) B(1of(p)) |
|
rcv | Def rcv(l; tg) == inl(<l,tg>) |
| | Thm* l:IdLnk, tg:Id. rcv(l; tg) Knd |
|
top | Def Top == Void given Void |
| | Thm* Top Type |
|
w-isnull | Def isnull(a) == isl(a) |