Step
*
1
3
of Lemma
cs-ref-map3-predecided
1. [V] : Type
2. L : consensus-state3(V) List@i
3. v : V@i
4. ∀[v':V]. v' = v ∈ V supposing (CONSIDERING[v'] ∈ L) ∨ (COMMITED[v'] ∈ L) 
   supposing (CONSIDERING[v] ∈ L) ∨ (COMMITED[v] ∈ L)
5. ∀v:V. ((COMMITED[v] ∈ L) 
⇐⇒ cs-ref-map3(L) = Decided[v] ∈ consensus-state2(V))
6. cs-ref-map3(L) = PREDECIDED[v] ∈ consensus-state2(V)@i
⊢ (CONSIDERING[v] ∈ L)
BY
{ (RepUR ``cs-ref-map3 let`` -1 THEN (SplitOnHypITE -1  THENA Auto) THEN Try ((SplitOnHypITE -2  THENA Auto))) }
1
.....truecase..... 
1. [V] : Type
2. L : consensus-state3(V) List@i
3. v : V@i
4. ∀[v':V]. v' = v ∈ V supposing (CONSIDERING[v'] ∈ L) ∨ (COMMITED[v'] ∈ L) 
   supposing (CONSIDERING[v] ∈ L) ∨ (COMMITED[v] ∈ L)
5. ∀v:V. ((COMMITED[v] ∈ L) 
⇐⇒ cs-ref-map3(L) = Decided[v] ∈ consensus-state2(V))
6. AMBIVALENT = PREDECIDED[v] ∈ consensus-state2(V)@i
7. filter(λx.cs-is-committed(x);L) = [] ∈ (consensus-state3(V) List)
8. filter(λx.cs-is-considering(x);L) = [] ∈ (consensus-state3(V) List)
⊢ (CONSIDERING[v] ∈ L)
2
.....falsecase..... 
1. [V] : Type
2. L : consensus-state3(V) List@i
3. v : V@i
4. ∀[v':V]. v' = v ∈ V supposing (CONSIDERING[v'] ∈ L) ∨ (COMMITED[v'] ∈ L) 
   supposing (CONSIDERING[v] ∈ L) ∨ (COMMITED[v] ∈ L)
5. ∀v:V. ((COMMITED[v] ∈ L) 
⇐⇒ cs-ref-map3(L) = Decided[v] ∈ consensus-state2(V))
6. PREDECIDED[cs-considered-val(hd(filter(λx.cs-is-considering(x);L)))] = PREDECIDED[v] ∈ consensus-state2(V)@i
7. filter(λx.cs-is-committed(x);L) = [] ∈ (consensus-state3(V) List)
8. ¬(filter(λx.cs-is-considering(x);L) = [] ∈ (consensus-state3(V) List))
⊢ (CONSIDERING[v] ∈ L)
3
.....falsecase..... 
1. [V] : Type
2. L : consensus-state3(V) List@i
3. v : V@i
4. ∀[v':V]. v' = v ∈ V supposing (CONSIDERING[v'] ∈ L) ∨ (COMMITED[v'] ∈ L) 
   supposing (CONSIDERING[v] ∈ L) ∨ (COMMITED[v] ∈ L)
5. ∀v:V. ((COMMITED[v] ∈ L) 
⇐⇒ cs-ref-map3(L) = Decided[v] ∈ consensus-state2(V))
6. Decided[cs-committed-val(hd(filter(λx.cs-is-committed(x);L)))] = PREDECIDED[v] ∈ consensus-state2(V)@i
7. ¬(filter(λx.cs-is-committed(x);L) = [] ∈ (consensus-state3(V) List))
⊢ (CONSIDERING[v] ∈ L)
Latex:
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)
5.  \mforall{}v:V.  ((COMMITED[v]  \mmember{}  L)  \mLeftarrow{}{}\mRightarrow{}  cs-ref-map3(L)  =  Decided[v])
6.  cs-ref-map3(L)  =  PREDECIDED[v]@i
\mvdash{}  (CONSIDERING[v]  \mmember{}  L)
By
Latex:
(RepUR  ``cs-ref-map3  let``  -1
  THEN  (SplitOnHypITE  -1    THENA  Auto)
  THEN  Try  ((SplitOnHypITE  -2    THENA  Auto)))
Home
Index