Step * of Lemma mk-msg-equal

[f:Name ─→ Type]. ∀[auth1,auth2:𝔹]. ∀[hdr1,hdr2:Name]. ∀[val1:f hdr1]. ∀[val2:f hdr2].
  (mk-msg(auth1;hdr1;val1) mk-msg(auth2;hdr2;val2) ∈ Message(f)
  ⇐⇒ {auth1 auth2 ∧ (hdr1 hdr2 ∈ Name) ∧ (val1 val2 ∈ (f hdr1))})
BY
(Unfold `guard` 0
   THEN Auto
   THEN RepUR ``mk-msg make-basicMsg Message basicMessage`` -1
   THEN EqHD (-1)
   THEN Auto
   THEN AllReduce) }

1
1. Name ─→ Type
2. auth1 : 𝔹
3. auth2 : 𝔹
4. hdr1 Name
5. hdr2 Name
6. val1 hdr1
7. val2 hdr2
8. auth1 auth2
9. <hdr1, val1> = <hdr2, val2> ∈ (h:Name × (f h))
⊢ val1 val2 ∈ (f hdr1)


Latex:



Latex:
\mforall{}[f:Name  {}\mrightarrow{}  Type].  \mforall{}[auth1,auth2:\mBbbB{}].  \mforall{}[hdr1,hdr2:Name].  \mforall{}[val1:f  hdr1].  \mforall{}[val2:f  hdr2].
    (mk-msg(auth1;hdr1;val1)  =  mk-msg(auth2;hdr2;val2)
    \mLeftarrow{}{}\mRightarrow{}  \{auth1  =  auth2  \mwedge{}  (hdr1  =  hdr2)  \mwedge{}  (val1  =  val2)\})


By


Latex:
(Unfold  `guard`  0
  THEN  Auto
  THEN  RepUR  ``mk-msg  make-basicMsg  Message  basicMessage``  -1
  THEN  EqHD  (-1)
  THEN  Auto
  THEN  AllReduce)




Home Index