| | Some definitions of interest. |
|
| 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'} |
|
| action | Def action(dec) == Unit+(k:Knd dec(k)) |
| | | Thm* dec:(Knd Type). action(dec) Type |
|
| Knd | Def Knd == (IdLnk Id)+Id |
| | | Thm* Knd Type |
|
| Msg | Def Msg(M) == l:IdLnk t:Id M(l,t) |
| | | Thm* M:(IdLnk Id Type). Msg(M) Type |
|
| IdLnk | Def IdLnk == Id Id  |
| | | Thm* IdLnk Type |
|
| Id | Def Id == Atom  |
| | | Thm* Id Type |
|
| w-action-dec | Def w-action-dec(TA;M;i)(k)
Def == kindcase(k;a.TA(i,a);l,tg.if destination(l) = i M(l,tg) else Void fi) |
|
| assert | Def b == if b True else False fi |
| | | Thm* b: . b Prop |
|
| w-isnull | Def isnull(a) == isl(a) |
|
| isl | Def isl(x) == InjCase(x; y. true ; z. false ) |
| | | Thm* A,B:Type, x:A+B. isl(x)  |
|
| lsrc | Def source(l) == 1of(l) |
| | | Thm* l:IdLnk. source(l) Id |
|
| mlnk | Def mlnk(m) == 1of(m) |
| | | Thm* M:(IdLnk Id Type), m:Msg(M). mlnk(m) IdLnk |
| | | Thm* the_es:ES, m:Msg. mlnk(m) IdLnk |
|
| nat | Def == {i: | 0 i } |
| | | Thm* Type |
|
| not | Def A == A  False |
| | | Thm* A:Prop. ( A) Prop |
|
| w-kind | Def kind(a) == 1of(outr(a)) |
|
| outr | Def outr(x) == InjCase(x; y. "???"; z. z) |
| | | Thm* A,B:Type, x:A+B.  isl(x)  outr(x) B |
|
| pi1 | Def 1of(t) == t.1 |
| | | Thm* A:Type, B:(A Type), p:(a:A B(a)). 1of(p) A |
|
| top | Def Top == Void given Void |
| | | Thm* Top Type |