Step * 1 of Lemma cs-ref-map3-decided


1. [V] Type
2. consensus-state3(V) List@i
3. V@i
4. ∀[v':V]. v' v ∈ supposing (CONSIDERING[v'] ∈ L) ∨ (COMMITED[v'] ∈ L) 
   supposing (CONSIDERING[v] ∈ L) ∨ (COMMITED[v] ∈ L)
⊢ (COMMITED[v] ∈ L) ⇐⇒ cs-ref-map3(L) Decided[v] ∈ consensus-state2(V)
BY
RepUR ``cs-ref-map3 let`` }

1
1. [V] Type
2. consensus-state3(V) List@i
3. V@i
4. ∀[v':V]. v' v ∈ supposing (CONSIDERING[v'] ∈ L) ∨ (COMMITED[v'] ∈ L) 
   supposing (CONSIDERING[v] ∈ L) ∨ (COMMITED[v] ∈ L)
⊢ (COMMITED[v] ∈ L)
⇐⇒ if null(filter(λx.cs-is-committed(x);L))
    then if null(filter(λx.cs-is-considering(x);L))
         then AMBIVALENT
         else PREDECIDED[cs-considered-val(hd(filter(λx.cs-is-considering(x);L)))]
         fi 
    else Decided[cs-committed-val(hd(filter(λx.cs-is-committed(x);L)))]
    fi 
    Decided[v]
    ∈ consensus-state2(V)


Latex:



1.  [V]  :  Type
2.  L  :  consensus-state3(V)  List@i
3.  v  :  V@i
4.  \mforall{}[v':V].  v'  =  v  supposing  (CONSIDERING[v']  \mmember{}  L)  \mvee{}  (COMMITED[v']  \mmember{}  L) 
      supposing  (CONSIDERING[v]  \mmember{}  L)  \mvee{}  (COMMITED[v]  \mmember{}  L)
\mvdash{}  (COMMITED[v]  \mmember{}  L)  \mLeftarrow{}{}\mRightarrow{}  cs-ref-map3(L)  =  Decided[v]


By

RepUR  ``cs-ref-map3  let``  0




Home Index