Step
*
1
of Lemma
new_23_sig_proposal_has_header
1. [Cmd] : {T:Type| valueall-type(T)} 
2. propose : Atom List@i
3. [notify] : Atom List
4. [f] : new_23_sig_headers_type{i:l}(Cmd;notify;propose)
5. (f propose) = (ℤ × Cmd) ∈ Type
6. (f notify) = (ℤ × Cmd) ∈ Type
7. (f ``new_23_sig decided``) = (ℤ × Cmd) ∈ Type
8. (f ``new_23_sig retry``) = (ℤ × ℤ × Cmd) ∈ Type
9. (f ``new_23_sig vote``) = (ℤ × ℤ × Cmd × Id) ∈ Type
10. f ∈ Name ─→ Type
11. es : EO+(Message(f))@i'
12. e : E@i
13. [nc] : ℤ × Cmd
14. [%] : nc ∈ new_23_sig_Proposal(Cmd;notify;propose;f)(e)
⊢ (header(e) = propose ∈ Name) ∨ (header(e) = ``new_23_sig vote`` ∈ Name)
BY
{ ((RWO "new_23_sig_proposal_classrel" (-1) THENA Auto)
   THEN ParallelLast
   THEN MaUseClassRel (-1)
   THEN Auto
   THEN BagMemberD (-1)
   THEN MaUseClassRel (-2)
   THEN Auto) }
Latex:
Latex:
1.  [Cmd]  :  \{T:Type|  valueall-type(T)\} 
2.  propose  :  Atom  List@i
3.  [notify]  :  Atom  List
4.  [f]  :  new\_23\_sig\_headers\_type\{i:l\}(Cmd;notify;propose)
5.  (f  propose)  =  (\mBbbZ{}  \mtimes{}  Cmd)
6.  (f  notify)  =  (\mBbbZ{}  \mtimes{}  Cmd)
7.  (f  ``new\_23\_sig  decided``)  =  (\mBbbZ{}  \mtimes{}  Cmd)
8.  (f  ``new\_23\_sig  retry``)  =  (\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd)
9.  (f  ``new\_23\_sig  vote``)  =  (\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id)
10.  f  \mmember{}  Name  {}\mrightarrow{}  Type
11.  es  :  EO+(Message(f))@i'
12.  e  :  E@i
13.  [nc]  :  \mBbbZ{}  \mtimes{}  Cmd
14.  [\%]  :  nc  \mmember{}  new\_23\_sig\_Proposal(Cmd;notify;propose;f)(e)
\mvdash{}  (header(e)  =  propose)  \mvee{}  (header(e)  =  ``new\_23\_sig  vote``)
By
Latex:
((RWO  "new\_23\_sig\_proposal\_classrel"  (-1)  THENA  Auto)
  THEN  ParallelLast
  THEN  MaUseClassRel  (-1)
  THEN  Auto
  THEN  BagMemberD  (-1)
  THEN  MaUseClassRel  (-2)
  THEN  Auto)
Home
Index