Step
*
3
3
of Lemma
consensus-refinement1
1. V : Type
2. ∀x,y:ts-reachable(consensus-ts2(V)).
     ((x ts-rel(consensus-ts2(V)) y)
     
⇒ (((λx.if cs-is-decided(x) then x else UNDECIDED fi ) x) 
         (ts-rel(consensus-ts1(V))^*) 
         ((λx.if cs-is-decided(x) then x else UNDECIDED fi ) y)))
3. x : ts-reachable(consensus-ts1(V))@i
4. v : V@i
5. x = Decided[v] ∈ consensus-state1(V)@i
6. ts-final(consensus-ts2(V)) Decided[v]
⊢ if cs-is-decided(Decided[v]) then Decided[v] else UNDECIDED fi  = x ∈ ts-type(consensus-ts1(V))
BY
{ (RepUR ``consensus-ts1  ts-type cs-is-decided cs-decided`` 0 THEN Fold `cs-decided` 0 THEN Auto) }
Latex:
1.  V  :  Type
2.  \mforall{}x,y:ts-reachable(consensus-ts2(V)).
          ((x  ts-rel(consensus-ts2(V))  y)
          {}\mRightarrow{}  (((\mlambda{}x.if  cs-is-decided(x)  then  x  else  UNDECIDED  fi  )  x) 
                  rel\_star(ts-type(consensus-ts1(V));  ts-rel(consensus-ts1(V))) 
                  ((\mlambda{}x.if  cs-is-decided(x)  then  x  else  UNDECIDED  fi  )  y)))
3.  x  :  ts-reachable(consensus-ts1(V))@i
4.  v  :  V@i
5.  x  =  Decided[v]@i
6.  ts-final(consensus-ts2(V))  Decided[v]
\mvdash{}  if  cs-is-decided(Decided[v])  then  Decided[v]  else  UNDECIDED  fi    =  x
By
(RepUR  ``consensus-ts1    ts-type  cs-is-decided  cs-decided``  0  THEN  Fold  `cs-decided`  0  THEN  Auto)
Home
Index