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