Step
*
of Lemma
consensus-refinement4
∀[V:Type]
  ((∀v1,v2:V.  Dec(v1 = v2 ∈ V))
  
⇒ (∃v,v':V. (¬(v = v' ∈ V)))
  
⇒ (∀A:Id List. ∀W:{a:Id| (a ∈ A)}  List List.
        ((1 < ||W|| ∧ two-intersection(A;W)) 
⇒ ts-refinement(consensus-ts4(V;A;W);consensus-ts5(V;A;W);λs.(fst(s))))))
BY
{ (Auto THEN D 0) }
1
1. [V] : Type
2. ∀v1,v2:V.  Dec(v1 = v2 ∈ V)@i
3. ∃v,v':V. (¬(v = v' ∈ V))@i
4. A : Id List@i
5. W : {a:Id| (a ∈ A)}  List List@i
6. 1 < ||W||@i
7. two-intersection(A;W)@i
⊢ ts-init(consensus-ts4(V;A;W)) (ts-rel(consensus-ts4(V;A;W))^*) ((λs.(fst(s))) ts-init(consensus-ts5(V;A;W)))
2
1. [V] : Type
2. ∀v1,v2:V.  Dec(v1 = v2 ∈ V)@i
3. ∃v,v':V. (¬(v = v' ∈ V))@i
4. A : Id List@i
5. W : {a:Id| (a ∈ A)}  List List@i
6. 1 < ||W||@i
7. two-intersection(A;W)@i
⊢ (∀x,y:ts-reachable(consensus-ts5(V;A;W)).
     ((x ts-rel(consensus-ts5(V;A;W)) y) 
⇒ (((λs.(fst(s))) x) (ts-rel(consensus-ts4(V;A;W))^*) ((λs.(fst(s))) y))))
∧ (∀x:ts-reachable(consensus-ts4(V;A;W))
     ((ts-final(consensus-ts4(V;A;W)) x)
     
⇒ (∃y:ts-reachable(consensus-ts5(V;A;W))
          ((ts-final(consensus-ts5(V;A;W)) y) ∧ (((λs.(fst(s))) y) = x ∈ ts-type(consensus-ts4(V;A;W)))))))
Latex:
\mforall{}[V:Type]
    ((\mforall{}v1,v2:V.    Dec(v1  =  v2))
    {}\mRightarrow{}  (\mexists{}v,v':V.  (\mneg{}(v  =  v')))
    {}\mRightarrow{}  (\mforall{}A:Id  List.  \mforall{}W:\{a:Id|  (a  \mmember{}  A)\}    List  List.
                ((1  <  ||W||  \mwedge{}  two-intersection(A;W))
                {}\mRightarrow{}  ts-refinement(consensus-ts4(V;A;W);consensus-ts5(V;A;W);\mlambda{}s.(fst(s))))))
By
(Auto  THEN  D  0)
Home
Index