Step
*
1
1
of Lemma
new_23_sig_vote_with_ballot_first-forward
1. Cmd : {T:Type| valueall-type(T)} @i'
2. propose : Atom List@i
3. notify : Atom List@i
4. f : new_23_sig_headers_type{i:l}(Cmd;notify;propose)@i'
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. start : E@i
14. n : ℤ@i
15. r : ℤ@i
16. start ≤loc e @i
⊢ new_23_sig_vote_with_ballot(Cmd;notify;propose;f;es;e;n;r)
∧b (∀e'∈[es-init(es.start;e);e).¬bnew_23_sig_vote_with_ballot_and_id(Cmd;notify;propose;f;es;e';n;r;snd(msgval(e))))_b 
~ new_23_sig_vote_with_ballot(Cmd;notify;propose;f;es;e;n;r)
∧b (∀e'∈[start;e).¬bnew_23_sig_vote_with_ballot_and_id(Cmd;notify;propose;f;es;e';n;r;snd(msgval(e))))_b
BY
{ (VrBoolCase ⌜new_23_sig_vote_with_ballot(Cmd;notify;propose;f;es;e;n;r)⌝⋅
   THEN Try (Trivial)
   THEN (FLemma `new_23_sig_vote_with_ballot-assert-type` [-1] THENA Auto)
   THEN Auto
   THEN RWO "es-init-forward" 0
   THEN Auto) }
1
.....debug..... 
1. Cmd : {T:Type| valueall-type(T)} @i'
2. propose : Atom List@i
3. notify : Atom List@i
4. f : new_23_sig_headers_type{i:l}(Cmd;notify;propose)@i'
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. start : E@i
14. n : ℤ@i
15. r : ℤ@i
16. start ≤loc e @i
17. ↑new_23_sig_vote_with_ballot(Cmd;notify;propose;f;es;e;n;r)
18. has-es-info-type(es;e;f;ℤ × ℤ × Cmd × Id)
19. msgval(e) ∈ ℤ × ℤ × Cmd × Id
20. es-init(es.start;e) = start ∈ E
⊢ ...GenFormulaCondC: failed... es-init(es.start;e) = start ∈ E
2
1. Cmd : {T:Type| valueall-type(T)} @i'
2. propose : Atom List@i
3. notify : Atom List@i
4. f : new_23_sig_headers_type{i:l}(Cmd;notify;propose)@i'
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. start : E@i
14. n : ℤ@i
15. r : ℤ@i
16. start ≤loc e @i
17. ↑new_23_sig_vote_with_ballot(Cmd;notify;propose;f;es;e;n;r)
18. has-es-info-type(es;e;f;ℤ × ℤ × Cmd × Id)
19. msgval(e) ∈ ℤ × ℤ × Cmd × Id
⊢ (∀e'∈[start;e).¬bnew_23_sig_vote_with_ballot_and_id(Cmd;notify;propose;f;es;e';n;r;snd(msgval(e))))_b 
= (∀e'∈[start;e).¬bnew_23_sig_vote_with_ballot_and_id(Cmd;notify;propose;f;es;e';n;r;snd(msgval(e))))_b
Latex:
Latex:
1.  Cmd  :  \{T:Type|  valueall-type(T)\}  @i'
2.  propose  :  Atom  List@i
3.  notify  :  Atom  List@i
4.  f  :  new\_23\_sig\_headers\_type\{i:l\}(Cmd;notify;propose)@i'
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.  start  :  E@i
14.  n  :  \mBbbZ{}@i
15.  r  :  \mBbbZ{}@i
16.  start  \mleq{}loc  e  @i
\mvdash{}  new\_23\_sig\_vote\_with\_ballot(Cmd;notify;propose;f;es;e;n;r)
\mwedge{}\msubb{}  (\mforall{}e'\mmember{}[es-init(es.start;e);e).
              \mneg{}\msubb{}new\_23\_sig\_vote\_with\_ballot\_and\_id(Cmd;notify;propose;f;es;e';n;r;snd(msgval(e))))\_b 
\msim{}  new\_23\_sig\_vote\_with\_ballot(Cmd;notify;propose;f;es;e;n;r)
\mwedge{}\msubb{}  (\mforall{}e'\mmember{}[start;e).
              \mneg{}\msubb{}new\_23\_sig\_vote\_with\_ballot\_and\_id(Cmd;notify;propose;f;es;e';n;r;snd(msgval(e))))\_b
By
Latex:
(VrBoolCase  \mkleeneopen{}new\_23\_sig\_vote\_with\_ballot(Cmd;notify;propose;f;es;e;n;r)\mkleeneclose{}\mcdot{}
  THEN  Try  (Trivial)
  THEN  (FLemma  `new\_23\_sig\_vote\_with\_ballot-assert-type`  [-1]  THENA  Auto)
  THEN  Auto
  THEN  RWO  "es-init-forward"  0
  THEN  Auto)
Home
Index