Step * 1 1 2 1 2 1 2 1 of Lemma consensus-reachable


1. [V] Type
2. ∀v1,v2:V.  Dec(v1 v2 ∈ V)@i
3. {∃v,v':V. (v v' ∈ V))}@i
4. Id List@i
5. {a:Id| (a ∈ A)}  List List@i
6. three-intersection(A;W)@i
7. two-intersection(A;W)
8. one-intersection(A;W)
9. ws {a:Id| (a ∈ A)}  List@i
10. (ws ∈ W)@i
11. {a:Id| (a ∈ A)} 
12. (a ∈ ws)
13. 0 < ||ws||
14. : ℤ
15. ConsensusState
16. ∀a:{a:Id| (a ∈ A)} ((a ∈ ws)  ((Inning(x;a) i ∈ ℤ) ∧ (i ∈ fpf-domain(Estimate(x;a))))))
17. V
18. state may consider in inning i
⊢ (x ((λx,y. CR(in ws)[x, y] )^*) a.if a ∈b ws) then <i, Estimate(x;a) ⊕ v> else fi ))
∧ (∃v@0:V. ∃i@0:ℤin state λa.if a ∈b ws) then <i, Estimate(x;a) ⊕ v> else fi inning i@0 has committed v@0)
BY
(ThinVar `a'
   THEN Assert ⌈∀n:ℕ
                  (x 
                   ((λx,y. CR(in ws)[x, y] )^*) 
                   a.if a ∈b firstn(n;A)) ∧b a ∈b ws) then <i, Estimate(x;a) ⊕ v> else fi ))⌉⋅
   }

1
.....assertion..... 
1. [V] Type
2. ∀v1,v2:V.  Dec(v1 v2 ∈ V)@i
3. {∃v,v':V. (v v' ∈ V))}@i
4. Id List@i
5. {a:Id| (a ∈ A)}  List List@i
6. three-intersection(A;W)@i
7. two-intersection(A;W)
8. one-intersection(A;W)
9. ws {a:Id| (a ∈ A)}  List@i
10. (ws ∈ W)@i
11. 0 < ||ws||
12. : ℤ
13. ConsensusState
14. ∀a:{a:Id| (a ∈ A)} ((a ∈ ws)  ((Inning(x;a) i ∈ ℤ) ∧ (i ∈ fpf-domain(Estimate(x;a))))))
15. V
16. state may consider in inning i
⊢ ∀n:ℕ(x ((λx,y. CR(in ws)[x, y] )^*) a.if a ∈b firstn(n;A)) ∧b a ∈b ws) then <i, Estimate(x;a) ⊕ v> else fi\000C ))

2
1. [V] Type
2. ∀v1,v2:V.  Dec(v1 v2 ∈ V)@i
3. {∃v,v':V. (v v' ∈ V))}@i
4. Id List@i
5. {a:Id| (a ∈ A)}  List List@i
6. three-intersection(A;W)@i
7. two-intersection(A;W)
8. one-intersection(A;W)
9. ws {a:Id| (a ∈ A)}  List@i
10. (ws ∈ W)@i
11. 0 < ||ws||
12. : ℤ
13. ConsensusState
14. ∀a:{a:Id| (a ∈ A)} ((a ∈ ws)  ((Inning(x;a) i ∈ ℤ) ∧ (i ∈ fpf-domain(Estimate(x;a))))))
15. V
16. state may consider in inning i
17. ∀n:ℕ
      (x ((λx,y. CR(in ws)[x, y] )^*) a.if a ∈b firstn(n;A)) ∧b a ∈b ws) then <i, Estimate(x;a) ⊕ v> else fi )\000C)
⊢ (x ((λx,y. CR(in ws)[x, y] )^*) a.if a ∈b ws) then <i, Estimate(x;a) ⊕ v> else fi ))
∧ (∃v@0:V. ∃i@0:ℤin state λa.if a ∈b ws) then <i, Estimate(x;a) ⊕ v> else fi inning i@0 has committed v@0)


Latex:



1.  [V]  :  Type
2.  \mforall{}v1,v2:V.    Dec(v1  =  v2)@i
3.  \{\mexists{}v,v':V.  (\mneg{}(v  =  v'))\}@i
4.  A  :  Id  List@i
5.  W  :  \{a:Id|  (a  \mmember{}  A)\}    List  List@i
6.  three-intersection(A;W)@i
7.  two-intersection(A;W)
8.  one-intersection(A;W)
9.  ws  :  \{a:Id|  (a  \mmember{}  A)\}    List@i
10.  (ws  \mmember{}  W)@i
11.  a  :  \{a:Id|  (a  \mmember{}  A)\} 
12.  (a  \mmember{}  ws)
13.  0  <  ||ws||
14.  i  :  \mBbbZ{}
15.  x  :  ConsensusState
16.  \mforall{}a:\{a:Id|  (a  \mmember{}  A)\}  .  ((a  \mmember{}  ws)  {}\mRightarrow{}  ((Inning(x;a)  =  i)  \mwedge{}  (\mneg{}(i  \mmember{}  fpf-domain(Estimate(x;a))))))
17.  v  :  V
18.  state  x  may  consider  v  in  inning  i
\mvdash{}  (x  ((\mlambda{}x,y.  CR(in  ws)[x,  y]  )\^{}*)  (\mlambda{}a.if  a  \mmember{}\msubb{}  ws)  then  <i,  Estimate(x;a)  \moplus{}  i  :  v>  else  x  a  fi  ))
\mwedge{}  (\mexists{}v@0:V
        \mexists{}i@0:\mBbbZ{}
          in  state  \mlambda{}a.if  a  \mmember{}\msubb{}  ws)
                                  then  <i,  Estimate(x;a)  \moplus{}  i  :  v>
                                  else  x  a
                                  fi  ,  inning  i@0  has  committed  v@0)


By

(ThinVar  `a'
  THEN  Assert  \mkleeneopen{}\mforall{}n:\mBbbN{}
                                (x 
                                  rel\_star(ConsensusState;  \mlambda{}x,y.  CR(in  ws)[x,  y]  ) 
                                  (\mlambda{}a.if  a  \mmember{}\msubb{}  firstn(n;A))  \mwedge{}\msubb{}  a  \mmember{}\msubb{}  ws)
                                          then  <i,  Estimate(x;a)  \moplus{}  i  :  v>
                                          else  x  a
                                          fi  ))\mkleeneclose{}\mcdot{}
  )




Home Index