| Some definitions of interest. |
|
d-es | Def es is an event system of D
Def == w:World, p:FairFifo. PossibleWorld(D;w) & es = ES(w) ES |
|
d-realizes | Def D
Def realizes es.P(es)
Def == D':Dsys.
Def == D D'  ( w:World, p:FairFifo. PossibleWorld(D';w)  P(ES(w))) |
|
d-realizes2 | Def D realizes2 es.P(es) == w:World, p:FairFifo. PossibleWorld(D;w)  P(ES(w)) |
|
dsys | Def Dsys == Id MsgA |
| | Thm* Dsys Type{i'} |
|
event_system | Def ES
Def == E:Type
Def == EqDecider(E) (T:Id Id Type
Def == EqDecider(E) ( V:Id Id Type
Def == EqDecider(E) ( M:IdLnk Id Type
Def == EqDecider(E) ( Top (loc:E Id
Def == EqDecider(E) ( Top ( kind:E Knd
Def == EqDecider(E) ( Top ( val:(e:E eventtype(kind;loc;V;M;e))
Def == EqDecider(E) ( Top ( when:(x:Id e:E T(loc(e),x))
Def == EqDecider(E) ( Top ( after:(x:Id e:E T(loc(e),x))
Def == EqDecider(E) ( Top ( sends:(l:IdLnk E (Msg_sub(l; M) List))
Def == EqDecider(E) ( Top ( sender:{e:E| isrcv(kind(e)) } E
Def == EqDecider(E) ( Top ( index:(e:{e:E| isrcv(kind(e)) }  ||sends
Def == EqDecider(E) ( Top ( index:(e:{e:E| isrcv(kind(e)) }  ||(lnk(kind(e))
Def == EqDecider(E) ( Top ( index:(e:{e:E| isrcv(kind(e)) }  ||,sender(e))||)
Def == EqDecider(E) ( Top ( first:E 
Def == EqDecider(E) ( Top ( pred:{e':E|  (first(e')) } E
Def == EqDecider(E) ( Top ( causl:E E Prop
Def == EqDecider(E) ( Top ( ESAxioms{i:l}
Def == EqDecider(E) ( Top ( ESAxioms(E;
Def == EqDecider(E) ( Top ( ESAxioms(T;
Def == EqDecider(E) ( Top ( ESAxioms(M;
Def == EqDecider(E) ( Top ( ESAxioms(loc;
Def == EqDecider(E) ( Top ( ESAxioms(kind;
Def == EqDecider(E) ( Top ( ESAxioms(val;
Def == EqDecider(E) ( Top ( ESAxioms(when;
Def == EqDecider(E) ( Top ( ESAxioms(after;
Def == EqDecider(E) ( Top ( ESAxioms(sends;
Def == EqDecider(E) ( Top ( ESAxioms(sender;
Def == EqDecider(E) ( Top ( ESAxioms(index;
Def == EqDecider(E) ( Top ( ESAxioms(first;
Def == EqDecider(E) ( Top ( ESAxioms(pred;
Def == EqDecider(E) ( Top ( ESAxioms(causl)
Def == EqDecider(E) ( Top ( Top)) |
| | Thm* ES Type{i'} |
|
Knd | Def Knd == (IdLnk Id)+Id |
| | Thm* Knd Type |
|
es-locl | Def (e <loc e') == loc(e) = loc(e') Id & (e < e') |
|
ma-state | Def State(ds) == x:Id ds(x)?Top |
|
Id | Def Id == Atom  |
| | Thm* Id Type |
|
d-single-pre | Def @i (with ds: ds action a:T precondition a(v) is P s v)(j)
Def == if eqof(IdDeq)(j,i) (with ds: ds action a:T precondition a(v) is P s v)
Def == else fi |
|
es-E | Def E == 1of(es) |
|
es-after | Def (x after e)
Def == 1of(2of(2of(2of(2of(2of(2of(2of(2of(2of(2of(es)))))))))))(x,e) |
|
es-valtype | Def valtype(e) == if isrcv(e) rcvtype(e) else acttype(e) fi |
|
es-kind | Def kind(e) == 1of(2of(2of(2of(2of(2of(2of(2of(es))))))))(e) |
|
es-loc | Def loc(e) == 1of(2of(2of(2of(2of(2of(2of(es)))))))(e) |
|
es-val | Def val(e) == 1of(2of(2of(2of(2of(2of(2of(2of(2of(es)))))))))(e) |
|
es-vartype | Def vartype(i;x) == 1of(2of(2of(es)))(i,x) |
|
es-when | Def (x when e) == 1of(2of(2of(2of(2of(2of(2of(2of(2of(2of(es))))))))))(x,e) |
|
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 |
|
fpf-cap | Def f(x)?z == if x dom(f) f(x) else z fi |
|
id-deq | Def IdDeq == product-deq(Atom; ;AtomDeq;NatDeq) |
|
locl | Def locl(a) == inr(a) |
| | Thm* a:Id. locl(a) Knd |
|
not | Def A == A  False |
| | Thm* A:Prop. ( A) Prop |
|
top | Def Top == Void given Void |
| | Thm* Top Type |