{ es:EO. e1:E. e2:{e:E| loc(e) = loc(e1)} .
    [p,p':{e:E| loc(e) = loc(e1)}   ].
      ((e:{e:E| loc(e) = loc(e1)} . (p[e]  p'[e]))
       (e2 = first e  e1.p[e]  e2 = first e  e1.p'[e])) }

{ Proof }



Definitions occuring in Statement :  es-first-since: e2 = first e  e1.P[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 implies: 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: implies: P  Q iff: P  Q so_apply: x[s] es-first-since: e2 = first e  e1.P[e] and: P  Q rev_implies: P  Q alle-between1: e[e1,e2).P[e] not: A member: t  T so_lambda: x.t[x] false: False uimplies: b supposing a
Lemmas :  es-loc_wf es-locl_wf es-le_wf es-first-since_wf es-E_wf Id_wf iff_wf event_ordering_wf es-le-loc

\mforall{}es:EO.  \mforall{}e1:E.  \mforall{}e2:\{e:E|  loc(e)  =  loc(e1)\}  .
    \mforall{}[p,p':\{e:E|  loc(e)  =  loc(e1)\}    {}\mrightarrow{}  \mBbbP{}].
        ((\mforall{}e:\{e:E|  loc(e)  =  loc(e1)\}  .  (p[e]  \mLeftarrow{}{}\mRightarrow{}  p'[e]))
        {}\mRightarrow{}  (e2  =  first  e  \mgeq{}  e1.p[e]  \mLeftarrow{}{}\mRightarrow{}  e2  =  first  e  \mgeq{}  e1.p'[e]))


Date html generated: 2011_08_16-AM-10_56_23
Last ObjectModification: 2011_06_18-AM-09_29_37

Home Index