Nuprl Lemma : rsc4_rounds_state_mem

es:EO'. e1,e2:E. Cmd:ValueAllType. n,round1,round2:. x:    Cmd.
  ((e1 <loc e2)
   x  rsc4_RoundInfo(Cmd)(e1)
   round1  rsc4_NewRoundsState(Cmd) n(e1)
   round2  rsc4_NewRoundsState(Cmd) n(e2)
   let ni,c = x 
     in let m,i = ni 
        in (n = m)  (i  round2))


Proof




Definitions occuring in Statement :  rsc4_NewRoundsState: rsc4_NewRoundsState(Cmd) rsc4_RoundInfo: rsc4_RoundInfo(Cmd) Message: Message classrel: v  X(e) event-ordering+: EO+(Info) es-locl: (e <loc e') es-E: E le: A  B all: x:A. B[x] implies: P  Q apply: f a spread: spread def product: x:A  B[x] int: equal: s = t vatype: ValueAllType
Definitions :  eq_atom: x =a y atom-deq: AtomDeq list-deq: list-deq(eq) name-deq: NameDeq name_eq: name_eq(x;y) name: Name rsc4_vote'base: rsc4_vote'base(Cmd) rsc4_vote2retry: rsc4_vote2retry(Cmd) rsc4_retry'base: rsc4_retry'base(Cmd) true: True squash: T bfalse: ff false: False not: A guard: {T} assert: b uiff: uiff(P;Q) and: P  Q btrue: tt band: p  q ifthenelse: if b then t else f fi  so_lambda: x.t[x] member: t  T prop: rsc4_init: rsc4_init() rsc4_update_round: rsc4_update_round(Cmd) le: A  B rsc4_RoundInfo: rsc4_RoundInfo(Cmd) implies: P  Q vatype: ValueAllType all: x:A. B[x] so_apply: x[s] iff: P  Q uimplies: b supposing a unit: Unit bool: so_apply: x[s1;s2;s3] uall: [x:A]. B[x] rsc4_NewRoundsState: rsc4_NewRoundsState(Cmd) subtype: S  T it:
Lemmas :  event-ordering+_wf valueall-type_wf rsc4_NewRoundsState_wf es-E_wf classrel_wf single-valued-bag-single single-valued-classrel-base simple-loc-comb-1-concat-single-val name_wf assert-name_eq base-disjoint-classrel simple-loc-comb-1-concat-disjoint-classrel disjoint-classrel-symm rsc4_vote'base_wf rsc4_vote2retry_wf concat-lifting-loc-1_wf simple-loc-comb-1_wf rsc4_retry'base_wf parallel-class-single-val decidable__le sq_stable_from_decidable sq_stable__all es-le_wf Message_wf event-ordering+_inc es-locl_wf assert_of_le_int not_functionality_wrt_uiff assert_of_bnot or_functionality_wrt_uiff assert_of_bor bnot_of_lt_int true_wf squash_wf bnot_thru_band assert_functionality_wrt_uiff eqff_to_assert iff_weakening_uiff not_wf or_wf le_int_wf bnot_wf bor_wf iff_transitivity assert_of_lt_int assert_of_eq_int and_functionality_wrt_uiff assert_of_band eqtt_to_assert less_than_wf and_wf assert_wf equal_wf uiff_transitivity bool_wf lt_int_wf eq_int_wf band_wf rsc4_RoundInfo_wf bag_wf Id_wf rsc4_init_wf rsc4_update_round_wf le_wf Memory-class-mem

\mforall{}es:EO'.  \mforall{}e1,e2:E.  \mforall{}Cmd:ValueAllType.  \mforall{}n,round1,round2:\mBbbZ{}.  \mforall{}x:\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd.
    ((e1  <loc  e2)
    {}\mRightarrow{}  x  \mmember{}  rsc4\_RoundInfo(Cmd)(e1)
    {}\mRightarrow{}  round1  \mmember{}  rsc4\_NewRoundsState(Cmd)  n(e1)
    {}\mRightarrow{}  round2  \mmember{}  rsc4\_NewRoundsState(Cmd)  n(e2)
    {}\mRightarrow{}  let  ni,c  =  x 
          in  let  m,i  =  ni 
                in  (n  =  m)  {}\mRightarrow{}  (i  \mleq{}  round2))


Date html generated: 2012_02_20-PM-04_58_11
Last ObjectModification: 2012_02_02-PM-02_16_30

Home Index