Nuprl Lemma : rsc5-ilf

([Cmd:ValueAllType]. [es:EO']. [e:E].
   v:    Cmd  Id. {v  rsc5_vote'base(Cmd)(e)  v  Base(``rsc5 vote``;    Cmd  Id)(e)})
 ([a:]. [es:EO']. [e:E].  {  rsc5_Halt() a(e)  a  Base(``rsc5 decided``;)(e)})
 ([b,a:]. [locs:bag(Id)]. [flrs,coeff:]. [clients:bag(Id)]. [Cmd:ValueAllType]. [cmdeq:EqDecider(Cmd)].
   [es:EO']. [e:E]. [i:Id]. [m:Message].
     {<i, m>  rsc5_Quorum(Cmd;clients;cmdeq;coeff;flrs;locs) <a, b>(e)
      a1,b1:
           b2:Cmd
            b3:Id
             (<<<a1, b1>, b2>, b3>  Base(``rsc5 vote``;    Cmd  Id)(e)
              ((a2:
                  b4:Cmd
                   (((((fst((rsc5_possmajstep(Cmd;cmdeq) (inl <a2, b4> ) b2))) = ((coeff * flrs) + 1))
                    (((m = make-Msg(``rsc5 decided``;;a1))  i  locs)
                        ((m = make-Msg([notify];  Cmd;<a1, snd((rsc5_possmajstep(Cmd;cmdeq) (inl <a2, b4> ) b2))>))
                          i  clients)))
                    ((((fst((rsc5_possmajstep(Cmd;cmdeq) (inl <a2, b4> ) b2))) = ((coeff * flrs) + 1)))
                      (i = loc(e))
                      (m
                       = make-Msg(``rsc5 retry``;    Cmd;<<a1, b1 + 1>
                         , snd((rsc5_possmajstep(Cmd;cmdeq) (inl <a2, b4> ) b2))
                         >))))
                    (b5:Id List
                       ((<inl <a2, b4> , b5>  Memory-class(rsc5_add_to_quorum(Cmd;cmdeq) 
                                                            <a, b>;rsc5_init() <inr  , []>;rsc5_vote'base(Cmd))(e)
                        (||b5|| = (coeff * flrs)))
                        ((rsc5_newvote(Cmd) <a, b> <<<a1, b1>, b2>, b3> <inl <a2, b4> , b5>))))))
                (((((fst((rsc5_possmajstep(Cmd;cmdeq) (inr  ) b2))) = ((coeff * flrs) + 1))
                  (((m = make-Msg(``rsc5 decided``;;a1))  i  locs)
                      ((m = make-Msg([notify];  Cmd;<a1, snd((rsc5_possmajstep(Cmd;cmdeq) (inr  ) b2))>))
                        i  clients)))
                  ((((fst((rsc5_possmajstep(Cmd;cmdeq) (inr  ) b2))) = ((coeff * flrs) + 1)))
                    (i = loc(e))
                    (m
                     = make-Msg(``rsc5 retry``;    Cmd;<<a1, b1 + 1>
                       , snd((rsc5_possmajstep(Cmd;cmdeq) (inr  ) b2))
                       >))))
                  (b4:Id List
                     ((<inr  , b4>  Memory-class(rsc5_add_to_quorum(Cmd;cmdeq) 
                                                   <a, b>;rsc5_init() <inr  , []>;rsc5_vote'base(Cmd))(e)
                      (||b4|| = (coeff * flrs)))
                      ((rsc5_newvote(Cmd) <a, b> <<<a1, b1>, b2>, b3> <inr  , b4>)))))))})
 ([Cmd:ValueAllType]. [es:EO']. [e:E].
     v:    Cmd
       {v  rsc5_RoundInfo(Cmd)(e)
        v  Base(``rsc5 retry``;    Cmd)(e)
            (a,b:
                b1:Cmd
                 ((v = <<a, b>, b1>)  (b2:Id. <<<a, b>, b1>, b2>  Base(``rsc5 vote``;    Cmd  Id)(e))))})
 ([Cmd:ValueAllType]. [es:EO']. [e:E].
     v:  Cmd
       {v  rsc5_Proposal(Cmd)(e)
        v  Base([propose];  Cmd)(e)
            (a,b:
                b1:Cmd. ((v = <a, b1>)  (b2:Id. <<<a, b>, b1>, b2>  Base(``rsc5 vote``;    Cmd  Id)(e))))})
 ([Cmd:ValueAllType]. [clients:bag(Id)]. [cmdeq:EqDecider(Cmd)]. [coeff,flrs:]. [locs:bag(Id)]. [es:EO'].
   [e:E]. [i:Id]. [m:Message].
     {<i, m>  rsc5_main(Cmd;clients;cmdeq;coeff;flrs;locs)(e)
      loc(e)  locs
          (e':{e':E| e' loc e } 
              a:
               ((b:Cmd
                  ((<a, b>  Base([propose];  Cmd)(e')
                   (b1:. b3:Id. <<<a, b1>, b>, b3>  Base(``rsc5 vote``;    Cmd  Id)(e')))
                   ((((i  locs  (m = make-Msg(``rsc5 vote``;    Cmd  Id;<<<a, 0>, b>, loc(e)>)))  (e = e'))
                     ((no rsc5_Quorum(Cmd;clients;cmdeq;coeff;flrs;locs) <a, 0> between e' and e)
                       <i, m>  {rsc5_Quorum(Cmd;clients;cmdeq;coeff;flrs;locs) <a, 0>}(e)))
                     ((no rsc5_Halt() a between e' and e)  (e1:{e1:E| e1 loc ... } . ...)))))
                ...))})


Proof not projected




Definitions occuring in Statement :  rsc5_update_replica: rsc5_update_replica(Cmd),  rsc5_Proposal: rsc5_Proposal(Cmd),  rsc5_Halt: rsc5_Halt(),  rsc5_update_round: rsc5_update_round(Cmd),  rsc5_RoundInfo: rsc5_RoundInfo(Cmd),  rsc5_Quorum: rsc5_Quorum(Cmd;clients;cmdeq;coeff;flrs;locs),  rsc5_add_to_quorum: rsc5_add_to_quorum(Cmd;cmdeq),  rsc5_possmajstep: rsc5_possmajstep(Cmd;cmdeq),  rsc5_newvote: rsc5_newvote(Cmd),  rsc5_vote'base: rsc5_vote'base(Cmd),  Memory-class: Memory-class(f;init;X),  make-Msg: make-Msg(hdr;typ;val),  base-headers-msg-val: Base(hdr;typ),  Message: Message,  no-classrel-in-interval: (no X between start and e),  classrel: v  X(e),  eo-forward: eo.e,  event-ordering+: EO+(Info),  es-le: e loc e' ,  es-loc: loc(e),  es-E: E,  Id: Id,  length: ||as||,  assert: b,  sq_or: a  b,  it: ,  uall: [x:A]. B[x],  guard: {T},  pi1: fst(t),  pi2: snd(t),  all: x:A. B[x],  exists: x:A. B[x],  iff: P  Q,  not: A,  squash: T,  or: P  Q,  and: P  Q,  unit: Unit,  less_than: a < b,  set: {x:A| B[x]} ,  apply: f a,  pair: <a, b>,  product: x:A  B[x],  inr: inr x ,  inl: inl x ,  union: left + right,  cons: [car / cdr],  nil: [],  list: type List,  multiply: n * m,  add: n + m,  natural_number: $n,  int: ,  token: "$token",  equal: s = t,  l_member: (x  l),  deq: EqDecider(T),  bag-member: x  bs,  bag: bag(T),  vatype: ValueAllType
Definitions :  rsc5_main: rsc5_main(Cmd;clients;cmdeq;coeff;flrs;locs),  rsc5_Replica: rsc5_Replica(Cmd;clients;cmdeq;coeff;flrs;locs),  rsc5_Voter: rsc5_Voter(Cmd;clients;cmdeq;coeff;flrs;locs),  rsc5_NewVoters: rsc5_NewVoters(Cmd),  rsc5_NewRounds: rsc5_NewRounds(Cmd),  rsc5_Round: rsc5_Round(Cmd;clients;cmdeq;coeff;flrs;locs),  rsc5_NewRoundsState: rsc5_NewRoundsState(Cmd),  rsc5_when_new_round: rsc5_when_new_round(Cmd),  rsc5_vote'broadcast: rsc5_vote'broadcast(Cmd),  uiff: uiff(P;Q),  rsc5_ReplicaState: rsc5_ReplicaState(Cmd),  rsc5_when_new_proposal: rsc5_when_new_proposal(Cmd),  rsc5_Proposal: rsc5_Proposal(Cmd),  rsc5_vote2prop: rsc5_vote2prop(Cmd),  rsc5_propose'base: rsc5_propose'base(Cmd),  rsc5_RoundInfo: rsc5_RoundInfo(Cmd),  rsc5_vote2retry: rsc5_vote2retry(Cmd),  rsc5_retry'base: rsc5_retry'base(Cmd),  rsc5_Quorum: rsc5_Quorum(Cmd;clients;cmdeq;coeff;flrs;locs),  rsc5_QuorumState: rsc5_QuorumState(Cmd;cmdeq),  rsc5_when_quorum: rsc5_when_quorum(Cmd;clients;cmdeq;coeff;flrs;locs),  rsc5_roundout: rsc5_roundout(Cmd;clients;cmdeq;coeff;flrs;locs),  so_lambda: x y.t[x; y],  exposed-bfalse: exposed-bfalse,  rsc5_notify'broadcast: rsc5_notify'broadcast(Cmd),  rsc5_decided'broadcast: rsc5_decided'broadcast(),  subtype: S  T,  rsc5_retry'send: rsc5_retry'send(Cmd),  sq_or: a  b,  outl: outl(x),  isl: isl(x),  top: Top,  rsc5_newvote: rsc5_newvote(Cmd),  rsc5_possmajstep: rsc5_possmajstep(Cmd;cmdeq),  rsc5_Halt: rsc5_Halt(),  rsc5_decided'base: rsc5_decided'base(),  bfalse: ff,  btrue: tt,  ifthenelse: if b then t else f fi ,  or: P  Q,  so_lambda: x.t[x],  exists: x:A. B[x],  cand: A c B,  rsc5_vote'base: rsc5_vote'base(Cmd),  true: True,  squash: T,  bag-member: x  bs,  rev_implies: P  Q,  implies: P  Q,  name: Name,  prop: ,  member: t  T,  classrel: v  X(e),  iff: P  Q,  guard: {T},  all: x:A. B[x],  vatype: ValueAllType,  uall: [x:A]. B[x],  and: P  Q,  so_apply: x[s1;s2],  pi2: snd(t),  pi1: fst(t),  sq_stable: SqStable(P),  bool: ,  unit: Unit,  uimplies: b supposing a,  rev_uimplies: rev_uimplies(P;Q),  so_apply: x[s],  it:
Lemmas :  classrel-at,  eo-forward-forward2,  eclass_wf,  eo-forward-le,  subtype_rel_self,  subtype_rel_sets,  bind-class-rel-weak,  until-classrel,  es-le-loc,  eo-forward-no-prior-classrel,  once-classrel-weak,  eo-forward-first2,  eo-forward-loc,  send-once-loc-classrel,  sq_or_sq_or,  and_functionality_wrt_uiff,  eo-forward-base-classrel,  squash-bag-member,  assert_of_le_int,  assert_of_band,  bnot_of_lt_int,  bnot_thru_bor,  assert_functionality_wrt_uiff,  le_wf,  and_wf,  le_int_wf,  not_functionality_wrt_iff,  assert-deq-member,  assert_of_lt_int,  assert_of_bor,  iff_weakening_uiff,  and_functionality_wrt_iff,  squash_sq_or,  rsc5_main_wf,  rsc5_Replica_wf,  class-at_wf,  rsc5_Voter_wf,  rsc5_NewVoters_wf,  es-interface-subtype_rel2,  rsc5_NewRounds_wf,  bind-class_wf,  until-class_wf,  rsc5_Round_wf,  rsc5_NewRoundsState_wf,  rsc5_when_new_round_wf,  once-class_wf,  send-once-loc-class_wf,  rsc5_vote'broadcast_wf,  subtype_rel_set,  rsc5_ReplicaState_wf,  rsc5_when_new_proposal_wf,  lt_int_wf,  bor_wf,  l_member_wf,  less_than_wf,  rsc5_update_replica_wf,  rsc5_update_round_wf,  decidable__es-le,  es-le_wf,  sq_stable_from_decidable,  member-eo-forward-E,  no-classrel-in-interval_wf,  eo-forward_wf,  eo-forward-E-subtype,  Id-valueall-type,  rsc5_Proposal_wf,  rsc5_vote2prop_wf,  rsc5_propose'base_wf,  parallel-classrel-weak,  sq_or_squash3,  rsc5_RoundInfo_wf,  rsc5_vote2retry_wf,  rsc5_retry'base_wf,  parallel-class_wf,  simple-loc-comb-2-concat-classrel-weak,  exists-unit,  exists-union,  assert_of_bnot,  eqff_to_assert,  eqtt_to_assert,  uiff_transitivity,  spread_wf,  exists-product1,  pair-eta,  bag-member-append,  bag-member-map,  sq_or_squash,  squash_true,  and_true_l,  deq_wf,  rsc5_Quorum_wf,  rsc5_QuorumState_wf,  rsc5_when_quorum_wf,  concat-lifting-loc-2_wf,  simple-loc-comb-2_wf,  rsc5_notify'broadcast_wf,  rsc5_decided'broadcast_wf,  bag-append_wf,  rsc5_retry'send_wf,  bag-map_wf,  id-deq_wf,  deq-member_wf,  bnot_wf,  product-deq_wf,  band_wf,  length_wf,  rsc5_init_wf,  rsc5_add_to_quorum_wf,  Memory-class_wf,  es-loc_wf,  sq_or_wf,  pi2_wf,  make-Msg_wf,  sq_stable__valueall-type,  product-valueall-type,  int-valueall-type,  top_wf,  pi1_wf_top,  simple-loc-comb-1-concat-classrel-weak,  bag-member-empty-weak,  bag-member-single-weak,  bool_wf,  bag-member-ifthenelse,  and_false_r,  trivial-eq,  not_functionality_wrt_uiff,  safe-assert-deq,  and_functionality_wrt_uiff2,  or_functionality_wrt_iff,  ifthenelse-prop,  not_wf,  assert_wf,  iff_transitivity,  or_false_r,  equal_wf,  exists-elim,  squash_equal,  squash-classrel,  squash_and,  and_true_r,  rsc5_Halt_wf,  rsc5_decided'base_wf,  concat-lifting-loc-1_wf,  simple-loc-comb-1_wf,  empty-bag_wf,  single-bag_wf,  bag_wf,  bag-member_wf,  it_wf,  unit_wf2,  int-deq_wf,  eqof_wf,  ifthenelse_wf,  or_wf,  exists_wf,  squash_wf,  true_wf,  valueall-type_wf,  event-ordering+_wf,  event-ordering+_inc,  es-E_wf,  false_wf,  rsc5_vote'base_wf,  base-headers-msg-val_wf,  Id_wf,  Message_wf,  classrel_wf

(\mforall{}[Cmd:ValueAllType].  \mforall{}[es:EO'].  \mforall{}[e:E].
      \mforall{}v:\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id
          \{v  \mmember{}  rsc5\_vote'base(Cmd)(e)  \mLeftarrow{}{}\mRightarrow{}  v  \mmember{}  Base(``rsc5  vote``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id)(e)\})
\mwedge{}  (\mforall{}[a:\mBbbZ{}].  \mforall{}[es:EO'].  \mforall{}[e:E].    \{\mcdot{}  \mmember{}  rsc5\_Halt()  a(e)  \mLeftarrow{}{}\mRightarrow{}  a  \mmember{}  Base(``rsc5  decided``;\mBbbZ{})(e)\})
\mwedge{}  (\mforall{}[b,a:\mBbbZ{}].  \mforall{}[locs:bag(Id)].  \mforall{}[flrs,coeff:\mBbbZ{}].  \mforall{}[clients:bag(Id)].  \mforall{}[Cmd:ValueAllType].
      \mforall{}[cmdeq:EqDecider(Cmd)].  \mforall{}[es:EO'].  \mforall{}[e:E].  \mforall{}[i:Id].  \mforall{}[m:Message].
          \{<i,  m>  \mmember{}  rsc5\_Quorum(Cmd;clients;cmdeq;coeff;flrs;locs)  <a,  b>(e)
          \mLeftarrow{}{}\mRightarrow{}  \mdownarrow{}\mexists{}a1,b1:\mBbbZ{}
                      \mexists{}b2:Cmd
                        \mexists{}b3:Id
                          (<<<a1,  b1>,  b2>,  b3>  \mmember{}  Base(``rsc5  vote``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id)(e)
                          \mwedge{}  ((\mexists{}a2:\mBbbZ{}
                                    \mexists{}b4:Cmd
                                      (((((fst((rsc5\_possmajstep(Cmd;cmdeq)  (inl  <a2,  b4>  )  b2)))
                                      =  ((coeff  *  flrs)  +  1))
                                      \mwedge{}  (\mdownarrow{}((m  =  make-Msg(``rsc5  decided``;\mBbbZ{};a1))  \mwedge{}  i  \mdownarrow{}\mmember{}  locs)
                                              \mvee{}  ((m
                                                  =  make-Msg([notify];\mBbbZ{}  \mtimes{}  Cmd;<a1
                                                      ,  snd((rsc5\_possmajstep(Cmd;cmdeq)  (inl  <a2,  b4>  )  b2))
                                                      >))
                                                  \mwedge{}  i  \mdownarrow{}\mmember{}  clients)))
                                      \mvee{}  ((\mneg{}((fst((rsc5\_possmajstep(Cmd;cmdeq)  (inl  <a2,  b4>  )  b2)))
                                            =  ((coeff  *  flrs)  +  1)))
                                          \mwedge{}  (i  =  loc(e))
                                          \mwedge{}  (m
                                              =  make-Msg(``rsc5  retry``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd;<<a1,  b1  +  1>
                                                  ,  snd((rsc5\_possmajstep(Cmd;cmdeq)  (inl  <a2,  b4>  )  b2))
                                                  >))))
                                      \mwedge{}  (\mexists{}b5:Id  List
                                              ((<inl  <a2,  b4>  ,  b5>  \mmember{}
                                                    Memory-class(rsc5\_add\_to\_quorum(Cmd;cmdeq) 
                                                                              <a,  b>rsc5\_init()  <inr  \mcdot{}  ,  []>rsc5\_vote'base(Cmd))(e)
                                              \mwedge{}  (||b5||  =  (coeff  *  flrs)))
                                              \mwedge{}  (\muparrow{}(rsc5\_newvote(Cmd)  <a,  b>  <<<a1,  b1>,  b2>,  b3>  <inl  <a2,  b4>  ,  b5>))))))
                              \mvee{}  (((((fst((rsc5\_possmajstep(Cmd;cmdeq)  (inr  \mcdot{}  )  b2)))  =  ((coeff  *  flrs)  +  1))
                                  \mwedge{}  (\mdownarrow{}((m  =  make-Msg(``rsc5  decided``;\mBbbZ{};a1))  \mwedge{}  i  \mdownarrow{}\mmember{}  locs)
                                          \mvee{}  ((m
                                              =  make-Msg([notify];\mBbbZ{}  \mtimes{}  Cmd;<a1
                                                  ,  snd((rsc5\_possmajstep(Cmd;cmdeq)  (inr  \mcdot{}  )  b2))
                                                  >))
                                              \mwedge{}  i  \mdownarrow{}\mmember{}  clients)))
                                  \mvee{}  ((\mneg{}((fst((rsc5\_possmajstep(Cmd;cmdeq)  (inr  \mcdot{}  )  b2)))  =  ((coeff  *  flrs)  +  1)))
                                      \mwedge{}  (i  =  loc(e))
                                      \mwedge{}  (m
                                          =  make-Msg(``rsc5  retry``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd;<<a1,  b1  +  1>
                                              ,  snd((rsc5\_possmajstep(Cmd;cmdeq)  (inr  \mcdot{}  )  b2))
                                              >))))
                                  \mwedge{}  (\mexists{}b4:Id  List
                                          ((<inr  \mcdot{}  ,  b4>  \mmember{}  Memory-class(rsc5\_add\_to\_quorum(Cmd;cmdeq) 
                                                                                                      <a,  b>rsc5\_init() 
                                                                                                                    <inr  \mcdot{}  ,  []>rsc5\_vote'base(Cmd))(e)
                                          \mwedge{}  (||b4||  =  (coeff  *  flrs)))
                                          \mwedge{}  (\muparrow{}(rsc5\_newvote(Cmd)  <a,  b>  <<<a1,  b1>,  b2>,  b3>  <inr  \mcdot{}  ,  b4>)))))))\})
\mwedge{}  (\mforall{}[Cmd:ValueAllType].  \mforall{}[es:EO'].  \mforall{}[e:E].
          \mforall{}v:\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd
              \{v  \mmember{}  rsc5\_RoundInfo(Cmd)(e)
              \mLeftarrow{}{}\mRightarrow{}  v  \mmember{}  Base(``rsc5  retry``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd)(e)
                      \mdownarrow{}\mvee{}  (\mexists{}a,b:\mBbbZ{}
                                \mexists{}b1:Cmd
                                  ((v  =  <<a,  b>,  b1>)
                                  \mwedge{}  (\mexists{}b2:Id.  <<<a,  b>,  b1>,  b2>  \mmember{}  Base(``rsc5  vote``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id)(e))))\})
\mwedge{}  (\mforall{}[Cmd:ValueAllType].  \mforall{}[es:EO'].  \mforall{}[e:E].
          \mforall{}v:\mBbbZ{}  \mtimes{}  Cmd
              \{v  \mmember{}  rsc5\_Proposal(Cmd)(e)
              \mLeftarrow{}{}\mRightarrow{}  v  \mmember{}  Base([propose];\mBbbZ{}  \mtimes{}  Cmd)(e)
                      \mdownarrow{}\mvee{}  (\mexists{}a,b:\mBbbZ{}
                                \mexists{}b1:Cmd
                                  ((v  =  <a,  b1>)
                                  \mwedge{}  (\mexists{}b2:Id.  <<<a,  b>,  b1>,  b2>  \mmember{}  Base(``rsc5  vote``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id)(e))))\})
\mwedge{}  (\mforall{}[Cmd:ValueAllType].  \mforall{}[clients:bag(Id)].  \mforall{}[cmdeq:EqDecider(Cmd)].  \mforall{}[coeff,flrs:\mBbbZ{}].
      \mforall{}[locs:bag(Id)].  \mforall{}[es:EO'].  \mforall{}[e:E].  \mforall{}[i:Id].  \mforall{}[m:Message].
          \{<i,  m>  \mmember{}  rsc5\_main(Cmd;clients;cmdeq;coeff;flrs;locs)(e)
          \mLeftarrow{}{}\mRightarrow{}  loc(e)  \mdownarrow{}\mmember{}  locs
                  \mwedge{}  (\mdownarrow{}\mexists{}e':\{e':E|  e'  \mleq{}loc  e  \} 
                            \mexists{}a:\mBbbZ{}
                              ((\mexists{}b:Cmd
                                    ((<a,  b>  \mmember{}  Base([propose];\mBbbZ{}  \mtimes{}  Cmd)(e')
                                    \mdownarrow{}\mvee{}  (\mexists{}b1:\mBbbZ{}.  \mexists{}b3:Id.  <<<a,  b1>,  b>,  b3>  \mmember{}  Base(``rsc5  vote``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id)(e')))
                                    \mwedge{}  ((((i  \mdownarrow{}\mmember{}  locs
                                        \mwedge{}  (m  =  make-Msg(``rsc5  vote``;\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd  \mtimes{}  Id;<<<a,  0>,  b>,  loc(e)>)))
                                        \mwedge{}  (e  =  e'))
                                        \mvee{}  ((no  rsc5\_Quorum(Cmd;clients;cmdeq;coeff;flrs;locs)  <a,  0>  between  e'  and  e)
                                            \mwedge{}  <i,  m>  \mmember{}  \{rsc5\_Quorum(Cmd;clients;cmdeq;coeff;flrs;locs)  <a,  0>\}(e)))
                                        \mdownarrow{}\mvee{}  ((no  rsc5\_Halt()  a  between  e'  and  e)  \mwedge{}  (\mdownarrow{}\mexists{}e1:\{e1:E|  e1  \mleq{}loc  ...  \}  .  ...)))))
                              \mwedge{}  ...))\})


Date html generated: 2012_02_20-PM-05_11_18
Last ObjectModification: 2012_02_02-PM-02_20_35

Home Index