{ 
[V:Type]
    ((
v,v':V. (
(v = v')))
    
 (
v,v':V.  Dec(v = v'))
    
 (
A:Id List. 
W:{a:Id| (a 
 A)}  List List.
          (two-intersection(A;W)
          
 {
s:ConsensusState. 
i:
.
                
x:consensus-state3(V)
                 ((x = INITIAL
                  

 
v,v':V
                       ((
(v = v'))
                       
 in state s, inning i could commit v 
                       
 in state s, inning i could commit v' ))
                 
 (x = WITHDRAWN
                   

 
(
v:V. in state s, inning i could commit v ))
                 
 (
v:V
                      ((x = COMMITED[v]
                      

 in state s, inning i has committed v)
                      
 (x = CONSIDERING[v]
                        

 in state s, inning i could commit v 
                            
 (
in state s, inning i has committed v)
                            
 (
v':V
                                 (in state s, inning i could commit v' 
                                 
 (v' = v)))))))}))) }
{ Proof }
Definitions occuring in Statement : 
two-intersection: two-intersection(A;W), 
cs-inning-committable: in state s, inning i could commit v , 
cs-inning-committed: in state s, inning i has committed v, 
consensus-state4: ConsensusState, 
cs-commited: COMMITED[v], 
cs-considering: CONSIDERING[v], 
cs-withdrawn: WITHDRAWN, 
cs-initial: INITIAL, 
consensus-state3: consensus-state3(T), 
Id: Id, 
decidable: Dec(P), 
uall:
[x:A]. B[x], 
guard: {T}, 
all:
x:A. B[x], 
exists:
x:A. B[x], 
iff: P 

 Q, 
not:
A, 
implies: P 
 Q, 
and: P 
 Q, 
set: {x:A| B[x]} , 
list: type List, 
int:
, 
universe: Type, 
equal: s = t, 
l_member: (x 
 l)
Definitions : 
uall:
[x:A]. B[x], 
implies: P 
 Q, 
exists:
x:A. B[x], 
all:
x:A. B[x], 
guard: {T}, 
one-intersection: one-intersection(A;W), 
l_all: (
x
L.P[x]), 
member: t 
 T, 
prop:
, 
not:
A, 
and: P 
 Q, 
iff: P 

 Q, 
rev_implies: P 
 Q, 
false: False, 
cand: A c
 B, 
cs-inning-committable: in state s, inning i could commit v , 
or: P 
 Q, 
two-intersection: two-intersection(A;W), 
decidable: Dec(P), 
uimplies: b supposing a, 
consensus-state3: consensus-state3(T), 
cs-commited: COMMITED[v], 
cs-considering: CONSIDERING[v], 
cs-withdrawn: WITHDRAWN, 
cs-inning-committed: in state s, inning i has committed v
Lemmas : 
l_member_wf, 
two-intersection_wf, 
Id_wf, 
decidable_wf, 
not_wf, 
decidable__cs-inning-two-committable, 
decidable__cs-inning-committed, 
decidable__cs-inning-committable-some, 
consensus-state4_wf, 
consensus-state3-unequal, 
cs-commited_wf, 
consensus-state3_wf, 
cs-initial_wf, 
cs-inning-committable_wf, 
cs-withdrawn_wf, 
cs-inning-committed_wf, 
cs-considering_wf, 
iff_wf, 
cs-inning-committed-single, 
cs-not-completed_wf, 
cs-archived_wf
\mforall{}[V:Type]
    ((\mexists{}v,v':V.  (\mneg{}(v  =  v')))
    {}\mRightarrow{}  (\mforall{}v,v':V.    Dec(v  =  v'))
    {}\mRightarrow{}  (\mforall{}A:Id  List.  \mforall{}W:\{a:Id|  (a  \mmember{}  A)\}    List  List.
                (two-intersection(A;W)
                {}\mRightarrow{}  \{\mforall{}s:ConsensusState.  \mforall{}i:\mBbbZ{}.
                            \mexists{}x:consensus-state3(V)
                              ((x  =  INITIAL
                                \mLeftarrow{}{}\mRightarrow{}  \mexists{}v,v':V
                                          ((\mneg{}(v  =  v'))
                                          \mwedge{}  in  state  s,  inning  i  could  commit  v 
                                          \mwedge{}  in  state  s,  inning  i  could  commit  v'  ))
                              \mwedge{}  (x  =  WITHDRAWN  \mLeftarrow{}{}\mRightarrow{}  \mneg{}(\mexists{}v:V.  in  state  s,  inning  i  could  commit  v  ))
                              \mwedge{}  (\mforall{}v:V
                                        ((x  =  COMMITED[v]  \mLeftarrow{}{}\mRightarrow{}  in  state  s,  inning  i  has  committed  v)
                                        \mwedge{}  (x  =  CONSIDERING[v]
                                            \mLeftarrow{}{}\mRightarrow{}  in  state  s,  inning  i  could  commit  v 
                                                    \mwedge{}  (\mneg{}in  state  s,  inning  i  has  committed  v)
                                                    \mwedge{}  (\mforall{}v':V.  (in  state  s,  inning  i  could  commit  v'    {}\mRightarrow{}  (v'  =  v)))))))\})))
Date html generated:
2011_08_16-AM-10_02_31
Last ObjectModification:
2011_06_18-AM-09_00_39
Home
Index