Step
*
2
2
1
1
of Lemma
consensus-refinement4
1. [V] : Type
2. A : Id List@i
3. W : {a:Id| (a ∈ A)}  List List@i
4. 1 < ||W||@i
5. two-intersection(A;W)@i
6. x : ConsensusState@i
7. \\%6 : ts-init(consensus-ts4(V;A;W)) (ts-rel(consensus-ts4(V;A;W))^*) x@i
8. v : V@i
9. ∀a:{a:Id| (a ∈ A)} . ((Inning(x;a) = 0 ∈ ℤ) ∧ (Estimate(x;a) = 0 : v ∈ i:ℤ fp-> V))@i
⊢ ∃y:ts-reachable(consensus-ts5(V;A;W))
   ((ts-final(consensus-ts5(V;A;W)) y) ∧ ((fst(y)) = x ∈ ts-type(consensus-ts4(V;A;W))))
BY
{ ((InstLemma `cs-possible-state-reachable` [⌈V⌉;⌈A⌉;⌈W⌉;⌈v⌉;⌈A⌉]⋅ THENA Auto)
   THEN InstConcl [⌈<λa.<0, if a ∈b A) then 0 : v else ⊗ fi >, λa.mk_fpf(A;λb.<0, ff>)>⌉]⋅
   THEN Auto
   THEN All (RepUR ``ts-reachable ts-type  ts-rel ts-init ts-final  consensus-ts5 consensus-ts4``)) }
1
1. [V] : Type
2. A : Id List@i
3. W : {a:Id| (a ∈ A)}  List List@i
4. 1 < ||W||@i
5. two-intersection(A;W)@i
6. x : ConsensusState@i
7. \\%6 : (λa.<-1, ⊗>) ((λx,y. CR[x,y])^*) x@i
8. v : V@i
9. ∀a:{a:Id| (a ∈ A)} . ((Inning(x;a) = 0 ∈ ℤ) ∧ (Estimate(x;a) = 0 : v ∈ i:ℤ fp-> V))@i
10. <λa.<0, if a ∈b A) then 0 : v else ⊗ fi >, λa.mk_fpf(A;λb.<0, ff>)>
    ∈ {s:ConsensusState × Knowledge(ConsensusState)| 
       <λa.<0, ⊗>, λa.mk_fpf(A;λb.<0, ff>)> ((λx,y. consensus-rel-knowledge(V;A;W;x;y))^*) s} 
⊢ ∃v@0:V
   ∀a:{a:Id| (a ∈ A)} 
     ((Inning(λa.<0, if a ∈b A) then 0 : v else ⊗ fi >a) = 0 ∈ ℤ)
     ∧ (Estimate(λa.<0, if a ∈b A) then 0 : v else ⊗ fi >a) = 0 : v@0 ∈ i:ℤ fp-> V)
     ∧ (Knowledge(λa.mk_fpf(A;λb.<0, ff>);a) = mk_fpf(A;λb.<0, ff>) ∈ b:Id fp-> ℤ × (ℤ × V + Top)))
2
1. V : Type
2. A : Id List@i
3. W : {a:Id| (a ∈ A)}  List List@i
4. 1 < ||W||@i
5. two-intersection(A;W)@i
6. x : ConsensusState@i
7. (λa.<-1, ⊗>) ((λx,y. CR[x,y])^*) x@i
8. v : V@i
9. ∀a:{a:Id| (a ∈ A)} . ((Inning(x;a) = 0 ∈ ℤ) ∧ (Estimate(x;a) = 0 : v ∈ i:ℤ fp-> V))@i
10. <λa.<0, if a ∈b A) then 0 : v else ⊗ fi >, λa.mk_fpf(A;λb.<0, ff>)>
    ∈ {s:ConsensusState × Knowledge(ConsensusState)| 
       <λa.<0, ⊗>, λa.mk_fpf(A;λb.<0, ff>)> ((λx,y. consensus-rel-knowledge(V;A;W;x;y))^*) s} 
11. ∃v@0:V
     ∀a:{a:Id| (a ∈ A)} 
       ((Inning(λa.<0, if a ∈b A) then 0 : v else ⊗ fi >a) = 0 ∈ ℤ)
       ∧ (Estimate(λa.<0, if a ∈b A) then 0 : v else ⊗ fi >a) = 0 : v@0 ∈ i:ℤ fp-> V)
       ∧ (Knowledge(λa.mk_fpf(A;λb.<0, ff>);a) = mk_fpf(A;λb.<0, ff>) ∈ b:Id fp-> ℤ × (ℤ × V + Top)))
⊢ (λa.<0, if a ∈b A) then 0 : v else ⊗ fi >) = x ∈ ConsensusState
Latex:
1.  [V]  :  Type
2.  A  :  Id  List@i
3.  W  :  \{a:Id|  (a  \mmember{}  A)\}    List  List@i
4.  1  <  ||W||@i
5.  two-intersection(A;W)@i
6.  x  :  ConsensusState@i
7.  \mbackslash{}\mbackslash{}\%6  :  ts-init(consensus-ts4(V;A;W)) 
                    (ts-rel(consensus-ts4(V;A;W))\^{}*) 
                    x@i
8.  v  :  V@i
9.  \mforall{}a:\{a:Id|  (a  \mmember{}  A)\}  .  ((Inning(x;a)  =  0)  \mwedge{}  (Estimate(x;a)  =  0  :  v))@i
\mvdash{}  \mexists{}y:ts-reachable(consensus-ts5(V;A;W)).  ((ts-final(consensus-ts5(V;A;W))  y)  \mwedge{}  ((fst(y))  =  x))
By
((InstLemma  `cs-possible-state-reachable`  [\mkleeneopen{}V\mkleeneclose{};\mkleeneopen{}A\mkleeneclose{};\mkleeneopen{}W\mkleeneclose{};\mkleeneopen{}v\mkleeneclose{};\mkleeneopen{}A\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  InstConcl  [\mkleeneopen{}<\mlambda{}a.ɘ,  if  a  \mmember{}\msubb{}  A)  then  0  :  v  else  \motimes{}  fi  >,  \mlambda{}a.mk\_fpf(A;\mlambda{}b.ɘ,  ff>)>\mkleeneclose{}]\mcdot{}
  THEN  Auto
  THEN  All  (RepUR  ``ts-reachable  ts-type    ts-rel  ts-init  ts-final    consensus-ts5  consensus-ts4``))
Home
Index