{ es:EO. e':E.
    [P:{e:E| loc(e) = loc(e')}   ]
      (e@loc(e').Dec(P[e])
       (e<e'.e is first@ loc(e') s.t.  e.P[e]  e<e'.P[e])) }

{ Proof }



Definitions occuring in Statement :  es-first-at: e is first@ i s.t.  e.P[e],  existse-before: e<e'.P[e],  alle-at: e@i.P[e],  es-loc: loc(e),  es-E: E,  event_ordering: EO,  Id: Id,  decidable: Dec(P),  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,  so_apply: x[s],  member: t  T,  so_lambda: x.t[x],  uimplies: b supposing a
Lemmas :  es-first-before,  alle-at_wf,  es-loc_wf,  decidable_wf,  es-E_wf,  Id_wf,  event_ordering_wf

\mforall{}es:EO.  \mforall{}e':E.
    \mforall{}[P:\{e:E|  loc(e)  =  loc(e')\}    {}\mrightarrow{}  \mBbbP{}]
        (\mforall{}e@loc(e').Dec(P[e])  {}\mRightarrow{}  (\mexists{}e<e'.e  is  first@  loc(e')  s.t.    e.P[e]  \mLeftarrow{}{}\mRightarrow{}  \mexists{}e<e'.P[e]))


Date html generated: 2011_08_16-AM-11_11_36
Last ObjectModification: 2011_06_20-AM-00_19_35

Home Index