Step * 1 of Lemma assert-has-header-and-in-locs


1. [f] Name ─→ Type
2. msg Message(f)@i
3. hdr Name@i
4. locs bag(Id)@i
5. [%] hdr encodes Id × Top
6. msg-header(msg) hdr ∈ Name
⊢ ↑bag-deq-member(IdDeq;fst(msg-body(msg));locs) ⇐⇒ (msg-header(msg) hdr ∈ Name) ∧ fst(msg-body(msg)) ↓∈ locs
BY
(Assert ⌈msg-body(msg) ∈ Id × Top⌉⋅ THEN Auto) }

1
1. Name ─→ Type
2. msg Message(f)@i
3. hdr Name@i
4. locs bag(Id)@i
5. hdr encodes Id × Top
6. msg-header(msg) hdr ∈ Name
7. msg-body(msg) ∈ Id × Top
8. ↑bag-deq-member(IdDeq;fst(msg-body(msg));locs)@i
⊢ fst(msg-body(msg)) ↓∈ locs


Latex:



Latex:

1.  [f]  :  Name  {}\mrightarrow{}  Type
2.  msg  :  Message(f)@i
3.  hdr  :  Name@i
4.  locs  :  bag(Id)@i
5.  [\%]  :  hdr  encodes  Id  \mtimes{}  Top
6.  msg-header(msg)  =  hdr
\mvdash{}  \muparrow{}bag-deq-member(IdDeq;fst(msg-body(msg));locs)
\mLeftarrow{}{}\mRightarrow{}  (msg-header(msg)  =  hdr)  \mwedge{}  fst(msg-body(msg))  \mdownarrow{}\mmember{}  locs


By


Latex:
(Assert  \mkleeneopen{}msg-body(msg)  \mmember{}  Id  \mtimes{}  Top\mkleeneclose{}\mcdot{}  THEN  Auto)




Home Index