IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html
At:
better-sends-rule1233214221211211111 1. i : Id
2. k : Knd
3. l : IdLnk
4. ds : x:Id fp-> Type
5. da : a:Knd fp-> Type
6. f : (tg:IdState(ds)ma-valtype(da; k)(da(rcv(l; tg))?Void List)) List
7. source(l) = i 8. D' : Dsys
9. d-single-sends(i; ds; da; k; l; f) D' 10. w : World
11. p : FairFifo
12. PossibleWorld(D';w)
13. x:Id. vartype(i;x) r ds(x)?Top
14. e:E. loc(e) = i (valtype(e) r ma-valtype(da; kind(e)))
15. e:E. isrcv(e) lnk(e) = l (valtype(e) r ma-valtype(da; kind(e)))
16. {m:Msg| source(mlnk(m)) = i } r Msg((l,tg. da(rcv(l; tg))?Top))
17. e:E.
17. loc(e) = i 17. 17. kind(e) = k sends(l;e) = tagged-messages(l;z.(z when e);val(e);f)
18. x:Id. vartype(i;x) r ds(x)?Top
19. e:E. loc(e) = i (valtype(e) r ma-valtype(da; kind(e)))
20. e:E. isrcv(e) lnk(e) = l (valtype(e) r ma-valtype(da; kind(e)))
21. e : E
22. loc(e) = i 23. kind(e) = k 24. valtype(e) r ma-valtype(da; kind(e))
25. sends(l;e) = tagged-messages(l;z.(z when e);val(e);f)
26. valtype(e) r ma-valtype(da; kind(e))
27. L :
27. n:||sends(l;e)||.
27. e':E. isrcv(e') & lnk(e') = l & sender(e') = e & index(e') = n 28. LL :
28. n:||sends(l;e)||{e':E
28. n:||sends(l;e)||{| isrcv(e')
28. n:||sends(l;e)||{| & lnk(e') = l & sender(e') = e & index(e') = n }
29. (n.1of(L(n))) = LL 30. e:E.
30. isrcv(e) sends(lnk(e);sender(e))[index(e)] = msg(lnk(e);tag(e);val(e))
31. e:E, l:IdLnk, n:||sends(l;e)||.
31. e':E. isrcv(e') & lnk(e') = l & sender(e') = e & index(e') = n 32. (Msg on l) r (IdLnk(tg:Idma-valtype(da; rcv(l; tg))))
33. map(LL;upto(||sends(l;e)||))
33. {e':E| isrcv(e') & lnk(e') = l & sender(e') = e } List
34. ||upto(||sends(l;e)||)|| = ||sends(l;e)||
35. ||map(LL;upto(||sends(l;e)||))|| = ||sends(l;e)||
36. ||map(e'.<tag(e'),val(e')>;map(LL;upto(||sends(l;e)||)))|| = ||sends(l;e)||
37. i1 : 38. i1<||map(e'.<tag(e'),val(e')>;map(LL;upto(||sends(l;e)||)))||
39. v : E
40. isrcv(v)
41. lnk(v) = l 42. sender(v) = e 43. index(v) = i1 44. l:IdLnk, n:||sends(l;v)||.
44. e':E. isrcv(e') & lnk(e') = l & sender(e') = v & index(e') = n 45. sends(lnk(v);sender(v))[index(v)] = msg(lnk(v);tag(v);val(v))
46. valtype(v) r ma-valtype(da; kind(v))
47. valtype(v) r ma-valtype(da; kind(v))
48. sends(lnk(v);sender(v)) = sends(l;e)
49. (Msg on lnk(v)) List
50. (Msg on lnk(v)) List
51. u : (Msg on lnk(v))
u = u IdLnk(tg:Idma-valtype(da; rcv(l; tg)))
By:
Fold `member` 0 THEN DoSubsume THEN Subst' (lnk(v) = l) 0
Generated subgoal:
1
(Msg on l) r (IdLnk(tg:Idma-valtype(da; rcv(l; tg))))
Auto
About:
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html