{ es:EO. e1:E. e2:{e:E| loc(e) = loc(e1)} .
    [Q:{e:E| loc(e) = loc(e1)}   ]
      ([e1,e2]~([a,b].e[a,b].Q[e])+  e1 loc e2   e[e1,e2].Q[e]) }

{ Proof }



Definitions occuring in Statement :  es-pplus: [e1,e2]~([a,b].p[a; b])+ alle-between2: e[e1,e2].P[e] es-le: e loc e'  es-loc: loc(e) es-E: E event_ordering: EO Id: Id uall: [x:A]. B[x] prop: so_apply: x[s] all: x:A. B[x] iff: P  Q and: P  Q set: {x:A| B[x]}  function: x:A  B[x] equal: s = t
Definitions :  all: x:A. B[x] uall: [x:A]. B[x] prop: iff: P  Q alle-between2: e[e1,e2].P[e] so_apply: x[s] and: P  Q implies: P  Q rev_implies: P  Q cand: A c B member: t  T so_lambda: x y.t[x; y] so_lambda: x.t[x] int_seg: {i..j} not: A assert: b bfalse: ff ifthenelse: if b then t else f fi  false: False lelt: i  j < k le: A  B append: as @ bs concat: concat(ll) map: map(f;as) upto: upto(n) from-upto: [n, m) ycomb: Y lt_int: i <z j reduce: reduce(f;k;as) squash: T true: True subtype: S  T suptype: suptype(S; T) nat: ge: i  j  nat_plus: top: Top so_apply: x[s1;s2] uimplies: b supposing a es-pplus: [e1,e2]~([a,b].p[a; b])+ es-pstar-q: [e1;e2]~([a,b].p[a; b])*[a,b].q[a; b] exists: x:A. B[x] sq_type: SQType(T) guard: {T} decidable: Dec(P) or: P  Q
Lemmas :  es-pplus-le Id_wf es-loc_wf alle-between2_wf es-E_wf es-pplus_wf es-pplus-trivial es-le_wf event_ordering_wf es-le-loc subtype_base_sq bool_wf bool_subtype_base false_wf int_seg_wf es-locl-first le_wf nat_plus_properties decidable__equal_int int_subtype_base es-interval_wf squash_wf true_wf es-increasing-sequence es-interval-partition es-locl_wf append_wf nat_wf nat_properties ge_wf upto_decomp1 map_append_sq upto_wf top_wf concat_append map_wf es-interval_wf2 es-pred_wf concat-cons concat-nil append-nil es-first_wf assert_wf not_wf es-le-pred member-es-interval l_member_wf member_append concat_wf member-concat member_map

\mforall{}es:EO.  \mforall{}e1:E.  \mforall{}e2:\{e:E|  loc(e)  =  loc(e1)\}  .
    \mforall{}[Q:\{e:E|  loc(e)  =  loc(e1)\}    {}\mrightarrow{}  \mBbbP{}]
        ([e1,e2]\msim{}([a,b].\mforall{}e\mmember{}[a,b].Q[e])+  \mLeftarrow{}{}\mRightarrow{}  e1  \mleq{}loc  e2    \mwedge{}  \mforall{}e\mmember{}[e1,e2].Q[e])


Date html generated: 2011_08_16-AM-10_58_18
Last ObjectModification: 2011_06_18-AM-09_31_13

Home Index