Nuprl Lemma : ler2_propose_from_propose_or_choose
es:EO'. 
nodes:bag(Id). 
client:Id. 
uid:Id 
 
 
 
.
  ((ler2_message-constraint{i:l}(client;nodes;uid) es)
  
 (
e:E. 
epoch,i:
.
        (<epoch, i> 
 ler2_propose'base()(e)
        
 (
e':E
              (loc(e') 
 nodes
              
 (e' < e)
              
 <epoch, loc(e)> 
 ler2_PrNbr{SpLeaderRing2.esh:o}(e')
              
 <loc(e), info(e)> 
 ler2_main(client;nodes;uid)(e')
              
 ((
j:
                   (<epoch, j> 
 ler2_propose'base()(e')
                   
 (
(j = (uid loc(e') epoch)))
                   
 (i = imax(j;uid loc(e') epoch))))
                
 (epoch 
 ler2_choose'base()(e') 
 (i = (uid loc(e') epoch)))))))))
Proof not projected
Definitions occuring in Statement : 
Message: Message, 
classrel: v 
 X(e), 
es-info: info(e), 
event-ordering+: EO+(Info), 
es-causl: (e < e'), 
es-loc: loc(e), 
es-E: E, 
Id: Id, 
imax: imax(a;b), 
all:
x:A. B[x], 
exists:
x:A. B[x], 
not:
A, 
squash:
T, 
implies: P 
 Q, 
or: P 
 Q, 
and: P 
 Q, 
apply: f a, 
function: x:A 
 B[x], 
pair: <a, b>, 
product: x:A 
 B[x], 
int:
, 
equal: s = t, 
bag-member: x 
 bs, 
bag: bag(T)
Definitions : 
rev_implies: P 
 Q, 
guard: {T}, 
iff: P 

 Q, 
true: True, 
cand: A c
 B, 
prop:
, 
so_lambda: 
x.t[x], 
member: t 
 T, 
name: Name, 
es-header: es-header(es;e), 
ler2_headers_no_inputs: Error :ler2_headers_no_inputs, 
or: P 
 Q, 
and: P 
 Q, 
exists:
x:A. B[x], 
squash:
T, 
implies: P 
 Q, 
all:
x:A. B[x], 
so_apply: x[s], 
uall:
[x:A]. B[x], 
uiff: uiff(P;Q), 
uimplies: b supposing a, 
message-constraint: message-constraint{i:l}(es;X;hdrs), 
ler2_propose'base: Error :ler2_propose'base, 
ler2_message-constraint: Error :ler2_message-constraint, 
subtype: S 
 T, 
msg-header: msg-header(m), 
ler2_choose'base: Error :ler2_choose'base, 
ler2_PrNbr: Error :ler2_PrNbr
Lemmas : 
and_assoc, 
exists_functionality_wrt_iff, 
or_functionality_wrt_iff, 
or_wf, 
Error :ler2_PrNbr_wf, 
bag-member_wf, 
Error :ler2_choose'base_wf, 
imax_wf, 
equal_wf, 
not_wf, 
and_wf, 
event-ordering+_wf, 
bag_wf, 
Error :ler2_message-constraint_wf, 
Error :ler2_propose'base_wf, 
ler2_propose-ilf, 
es-loc_wf, 
Error :ler2_main_wf, 
Id_wf, 
classrel_wf, 
es-causl_wf, 
Message_wf, 
event-ordering+_inc, 
es-E_wf, 
exists_wf, 
squash_wf, 
Error :ler2_headers_no_inputs_wf, 
msg-header_wf, 
l_member_wf, 
name_wf, 
cons_member, 
valueall-type_wf, 
int-valueall-type, 
product-valueall-type, 
base-noloc-classrel-make-Msg
\mforall{}es:EO'.  \mforall{}nodes:bag(Id).  \mforall{}client:Id.  \mforall{}uid:Id  {}\mrightarrow{}  \mBbbZ{}  {}\mrightarrow{}  \mBbbZ{}.
    ((ler2\_message-constraint\{i:l\}(client;nodes;uid)  es)
    {}\mRightarrow{}  (\mforall{}e:E.  \mforall{}epoch,i:\mBbbZ{}.
                (<epoch,  i>  \mmember{}  ler2\_propose'base()(e)
                {}\mRightarrow{}  (\mdownarrow{}\mexists{}e':E
                            (loc(e')  \mdownarrow{}\mmember{}  nodes
                            \mwedge{}  (e'  <  e)
                            \mwedge{}  <epoch,  loc(e)>  \mmember{}  ler2\_PrNbr\{SpLeaderRing2.esh:o\}(e')
                            \mwedge{}  <loc(e),  info(e)>  \mmember{}  ler2\_main(client;nodes;uid)(e')
                            \mwedge{}  ((\mexists{}j:\mBbbZ{}
                                      (<epoch,  j>  \mmember{}  ler2\_propose'base()(e')
                                      \mwedge{}  (\mneg{}(j  =  (uid  loc(e')  epoch)))
                                      \mwedge{}  (i  =  imax(j;uid  loc(e')  epoch))))
                                \mvee{}  (epoch  \mmember{}  ler2\_choose'base()(e')  \mwedge{}  (i  =  (uid  loc(e')  epoch)))))))))
Date html generated:
2012_02_20-PM-06_16_25
Last ObjectModification:
2012_02_02-PM-02_43_48
Home
Index