Step
*
1
of Lemma
cs-inning-committable-some2
1. [V] : Type
2. ∃v,v':V. (¬(v = v' ∈ V))@i
3. ∀v,v':V.  Dec(v = v' ∈ V)@i
4. A : Id List@i
5. W : {a:Id| (a ∈ A)}  List List@i
6. one-intersection(A;W)@i
7. s : ConsensusState@i
8. i : ℤ@i
⊢ ∃L:V List
   ∀v:V
     (in state s, inning i could commit v 
     
⇐⇒ (in state s, inning i could commit v  ∧ (v ∈ L))
         ∨ (∃ws∈W. ∀a:{a:Id| (a ∈ A)} . ((a ∈ ws) 
⇒ in state s, a has not completed inning i)))
BY
{ Assert ⌈mapfilter(λa.Estimate(s;a)(i);λa.i ∈ dom(Estimate(s;a));A) ∈ V List⌉⋅ }
1
.....assertion..... 
1. [V] : Type
2. ∃v,v':V. (¬(v = v' ∈ V))@i
3. ∀v,v':V.  Dec(v = v' ∈ V)@i
4. A : Id List@i
5. W : {a:Id| (a ∈ A)}  List List@i
6. one-intersection(A;W)@i
7. s : ConsensusState@i
8. i : ℤ@i
⊢ mapfilter(λa.Estimate(s;a)(i);λa.i ∈ dom(Estimate(s;a));A) ∈ V List
2
1. [V] : Type
2. ∃v,v':V. (¬(v = v' ∈ V))@i
3. ∀v,v':V.  Dec(v = v' ∈ V)@i
4. A : Id List@i
5. W : {a:Id| (a ∈ A)}  List List@i
6. one-intersection(A;W)@i
7. s : ConsensusState@i
8. i : ℤ@i
9. mapfilter(λa.Estimate(s;a)(i);λa.i ∈ dom(Estimate(s;a));A) ∈ V List
⊢ ∃L:V List
   ∀v:V
     (in state s, inning i could commit v 
     
⇐⇒ (in state s, inning i could commit v  ∧ (v ∈ L))
         ∨ (∃ws∈W. ∀a:{a:Id| (a ∈ A)} . ((a ∈ ws) 
⇒ in state s, a has not completed inning i)))
Latex:
1.  [V]  :  Type
2.  \mexists{}v,v':V.  (\mneg{}(v  =  v'))@i
3.  \mforall{}v,v':V.    Dec(v  =  v')@i
4.  A  :  Id  List@i
5.  W  :  \{a:Id|  (a  \mmember{}  A)\}    List  List@i
6.  one-intersection(A;W)@i
7.  s  :  ConsensusState@i
8.  i  :  \mBbbZ{}@i
\mvdash{}  \mexists{}L:V  List
      \mforall{}v:V
          (in  state  s,  inning  i  could  commit  v 
          \mLeftarrow{}{}\mRightarrow{}  (in  state  s,  inning  i  could  commit  v    \mwedge{}  (v  \mmember{}  L))
                  \mvee{}  (\mexists{}ws\mmember{}W.  \mforall{}a:\{a:Id|  (a  \mmember{}  A)\}  .  ((a  \mmember{}  ws)  {}\mRightarrow{}  in  state  s,  a  has  not  completed  inning  i)))
By
Assert  \mkleeneopen{}mapfilter(\mlambda{}a.Estimate(s;a)(i);\mlambda{}a.i  \mmember{}  dom(Estimate(s;a));A)  \mmember{}  V  List\mkleeneclose{}\mcdot{}
Home
Index