Step * 1 1 2 1 1 3 1 1 of Lemma consensus-ts4-ref-map1


1. Type
2. v3 V@i
3. v4 V@i
4. ¬(v3 v4 ∈ V)@i
5. ∀v,v':V.  Dec(v v' ∈ V)@i
6. Id List@i
7. {a:Id| (a ∈ A)}  List List@i
8. two-intersection(A;W)@i
9. one-intersection(A;W)
10. ConsensusState@i
11. : ℤ@i
12. v2 V
13. v' V
14. in state s, inning could commit v2 
15. in state s, inning could commit v' 
16. ∀v:V. Dec(in state s, inning has committed v)
17. V
18. in state s, inning could commit 
19. ¬in state s, inning has committed v
20. ¬(INITIAL WITHDRAWN ∈ consensus-state3(V))
21. ∀[v:V]
      (((¬(COMMITED[v] INITIAL ∈ consensus-state3(V))) ∧ (CONSIDERING[v] INITIAL ∈ consensus-state3(V))))
      ∧ (COMMITED[v] WITHDRAWN ∈ consensus-state3(V)))
      ∧ (CONSIDERING[v] WITHDRAWN ∈ consensus-state3(V)))
      ∧ (∀[v':V]
           ((¬(CONSIDERING[v] COMMITED[v'] ∈ consensus-state3(V)))
           ∧ (CONSIDERING[v] CONSIDERING[v'] ∈ consensus-state3(V)))
             ∧ (COMMITED[v] COMMITED[v'] ∈ consensus-state3(V))) 
             supposing ¬(v v' ∈ V))))
22. (INITIAL INITIAL ∈ consensus-state3(V))
 (∃v,v':V. ((¬(v v' ∈ V)) ∧ in state s, inning could commit v  ∧ in state s, inning could commit v' ))
23. (INITIAL INITIAL ∈ consensus-state3(V))  ∃v,v':V
                                                  ((¬(v v' ∈ V))
                                                  ∧ in state s, inning could commit 
                                                  ∧ in state s, inning could commit v' )
24. (INITIAL WITHDRAWN ∈ consensus-state3(V))  (∃v:V. in state s, inning could commit ))
25. (INITIAL WITHDRAWN ∈ consensus-state3(V))  ¬(∃v:V. in state s, inning could commit )
26. v1 V@i
27. (INITIAL COMMITED[v1] ∈ consensus-state3(V))  in state s, inning has committed v1
28. (INITIAL COMMITED[v1] ∈ consensus-state3(V))  in state s, inning has committed v1
29. in state s, inning could commit v1 @i
30. ¬in state s, inning has committed v1@i
31. ∀v':V. (in state s, inning could commit v'   (v' v1 ∈ V))@i
⊢ v2 v' ∈ V
BY
((Assert (v2 v1 ∈ V) ∧ (v' v1 ∈ V) BY Auto) THEN Auto) }


Latex:



1.  V  :  Type
2.  v3  :  V@i
3.  v4  :  V@i
4.  \mneg{}(v3  =  v4)@i
5.  \mforall{}v,v':V.    Dec(v  =  v')@i
6.  A  :  Id  List@i
7.  W  :  \{a:Id|  (a  \mmember{}  A)\}    List  List@i
8.  two-intersection(A;W)@i
9.  one-intersection(A;W)
10.  s  :  ConsensusState@i
11.  i  :  \mBbbZ{}@i
12.  v2  :  V
13.  v'  :  V
14.  in  state  s,  inning  i  could  commit  v2 
15.  in  state  s,  inning  i  could  commit  v' 
16.  \mforall{}v:V.  Dec(in  state  s,  inning  i  has  committed  v)
17.  v  :  V
18.  in  state  s,  inning  i  could  commit  v 
19.  \mneg{}in  state  s,  inning  i  has  committed  v
20.  \mneg{}(INITIAL  =  WITHDRAWN)
21.  \mforall{}[v:V]
            (((\mneg{}(COMMITED[v]  =  INITIAL))  \mwedge{}  (\mneg{}(CONSIDERING[v]  =  INITIAL)))
            \mwedge{}  (\mneg{}(COMMITED[v]  =  WITHDRAWN))
            \mwedge{}  (\mneg{}(CONSIDERING[v]  =  WITHDRAWN))
            \mwedge{}  (\mforall{}[v':V]
                      ((\mneg{}(CONSIDERING[v]  =  COMMITED[v']))
                      \mwedge{}  (\mneg{}(CONSIDERING[v]  =  CONSIDERING[v']))  \mwedge{}  (\mneg{}(COMMITED[v]  =  COMMITED[v'])) 
                          supposing  \mneg{}(v  =  v'))))
22.  (INITIAL  =  INITIAL)
{}\mRightarrow{}  (\mexists{}v,v':V
          ((\mneg{}(v  =  v'))  \mwedge{}  in  state  s,  inning  i  could  commit  v    \mwedge{}  in  state  s,  inning  i  could  commit  v'  ))
23.  (INITIAL  =  INITIAL)  \mLeftarrow{}{}  \mexists{}v,v':V
                                                        ((\mneg{}(v  =  v'))
                                                        \mwedge{}  in  state  s,  inning  i  could  commit  v 
                                                        \mwedge{}  in  state  s,  inning  i  could  commit  v'  )
24.  (INITIAL  =  WITHDRAWN)  {}\mRightarrow{}  (\mneg{}(\mexists{}v:V.  in  state  s,  inning  i  could  commit  v  ))
25.  (INITIAL  =  WITHDRAWN)  \mLeftarrow{}{}  \mneg{}(\mexists{}v:V.  in  state  s,  inning  i  could  commit  v  )
26.  v1  :  V@i
27.  (INITIAL  =  COMMITED[v1])  {}\mRightarrow{}  in  state  s,  inning  i  has  committed  v1
28.  (INITIAL  =  COMMITED[v1])  \mLeftarrow{}{}  in  state  s,  inning  i  has  committed  v1
29.  in  state  s,  inning  i  could  commit  v1  @i
30.  \mneg{}in  state  s,  inning  i  has  committed  v1@i
31.  \mforall{}v':V.  (in  state  s,  inning  i  could  commit  v'    {}\mRightarrow{}  (v'  =  v1))@i
\mvdash{}  v2  =  v'


By

((Assert  (v2  =  v1)  \mwedge{}  (v'  =  v1)  BY  Auto)  THEN  Auto)




Home Index