{ [Info:Type]. [eo:EO+(Info)]. [e1,e2:E].
    eo.e1.e2 = eo.e2 supposing e1 loc e2  }

{ Proof }



Definitions occuring in Statement :  eo-forward: eo.e,  event-ordering+: EO+(Info),  es-le: e loc e' ,  es-E: E,  uimplies: b supposing a,  uall: [x:A]. B[x],  universe: Type,  equal: s = t
Definitions :  subtype: S  T,  pair: <a, b>,  fpf: a:A fp-> B[a],  strong-subtype: strong-subtype(A;B),  assert: b,  eq_atom: x =a y,  eq_atom: eq_atom$n(x;y),  union: left + right,  or: P  Q,  set: {x:A| B[x]} ,  dep-isect: Error :dep-isect,  record+: record+,  le: A  B,  ge: i  j ,  not: A,  less_than: a < b,  product: x:A  B[x],  and: P  Q,  uiff: uiff(P;Q),  subtype_rel: A r B,  all: x:A. B[x],  axiom: Ax,  prop: ,  universe: Type,  uall: [x:A]. B[x],  es-E: E,  uimplies: b supposing a,  isect: x:A. B[x],  member: t  T,  es-le: e loc e' ,  event-ordering+: EO+(Info),  event_ordering: EO,  es-loc: loc(e),  eq_id: a = b,  bnot: b,  es-ble: e loc e',  bor: p q,  token: "$token",  record-select: r.x,  apply: f a,  band: p  q,  lambda: x.A[x],  eo-forward: eo.e,  bool: ,  es-base-E: es-base-E(es),  function: x:A  B[x],  equal: s = t,  Auto: Error :Auto,  CollapseTHEN: Error :CollapseTHEN,  tactic: Error :tactic,  record-update: r[x := v],  eo-restrict: eo-restrict(eo;P),  es-dom: es-dom(es),  Complete: Error :Complete,  Try: Error :Try,  void: Void,  top: Top,  sqequal: s ~ t,  false: False,  limited-type: LimitedType,  bfalse: ff,  btrue: tt,  decide: case b of inl(x) => s[x] | inr(y) => t[y],  ifthenelse: if b then t else f fi ,  eq_bool: p =b q,  lt_int: i <z j,  le_int: i z j,  eq_int: (i = j),  null: null(as),  set_blt: a < b,  grp_blt: a < b,  infix_ap: x f y,  dcdr-to-bool: [d],  bl-all: (xL.P[x])_b,  bl-exists: (xL.P[x])_b,  b-exists: (i<n.P[i])_b,  eq_type: eq_type(T;T'),  qeq: qeq(r;s),  q_less: q_less(r;s),  q_le: q_le(r;s),  deq-member: deq-member(eq;x;L),  deq-disjoint: deq-disjoint(eq;as;bs),  deq-all-disjoint: deq-all-disjoint(eq;ass;bs),  eq_str: Error :eq_str,  eq_lnk: a = b,  es-eq-E: e = e',  es-bless: e <loc e',  bimplies: p  q,  implies: P  Q,  unit: Unit,  int: ,  CollapseTHENA: Error :CollapseTHENA,  AssertBY: Error :AssertBY,  es-locl: (e <loc e'),  iff: P  Q,  Id: Id,  MaAuto: Error :MaAuto,  Subst': Error :Subst',  rev_implies: P  Q,  true: True,  guard: {T},  sq_type: SQType(T),  atom: Atom,  es-causl: (e < e'),  es-causle: e c e',  es-init: es-init(es;e),  es-pred: pred(e),  record: record(x.T[x]),  es-ble: Error :es-ble,  RepeatFor: Error :RepeatFor,  l_member: (x  l),  so_apply: x[s],  fpf-cap: f(x)?z,  list: type List,  b-union: A  B,  isect2: T1  T2,  fset: FSet{T},  tag-by: zT,  atom: Atom$n,  RepUR: Error :RepUR,  rec_select_update: rec_select_update{rec_select_update_compseq_tag_def:o}(y; v; x; r),  eo-reset-dom: eo-reset-dom(es;d)
Lemmas :  eo-reset-dom_wf_extended,  record-update-update,  uiff_inversion,  Error :es-ble_wf,  iff_imp_equal_bool,  assert_elim,  es-causle-le,  es-causl_wf,  assert-es-ble-base,  eo-forward-less,  assert-eq-id,  not_functionality_wrt_uiff,  btrue_wf,  eq_id_self,  es-le-loc,  es-ble-wf-base,  eo-forward-base-E,  es-locl_wf,  es-le_transitivity,  subtype_rel_self,  subtype_base_sq,  bool_subtype_base,  ifthenelse_wf,  true_wf,  false_wf,  eo-forward-ble,  member-eo-forward-E,  Id_wf,  iff_transitivity,  iff_weakening_uiff,  not_functionality_wrt_iff,  assert-es-ble,  eqtt_to_assert,  uiff_transitivity,  eqff_to_assert,  assert_of_bnot,  not_wf,  bfalse_wf,  assert_wf,  eo-forward-loc,  subtype_rel_wf,  es-base-E_wf,  member_wf,  es-loc_wf,  eq_id_wf,  bnot_wf,  es-ble_wf,  bor_wf,  es-dom_wf,  band_wf,  bool_wf,  eo-forward_wf,  es-le_wf,  es-E_wf,  event-ordering+_inc,  event-ordering+_wf

\mforall{}[Info:Type].  \mforall{}[eo:EO+(Info)].  \mforall{}[e1,e2:E].    eo.e1.e2  =  eo.e2  supposing  e1  \mleq{}loc  e2 


Date html generated: 2011_08_16-AM-11_25_30
Last ObjectModification: 2011_06_20-AM-00_26_23

Home Index