{ es:EO. e:E.
    {(loc(pred(e)) = loc(e))
     (pred(e) < e)
     (e':E
         (e' < e)  ((e' = pred(e))  (e' < pred(e))) 
         supposing loc(e') = loc(e))} 
    supposing first(e) }

{ Proof }



Definitions occuring in Statement :  es-pred: pred(e),  es-first: first(e),  es-causl: (e < e'),  es-loc: loc(e),  es-E: E,  event_ordering: EO,  Id: Id,  assert: b,  uimplies: b supposing a,  guard: {T},  all: x:A. B[x],  not: A,  implies: P  Q,  or: P  Q,  and: P  Q,  equal: s = t
Definitions :  all: x:A. B[x],  uimplies: b supposing a,  not: A,  assert: b,  es-first: first(e),  guard: {T},  and: P  Q,  es-pred: pred(e),  implies: P  Q,  or: P  Q,  member: t  T,  bnot: b,  isl: isl(x),  outl: outl(x),  btrue: tt,  bfalse: ff,  ifthenelse: if b then t else f fi ,  true: True,  false: False,  prop: ,  uall: [x:A]. B[x]
Lemmas :  es-pred?_property,  es-pred?_wf,  unit_wf,  false_wf,  es-causl_wf,  Id_wf,  es-loc_wf,  not_wf,  true_wf,  es-E_wf,  event_ordering_wf

\mforall{}es:EO.  \mforall{}e:E.
    \{(loc(pred(e))  =  loc(e))
    \mwedge{}  (pred(e)  <  e)
    \mwedge{}  (\mforall{}e':E.  (e'  <  e)  {}\mRightarrow{}  ((e'  =  pred(e))  \mvee{}  (e'  <  pred(e)))  supposing  loc(e')  =  loc(e))\} 
    supposing  \mneg{}\muparrow{}first(e)


Date html generated: 2011_08_16-AM-10_25_28
Last ObjectModification: 2011_06_18-AM-09_09_46

Home Index