| THM | s-sends-rule1 |
(rcv(l; tg) = k @source(l): ma-single-sends1(A; B; T; x; k; l; tg; f) & ( & (@source(l): ma-single-sends1(A; B; T; x; k; l; tg; f) & ( & (D & (realizes es.(vartype(source(l);x) & (realizes es.& ( & (realizes es.& (loc(e) = source(l) & (realizes es.& ( & (realizes es.& (kind(e) = k & (realizes es.& ( & (realizes es.& ( & (realizes es.& (loc(e) = source(l) & (realizes es.& ( & (realizes es.& (kind(e) = k & (realizes es.& ( & (realizes es.& (( & (realizes es.& ((( & (realizes es.& ((((e' & (realizes es.& ((( & (realizes es.& (((kind(e') = rcv(l; tg) & (realizes es.& ((& ( & (realizes es.& ((& map( |
| THM | s-unconditional-send1-rule |
(rcv(l; tg) = k ( (@source(l): ma-single-sends1(A; B; T; x; k; l; tg; ( (& ( (& (@source(l): ma-single-sends1(A; B; T; x; k; l; tg; ( (& ( (& (D (& (realizes es.(vartype(source(l);x) (& (realizes es.& ( (& (realizes es.& (loc(e) = source(l) (& (realizes es.& ( (& (realizes es.& (kind(e) = k (& (realizes es.& ( (& (realizes es.& ( (& (realizes es.& (loc(e) = source(l) (& (realizes es.& ( (& (realizes es.& (kind(e) = k (& (realizes es.& ( (& (realizes es.& (( (& (realizes es.& ((kind(e') = rcv(l; tg) (& (realizes es.& ((& sender(e') = e (& (realizes es.& ((& & ( (& (realizes es.& ((& & (kind(e'') = rcv(l; tg) (& (realizes es.& ((& & ( (& (realizes es.& ((& & (sender(e'') = e (& (realizes es.& ((& & val(e') = f((x when e),val(e)) |
| THM | conditional-send1-rule |
(rcv(l; tg) = k ( (@source(l): ma-single-sends1(A; (@source(l): ma-single-sends1(B; (@source(l): ma-single-sends1(T; (@source(l): ma-single-sends1(x; (@source(l): ma-single-sends1(k; (@source(l): ma-single-sends1(l; (@source(l): ma-single-sends1(tg; (@source(l): ma-single-sends1(( ( (& ( (& (@source(l): ma-single-sends1(A; (& (@source(l): ma-single-sends1(B; (& (@source(l): ma-single-sends1(T; (& (@source(l): ma-single-sends1(x; (& (@source(l): ma-single-sends1(k; (& (@source(l): ma-single-sends1(l; (& (@source(l): ma-single-sends1(tg; (& (@source(l): ma-single-sends1(( (& ( (& (D (& (realizes es.(vartype(source(l);x) (& (realizes es.& ( (& (realizes es.& (loc(e) = source(l) (& (realizes es.& ( (& (realizes es.& (kind(e) = k (& (realizes es.& ( (& (realizes es.& ( (& (realizes es.& (loc(e) = source(l) (& (realizes es.& ( (& (realizes es.& (kind(e) = k (& (realizes es.& ( (& (realizes es.& ((c((x when e),val(e)) (& (realizes es.& (( (& (realizes es.& ((( (& (realizes es.& (((kind(e') = rcv(l; tg) (& (realizes es.& (((& sender(e') = e (& (realizes es.& (((& & ( (& (realizes es.& (((& & (kind(e'') = rcv(l; tg) (& (realizes es.& (((& & ( (& (realizes es.& (((& & (sender(e'') = e (& (realizes es.& (((& & val(e') = f((x when e),val(e)) (& (realizes es.& (& ( (& (realizes es.& (& ( (& (realizes es.& (& ( (& (realizes es.& (& ( |
| THM | s-init-rule |
@i: x : T initially x = v & ( & (@i: x : T initially x = v & ( & (D & (realizes es.(vartype(i;x) & (realizes es.& ( |
| THM | s-frame-rule |
@i: only members of L affect x :T & ( & (@i: only members of L affect x :T & ( & (D & (realizes es.(vartype(i;x) & (realizes es.& ( & (realizes es.& (loc(e) = i & (realizes es.& ( & (realizes es.& (( & (realizes es.& (& ( |
| THM | s-pre-init-rule1 |
@i: ma-single-pre-init1(x;A;c;a;T;x,v.P(x,v)) & ( & (@i: ma-single-pre-init1(x;A;c;a;T;x,v.P(x,v)) & ( & (D & (realizes es.(vartype(i;x) & (realizes es.& ( & (realizes es.& ( & (realizes es.& (loc(e) = i & (realizes es.& ( & (realizes es.& (kind(e) = locl(a) & (realizes es.& ( & (realizes es.& (loc(e) = i & (realizes es.& ( & (realizes es.& (kind(e) = locl(a) & (realizes es.& & (( & (realizes es.& & ( & (realizes es.& & (( & (realizes es.& & ((loc(e) = i & (realizes es.& & ((& kind(e) = locl(a) |
| THM | frame-rule0 |
@i: only members of nil affect x :T & ( & (@i: only members of nil affect x :T & ( & (D & (realizes es.(vartype(i;x) |
| THM | frame-rule1 |
@i: only members of [k] affect x :T & ( & (@i: only members of [k] affect x :T & ( & (D & (realizes es.(vartype(i;x) & (realizes es.& & (realizes es.& & ( |
| THM | s-sframe-rule |
@i: only L sends on (l with tg) & ( & (@i: only L sends on (l with tg) & ( & (D & (realizes es. |
| THM | better-sframe-rule |
@source(l): only L sends on (l with tg) & ( & (@source(l): only L sends on (l with tg) & ( & (D & (realizes es. & (realizes es.loc(e) = destination(l) & (realizes es. & (realizes es.kind(e) = rcv(l; tg) |
| THM | ma-single-pre-init-ma-single-pre-compatible |
ds || d1 (with ds: ds (init: init action a:T aprecondition a(v) is aP) ||+ (with ds: d1 aaction a1:T1 aprecondition a1(v) is aP1 s v) |
| THM | ma-single-pre-init-ma-single-sends-compatible |
ds || d1 locl(a) : T || da (with ds: ds (init: init action a:T aprecondition a(v) is aP) ||+ ma-single-sends(d1; da; k; l; f) |
| THM | ma-single-pre-init-ma-single-effect-compatible |
ds || d1 locl(a) : T || da (with ds: ds (init: init action a:T aprecondition a(v) is aP) ||+ ma-single-effect(d1; da; k; x; f) |
| THM | ma-single-pre-init-ma-single-sframe-compatible |
(with ds: ds (init: init action a:T aprecondition a(v) is aP) ||+ only L sends on (l with tg) |
| THM | ma-single-pre-init-ma-single-frame-compatible |
ds || x : t (with ds: ds (init: init action a:T aprecondition a(v) is aP) ||+ only members of L affect x :t |
| THM | ma-single-pre-init-ma-single-init-compatible |
ds || x : t (x (with ds: ds (init: init action a:T aprecondition a(v) is aP) ||+ x : t initially x = v |
| THM | ma-single-pre-ma-single-sends-compatible |
ds || d1 locl(a) : T || da (with ds: ds (action a:T (precondition a(v) is (P s v) ||+ ma-single-sends(d1; da; k; l; f) |
| THM | ma-single-sends-ma-single-pre-compatible |
ds || d1 locl(a) : T || da ma-single-sends(d1; da; k; l; f) ||+ (with ds: ds maction a:T mprecondition a(v) is mP s v) |
| THM | ma-single-effect-ma-single-pre-compatible |
ds || d1 locl(a) : T || da ma-single-effect(d1; da; k; x; f) ||+ (with ds: ds maction a:T mprecondition a(v) is mP s v) |
| THM | ma-single-pre-ma-single-sframe-compatible |
(with ds: ds (action a:T (precondition a(v) is (P s v) ||+ only L sends on (l with tg) |
| THM | ma-single-pre-ma-single-frame-compatible |
ds || x : t (with ds: ds (action a:T (precondition a(v) is (P s v) ||+ only members of L affect x :t |
| THM | ma-single-frame-ma-single-pre-compatible |
ds || x : t only members of L affect x :t ||+ (with ds: ds oaction a:T oprecondition a(v) is oP s v) |
| THM | ma-single-pre-ma-single-init-compatible |
ds || x : t (with ds: ds (action a:T (precondition a(v) is (P s v) ||+ x : t initially x = v |
| THM | ma-single-init-ma-single-pre-compatible |
ds || x : t x : t initially x = v ||+ (with ds: ds xaction a:T xprecondition a(v) is xP s v) |
| THM | ma-single-sends-ma-single-effect-compatible |
ds || d1 da || d2 ma-single-sends(ds; da; k; l; f) ||+ ma-single-effect(d1; d2; k1; x; f1) |
| THM | ma-single-effect-ma-single-sends-compatible |
ds || d1 da || d2 ma-single-effect(d1; d2; k1; x; f1) ||+ ma-single-sends(ds; da; k; l; f) |
| THM | ma-single-sends-ma-single-sframe-compatible |
(l = l1 ma-single-sends(ds; da; k; l; f) ||+ only L sends on (l1 with tg) |
| THM | ma-single-sends-ma-single-frame-compatible |
ds || x : t ma-single-sends(ds; da; k; l; f) ||+ only members of L affect x :t |
| THM | ma-single-frame-ma-single-sends-compatible |
ds || x : t only members of L affect x :t ||+ ma-single-sends(ds; da; k; l; f) |
| THM | ma-single-sends-ma-single-init-compatible |
ds || x : t |
| THM | ma-single-init-ma-single-sends-compatible |
ds || x : t |
| THM | ma-single-effect-ma-single-sframe-compatible |
ma-single-effect(ds; da; k; x; f) ||+ only L sends on (l with tg) |
| THM | ma-single-effect-ma-single-frame-compatible |
ds || x1 : t (x = x1 ma-single-effect(ds; da; k; x; f) ||+ only members of L affect x1 :t |
| THM | ma-single-frame-ma-single-effect-compatible |
ds || x1 : t (x = x1 only members of L affect x1 :t ||+ ma-single-effect(ds; da; k; x; f) |
| THM | ma-single-effect-ma-single-init-compatible |
ds || x1 : t |
| THM | ma-single-init-ma-single-effect-compatible |
ds || x1 : t |
| THM | ma-single-frame-ma-single-sframe-compatible |
only members of L1 affect x :t ||+ only L sends on (l with tg) |
| THM | ma-single-init-ma-single-sframe-compatible |
x : t initially x = v ||+ only L sends on (l with tg) |
| THM | ma-single-frame-ma-single-init-compatible |
x : t || x1 : t1 |
| THM | ma-single-init-ma-single-frame-compatible |
x : t || x1 : t1 |
| THM | ma-single-sends-ma-single-sends-compatible |
ds || d1 da || d2 ma-single-sends(ds; da; k; l; f) ||+ ma-single-sends(d1; d2; k1; l1; f1) |
| THM | ma-single-effect-ma-single-effect-compatible |
ds || d1 da || d2 ma-single-effect(ds; da; k; x; f) ||+ ma-single-effect(d1; d2; k1; x1; f1) |
| THM | ma-single-frame-ma-single-frame-compatible |
|
| THM | ma-single-init-ma-single-init-compatible |
|
| THM | decidable__equal_nat |
|
| def | Dconstant |
== if loc = i == else nil fi |
| THM | Dconstant__compatible |
|
| THM | Dconstant__feasible |
|
| THM | Dconstant__realizes |
|
| def | once |
== if loc = i == if [ma-single-pre-init1("done"; == if [only members of [locl(a)] affect "done" : == if [ma-single-effect0("done"; == else nil fi |
| THM | once__compatible |
|
| THM | once__feasible |
|
| THM | once__realizes |
realizes es. realizes es.& realizes es.& realizes es.& kind(e') = locl(a) |
| def | send-once |
== [ == [if loc = source(l) == [if ma-single-sends1(A; Unit; T; x; locl(a); l; tg; ( == [else fi] |
| THM | send-once__compatible |
|
| THM | send-once__feasible |
|
| THM | send-once__realizes |
A T realizes es.(vartype(source(l);x) realizes es.& ( realizes es.& ( realizes es.& (kind(e) = rcv(l; tg) realizes es.& (& val(e) = f((x when sender(e))) realizes es.& (& & kind(sender(e)) = locl(a) realizes es.& (& & ( realizes es.& (& & (kind(e') = rcv(l; tg) realizes es.& (& & ( realizes es.& (& & (kind(sender(e')) = locl(a) |
| def | recognizer1 |
== if loc = i == if [r : == if [only members of [k] affect r : == if [ma-single-effect1(r; == else nil fi |
| THM | recognizer1__compatible |
A |
| THM | recognizer1__feasible |
A |
| THM | recognizer1__realizes |
A T realizes es. realizes es.& realizes es.& realizes es.& realizes es.& realizes es.& realizes es.& realizes es.& |
| def | trigger1 |
== [ == [if loc = i |
| THM | trigger1__compatible |
A T |
| THM | trigger1__feasible |
A T |
| THM | trigger1__realizes |
A T realizes es.(vartype(i;x) realizes es.& realizes es.& realizes es.& ( realizes es.& realizes es.& realizes es.& P((x when e),val(e)) |
| def | rset |
|
| def | ring |
== ( == ( == (& source(out(i)) = i == (& & destination(in(i)) = i == (& & in(destination(out(i))) = out(i) == (& & out(source(in(i))) = in(i) == & ( == & |R| |
| def | rnext |
|
| def | rprev |
|
| def | rdist |
|
| THM | rdist-property |
ring(R;in;out) |
| THM | rnext-rprev |
|
| THM | rnext-one-one |
ring(R;in;out) |
| THM | rdist-rprev |
ring(R;in;out) |
| THM | ring-list |
ring(R;in;out) |
| THM | rset_sq |
|
| THM | decidable__rset_equal |
|
| def | ring-leader1 |
== if R(loc) == if [ == if [ == if [((in(loc)); "vote");"leader";"me")); == if [ == if [ma-single-sends1( == if [ma-single-sends1( == if [ma-single-sends1( == if [ma-single-sends1("me"; == if [ma-single-sends1(rcv((in(loc)); "vote"); == if [ma-single-sends1((out(loc)); == if [ma-single-sends1("vote"; == if [ma-single-sends1(( == if [only [rcv((in(loc)); "vote"); == if [only [locl("send-me")] sends on (out(loc) with "vote")] == else nil fi |
| THM | ring-leader1__compatible |
ring(R;in;out) Inj(|R|; |
| THM | ring-leader1__feasible |
ring(R;in;out) Inj(|R|; |
| THM | ring-leader1__realizes |
ring(R;in;out) Inj(|R|; realizes es. realizes es. realizes es.& ( |
| def | bi-graph |
== == ( == & == & (l == & (lnk-inv(l) == & ( == & & == & & (l == & & (lnk-inv(l) |
| def | bi-graph-edge |
|
| THM | inv-is-edge |
bi-graph(G;to;from) |
| THM | src-edge |
bi-graph(T;to;from) |
| THM | dst-edge |
bi-graph(T;to;from) |
| def | bi-graph-to |
|
| def | bi-graph-from |
|
| def | bi-graph-inv |
|
| THM | edge-to |
bi-graph(G;to;from) |
| THM | edge-from |
bi-graph(G;to;from) |
| THM | edge-inv-to |
bi-graph(G;to;from) |
| THM | edge-inv-from |
bi-graph(G;to;from) |
| def | bi-tree |
== bi-graph(T;to;from) == & ( == & ( == & (lconnects(p;i;j) & ( == & ( == & |T| |
| THM | bi-tree-diameter |
bi-tree(T;to;from) |
| def | spanner |
== ( == & ( == & ((l1 |
| def | spanner-root |
|
| THM | spanner-root-exists |
bi-tree(T;to;from) spanner(f;T;to;from) |
| THM | spanner-root-unique |
bi-tree(T;to;from) spanner(f;T;to;from) ( |
| def | update |
|