Nuprl Lemma : CLK-prop2
∀MsgType:ValueAllType. ∀locs:bag(Id). ∀reply:Id ─→ MsgType ─→ (MsgType × Id). ∀f:CLK_headers_type{i:l}(MsgType).
∀es:EO+(Message(f)). ∀e1,e2:E. ∀clock1,clock2:ℤ.
  ((∀e:E. (↑e ∈b CLK_msg'base(MsgType;f)))
  
⇒ e1 ─→ e2
  
⇒ clock1 ∈ CLK_Clock(MsgType;f)(e1)
  
⇒ clock2 ∈ CLK_Clock(MsgType;f)(e2)
  
⇒ clock1 < clock2)
Proof
Definitions occuring in Statement : 
CLK_main: CLK_main(MsgType;locs;reply;f)
, 
CLK_Clock: CLK_Clock(MsgType;f)
, 
CLK_msg'base: CLK_msg'base(MsgType;f)
, 
CLK_headers_type: CLK_headers_type{i:l}(MsgType)
, 
es-happened-before: e1 ─→ e2
, 
Message: Message(f)
, 
classrel: v ∈ X(e)
, 
member-eclass: e ∈b X
, 
event-ordering+: EO+(Info)
, 
es-E: E
, 
Id: Id
, 
vatype: ValueAllType
, 
assert: ↑b
, 
less_than: a < b
, 
all: ∀x:A. B[x]
, 
implies: P 
⇒ Q
, 
function: x:A ─→ B[x]
, 
product: x:A × B[x]
, 
int: ℤ
, 
bag: bag(T)
Lemmas : 
int_seg_wf, 
length_wf, 
name_wf, 
CLK_headers_wf, 
l_all_iff, 
l_member_wf, 
equal_wf, 
CLK_headers_fun_wf, 
cons_wf_listp, 
cons_wf, 
nil_wf, 
listp_wf, 
cons_member, 
iff_weakening_equal, 
es-causl-swellfnd, 
event-ordering+_subtype, 
nat_properties, 
less_than_transitivity1, 
less_than_irreflexivity, 
ge_wf, 
less_than_wf, 
member-less_than, 
classrel_wf, 
CLK_Clock_wf, 
es-happened-before_wf, 
CLK_main_wf, 
es-E_wf, 
int_seg_subtype-nat, 
decidable__le, 
subtract_wf, 
false_wf, 
not-ge-2, 
less-iff-le, 
condition-implies-le, 
minus-one-mul, 
zero-add, 
minus-add, 
minus-minus, 
add-associates, 
add-swap, 
add-commutes, 
add_functionality_wrt_le, 
add-zero, 
le-add-cancel, 
decidable__equal_int, 
subtype_rel-int_seg, 
le_weakening, 
int_seg_properties, 
le_wf, 
nat_wf, 
zero-le-nat, 
lelt_wf, 
es-causl_wf, 
decidable__equal_Id, 
es-loc_wf, 
decidable__lt, 
not-equal-2, 
le-add-cancel-alt, 
not-le-2, 
sq_stable__le, 
add-mul-special, 
zero-mul, 
all_wf, 
assert_wf, 
member-eclass_wf, 
CLK_msg'base_wf, 
event-ordering+_wf, 
Message_wf, 
subtype_rel_dep_function, 
vatype_wf, 
CLK_headers_type_wf, 
bag_wf, 
Id_wf, 
set_wf, 
valueall-type_wf, 
CLK_strict_inc2, 
es-causl_transitivity1, 
es-causle_weakening_eq, 
and_wf, 
es-causle_wf, 
es-le-self, 
es-locl_wf, 
es-le_wf, 
CLK-ilf, 
es-info_wf, 
CLK_Clock-classrel, 
equal-wf-base-T, 
int_subtype_base, 
CLK_ClockFun_wf, 
subtype_base_sq, 
squash_wf, 
true_wf, 
CLK_ClockFun-eq, 
es-first_wf2, 
bool_wf, 
eqtt_to_assert, 
classfun-res-member-base, 
Message-eta, 
msg-authentic_wf, 
bool_cases, 
bool_subtype_base, 
basicMessage_wf, 
bfalse_wf, 
btrue_wf, 
btrue_neq_bfalse, 
eqff_to_assert, 
assert_of_bnot, 
make-Msg-equal, 
msg-header_wf, 
msg-body_wf2, 
msg-type_wf, 
es-info-body_wf, 
subtype_rel_weakening, 
ext-eq_weakening, 
msg-has-type-encodes, 
sq_stable__encodes-msg-type, 
l_all_fwd, 
name_eq_wf, 
assert-name_eq, 
bool_cases_sqequal, 
assert-bnot, 
equal-wf-T-base, 
equal_functionality_wrt_subtype_rel2, 
le_to_lt, 
imax_wf, 
imax_ub, 
es-pred_wf, 
less_than_transitivity2, 
le_weakening2
Latex:
\mforall{}MsgType:ValueAllType.  \mforall{}locs:bag(Id).  \mforall{}reply:Id  {}\mrightarrow{}  MsgType  {}\mrightarrow{}  (MsgType  \mtimes{}  Id).
\mforall{}f:CLK\_headers\_type\{i:l\}(MsgType).  \mforall{}es:EO+(Message(f)).  \mforall{}e1,e2:E.  \mforall{}clock1,clock2:\mBbbZ{}.
    ((\mforall{}e:E.  (\muparrow{}e  \mmember{}\msubb{}  CLK\_msg'base(MsgType;f)))
    {}\mRightarrow{}  e1  {}\mrightarrow{}  e2
    {}\mRightarrow{}  clock1  \mmember{}  CLK\_Clock(MsgType;f)(e1)
    {}\mRightarrow{}  clock2  \mmember{}  CLK\_Clock(MsgType;f)(e2)
    {}\mRightarrow{}  clock1  <  clock2)
Date html generated:
2015_07_23-PM-04_10_32
Last ObjectModification:
2015_02_04-PM-02_02_20
Home
Index