(148steps total)
PrintForm
Definitions
Lemmas
mb
event
system
6
Sections
EventSystems
Doc
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html
At:
sends-rule
2
2
1
1
1.
i
: Id
2.
k
: Knd
3.
l
: IdLnk
4.
ds
:
x
:Id fp-> Type
5.
da
:
a
:Knd fp-> Type
6.
f
: (
tg
:Id
State(
ds
)
ma-valtype(
da
;
k
)
(
da
(rcv(
l
;
tg
))?Void List)) List
7. source(
l
) =
i
8.
w
: World
9.
p
: FairFifo
10. FairFifo
11.
l@0
:IdLnk,
tg
:Id.
11.
(
w
.M(
l@0
,
tg
))
r if eqof(IdDeq)(source(
l@0
),
i
)
11. (
w
.M(
l@0
,
tg
))
r if
<
ds
,
da
,,,,<[<
k
,
l
>],
x
.
f
>,,,
>
11. (
w
.M(
l@0
,
tg
))
r
else fi.da(rcv(
l@0
;
tg
))
12. (eqof(IdDeq)(
i
,
i
)) ~ true
13. (
x
:Id. vartype(
i
;
x
)
r
ds
(
x
)?Top)
13.
& (
e
:E. loc(
e
) =
i
(valtype(
e
)
r ma-valtype(
da
; kind(
e
))))
13.
& (
e
:E. isrcv(
e
)
lnk(
e
) =
l
(valtype(
e
)
r ma-valtype(
da
; kind(
e
))))
13.
& ({
m
:Msg| source(mlnk(
m
)) =
i
}
r Msg((
l
,
tg
.
da
(rcv(
l
;
tg
))?Top)))
14.
t
:
.
14.
isnull(a(
i
;
t
))
14.
14.
(islocal(kind(a(
i
;
t
)))
14. (
14. (
deq-member(IdDeq;act(kind(a(
i
;
t
)));1of())
14. (
14. (
2of()(act(kind(a(
i
;
t
))),
x
.s(
i
;
t
).
x
,val(a(
i
;
t
))))
14.
& (
x
:Id.
14. & (
deq-member(product-deq(Knd;Id;KindDeq;IdDeq);<kind(a(
i
;
t
)),
x
>;1of())
14. & (
14. & (
s(
i
;
t
+1).
x
= 2of()(<kind(a(
i
;
t
)),
x
>,
x
.s(
i
;
t
).
x
,val(a(
i
;
t
))))
14.
& (
l@0
:IdLnk.
14. & (
(eqof(product-deq(Knd;IdLnk;KindDeq;IdLnkDeq))(<
k
,
l
>,<kind(a(
i
;
t
)),
l@0
>)
14. & ((
false
)
14. & (
14. & (
withlnk(
l@0
;m(
i
;
t
))
14. & (
=
14. & (
if source(
l@0
) =
i
14. & (if
concat(map(
tgf
.map(
x
.<1of(
tgf
),
x
>;2of(
tgf
)
14. & (if concat(map(
tgf
.map(
x
.<1of(
tgf
),
x
>;
((
x
.s(
i
;
t
).
x
)
14. & (if concat(map(
tgf
.map(
x
.<1of(
tgf
),
x
>;
,val(a(
i
;
t
))));
f
))
14. & (
else nil fi)
14.
& (
x
:Id.
14. & (
(deq-member(IdDeq;
x
;1of())
deq-member(KindDeq;kind(a(
i
;
t
));2of()(
x
)))
14. & (
14. & (
s(
i
;
t
).
x
= s(
i
;
t
+1).
x
)
14.
& (
l@0
:IdLnk,
tg
:Id.
14. & (
(deq-member(product-deq(IdLnk;Id;IdLnkDeq;IdDeq);<
l@0
,
tg
>;1of())
14. & (
(
14. & (
(
deq-member(KindDeq;kind(a(
i
;
t
));2of()(<
l@0
,
tg
>)))
14. & (
14. & (
w-tagged(
tg
; onlnk(
l@0
;m(
i
;
t
))) = nil)
15.
a
:Action(
i
).
isnull(
a
)
(valtype(
i
;
a
)
r
da
(kind(
a
))?Top)
16.
x
:Id.
16.
vartype(
i
;
x
)
r if deq-member(IdDeq;
x
;1of(
ds
))
2of(
ds
)(
x
) else Top fi
e
:E.
loc(
e
) =
i
Id
kind(
e
) =
k
Knd
sends(
l
;
e
)
=
tagged-messages(
l
;
z
.(
z
when
e
);val(
e
);
f
)
Msg((
l
,
tg
.
da
(rcv(
l
;
tg
))?Top)) List
By:
Assert (IdDeq
EqDecider(Id))
Generated subgoals:
1
IdDeq
EqDecider(Id)
1
step
2
17. IdDeq
EqDecider(Id)
e
:E.
loc(
e
) =
i
Id
kind(
e
) =
k
Knd
sends(
l
;
e
)
=
tagged-messages(
l
;
z
.(
z
when
e
);val(
e
);
f
)
Msg((
l
,
tg
.
da
(rcv(
l
;
tg
))?Top)) List
106
steps
About:
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html
(148steps total)
PrintForm
Definitions
Lemmas
mb
event
system
6
Sections
EventSystems
Doc