Nuprl Lemma : RSC-votes-consistent

[Cmd:ValueAllType]. [eq:EqDecider(Cmd)]. [locs,clients:bag(Id)]. [f:]. [es:EO'].
  ((RSC_SimpleConsensus_stdma{mark-simple-consensus-V2.esh:o, i:l}(Cmd; clients; eq; f; locs) es)
   (e1,e2:E. n,i:. x,y,z:Id. c1,c2:Cmd.
        (<y, make-Msg(``sc vote``;    Cmd  Id;<<<n, i>, c1>, x>)
          RSC_SimpleConsensus_main{mark-simple-consensus-V2.esh:o}(Cmd; clients; eq; f; locs)(e1)
         <z, make-Msg(``sc vote``;    Cmd  Id;<<<n, i>, c2>, x>)
            RSC_SimpleConsensus_main{mark-simple-consensus-V2.esh:o}(Cmd; clients; eq; f; locs)(e2)
         (c1 = c2))))


Proof not projected




Definitions occuring in Statement :  make-Msg: make-Msg(hdr;typ;val) Message: Message classrel: v  X(e) event-ordering+: EO+(Info) es-E: E Id: Id uall: [x:A]. B[x] all: x:A. B[x] implies: P  Q apply: f a pair: <a, b> product: x:A  B[x] cons: [car / cdr] nil: [] int: token: "$token" equal: s = t deq: EqDecider(T) bag: bag(T) vatype: ValueAllType
Definitions :  uall: [x:A]. B[x] vatype: ValueAllType implies: P  Q all: x:A. B[x] member: t  T so_lambda: x.t[x] squash: T true: True prop: name: Name msg-has-type: msg-has-type(m;T) pi2: snd(t) and: P  Q assert: b uiff: uiff(P;Q) name_eq: name_eq(x;y) ifthenelse: if b then t else f fi  name-deq: NameDeq list-deq: list-deq(eq) band: p  q atom-deq: AtomDeq eq_atom: x =a y btrue: tt bfalse: ff false: False exists: x:A. B[x] pi1: fst(t) top: Top so_apply: x[s] sq_stable: SqStable(P) sq_or: a  b iff: P  Q uimplies: b supposing a or: P  Q cand: A c B sq_type: SQType(T) guard: {T} rev_implies: P  Q subtype: S  T
Lemmas :  Id_wf product-valueall-type int-valueall-type sq_stable__valueall-type Id-valueall-type valueall-type_wf RSC_vote classrel_wf Message_wf Error :RSC_SimpleConsensus_main_wf,  make-Msg_wf es-E_wf event-ordering+_inc Error :RSC_SimpleConsensus_stdma_wf,  event-ordering+_wf bag_wf deq_wf RSC_voter_start_unique es-le-loc base-noloc-classrel es-info_wf msg-body_wf2 squash_wf assert_wf msg-has-type_wf Error :pi2_wf,  base-headers-msg-val_wf subtype_base_sq name_wf list_subtype_base atom_subtype_base assert-name_eq top_wf pi1_wf_top true_wf RSC_PrVoterState-inv eo-forward_wf member-eo-forward-E es-loc_wf RSC_VoterState-trans primed-class-opt_wf single-bag_wf Error :RSC_VoterState_wf,  es-locl_wf es-locl-trichotomy eo-forward-locl es-le_wf exists_functionality_wrt_iff iff_weakening_uiff eo-forward-base-classrel primed-class-opt-classrel Error :RSC_ReplicaState_wf

\mforall{}[Cmd:ValueAllType].  \mforall{}[eq:EqDecider(Cmd)].  \mforall{}[locs,clients:bag(Id)].  \mforall{}[f:\mBbbZ{}].  \mforall{}[es:EO'].
    ((RSC\_SimpleConsensus\_stdma\{mark-simple-consensus-V2.esh:o,  i:l\}(Cmd;  clients;  eq;  f;  locs)  es)
    {}\mRightarrow{}  (\mforall{}e1,e2:E.  \mforall{}n,i:\mBbbZ{}.  \mforall{}x,y,z:Id.  \mforall{}c1,c2:Cmd.
                (<y,  make-Msg(``sc  vote``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id;<<<n,  i>,  c1>,  x>)>  \mmember{}
                    RSC\_SimpleConsensus\_main\{mark-simple-consensus-V2.esh:o\}(Cmd;  clients;  eq;  f;  locs)(e1)
                {}\mRightarrow{}  <z,  make-Msg(``sc  vote``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id;<<<n,  i>,  c2>,  x>)>  \mmember{}
                        RSC\_SimpleConsensus\_main\{mark-simple-consensus-V2.esh:o\}(Cmd;  clients;  eq;  f;  locs)(e2)
                {}\mRightarrow{}  (c1  =  c2))))


Date html generated: 2012_02_20-PM-04_03_47
Last ObjectModification: 2012_02_02-PM-01_59_48

Home Index