Nuprl Lemma : new_23_sig_rounds_strict_inc
∀Cmd:ValueAllType. ∀notify,propose:Atom List. ∀f:new_23_sig_headers_type{i:l}(Cmd;notify;propose). ∀es:EO+(Message(f)).
∀e1,e2:E. ∀n,round1,round2:ℤ.
  ((∃z:ℤ × ℤ × Cmd
     ∃round:ℤ
      ∃e:E
       (e1 ≤loc e 
       ∧ (e <loc e2)
       ∧ z ∈ new_23_sig_RoundInfo(Cmd;notify;propose;f)(e)
       ∧ round ∈ new_23_sig_NewRoundsState(Cmd;notify;propose;f) n(e)
       ∧ let z,cmd = z 
         in let n',round' = z 
            in (n' = n ∈ ℤ) ∧ round < round'))
  
⇒ (e1 <loc e2)
  
⇒ round1 ∈ new_23_sig_NewRoundsState(Cmd;notify;propose;f) n(e1)
  
⇒ round2 ∈ new_23_sig_NewRoundsState(Cmd;notify;propose;f) n(e2)
  
⇒ round1 < round2)
Proof
Definitions occuring in Statement : 
new_23_sig_NewRoundsState: new_23_sig_NewRoundsState(Cmd;notify;propose;f)
, 
new_23_sig_RoundInfo: new_23_sig_RoundInfo(Cmd;notify;propose;f)
, 
new_23_sig_headers_type: new_23_sig_headers_type{i:l}(Cmd;notify;propose)
, 
Message: Message(f)
, 
classrel: v ∈ X(e)
, 
event-ordering+: EO+(Info)
, 
es-le: e ≤loc e' 
, 
es-locl: (e <loc e')
, 
es-E: E
, 
list: T List
, 
vatype: ValueAllType
, 
less_than: a < b
, 
all: ∀x:A. B[x]
, 
exists: ∃x:A. B[x]
, 
implies: P 
⇒ Q
, 
and: P ∧ Q
, 
apply: f a
, 
spread: spread def, 
product: x:A × B[x]
, 
int: ℤ
, 
atom: Atom
, 
equal: s = t ∈ T
Lemmas : 
classrel_wf, 
squash_wf, 
true_wf, 
es-E_wf, 
event-ordering+_subtype, 
event-ordering+_wf, 
eclass_wf, 
Memory1-memory-class1, 
Id_wf, 
new_23_sig_update_round_wf, 
new_23_sig_RoundInfo_wf, 
iff_weakening_equal, 
Memory-loc-class-progress, 
less_than_wf, 
equal-wf-base, 
int_subtype_base, 
single-bag_wf, 
decidable__cand, 
decidable__equal_int, 
decidable__lt, 
less_than_transitivity2, 
le_weakening2, 
sq_stable__less_than, 
eq_int_wf, 
bool_wf, 
eqtt_to_assert, 
assert_of_eq_int, 
lt_int_wf, 
assert_of_lt_int, 
eqff_to_assert, 
equal_wf, 
bool_cases_sqequal, 
subtype_base_sq, 
bool_subtype_base, 
assert-bnot, 
neg_assert_of_eq_int, 
iff_transitivity, 
assert_wf, 
iff_weakening_uiff, 
assert_of_band, 
not_wf, 
Memory-loc-class_wf, 
es-locl_wf, 
es-le_wf, 
parallel-class-single-val, 
new_23_sig_retry'base_wf, 
eclass0_wf, 
new_23_sig_vote'base_wf, 
new_23_sig_vote2retry_wf, 
disjoint-classrel-symm, 
eclass0-disjoint-classrel, 
base-disjoint-classrel, 
name_wf, 
name_eq_wf, 
bnot_wf, 
assert-name_eq, 
assert_of_bnot, 
sq_stable__encodes-msg-type, 
subtype_rel_dep_function, 
valueall-type_wf, 
cons_wf_listp, 
cons_wf, 
nil_wf, 
l_all_fwd, 
list_wf, 
new_23_sig_headers_fun_wf, 
new_23_sig_headers_wf, 
cons_member, 
l_member_wf, 
subtype_rel_weakening, 
ext-eq_weakening, 
eclass0-single-val, 
single-valued-bag-single, 
base-headers-msg-val-single-val, 
listp_wf, 
sq_stable__subtype_rel, 
exists_wf, 
Message_wf, 
vatype_wf, 
new_23_sig_NewRoundsState_wf, 
new_23_sig_headers_type_wf
Latex:
\mforall{}Cmd:ValueAllType.  \mforall{}notify,propose:Atom  List.  \mforall{}f:new\_23\_sig\_headers\_type\{i:l\}(Cmd;notify;propose).
\mforall{}es:EO+(Message(f)).  \mforall{}e1,e2:E.  \mforall{}n,round1,round2:\mBbbZ{}.
    ((\mexists{}z:\mBbbZ{}  \mtimes{}  \mBbbZ{}  \mtimes{}  Cmd
          \mexists{}round:\mBbbZ{}
            \mexists{}e:E
              (e1  \mleq{}loc  e 
              \mwedge{}  (e  <loc  e2)
              \mwedge{}  z  \mmember{}  new\_23\_sig\_RoundInfo(Cmd;notify;propose;f)(e)
              \mwedge{}  round  \mmember{}  new\_23\_sig\_NewRoundsState(Cmd;notify;propose;f)  n(e)
              \mwedge{}  let  z,cmd  =  z 
                  in  let  n',round'  =  z 
                        in  (n'  =  n)  \mwedge{}  round  <  round'))
    {}\mRightarrow{}  (e1  <loc  e2)
    {}\mRightarrow{}  round1  \mmember{}  new\_23\_sig\_NewRoundsState(Cmd;notify;propose;f)  n(e1)
    {}\mRightarrow{}  round2  \mmember{}  new\_23\_sig\_NewRoundsState(Cmd;notify;propose;f)  n(e2)
    {}\mRightarrow{}  round1  <  round2)
Date html generated:
2015_07_23-PM-03_51_27
Last ObjectModification:
2015_02_04-PM-01_57_44
Home
Index