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