{ 
es:EO. 
i:Id.
    
[P,Q:{e:E| loc(e) = i}  
 
].
      ((
e:{e:E| loc(e) = i} . Dec(Q[e]))
      
 (
e:{e:E| loc(e) = i} 
            (P[e] 
 
e':E. ((e' <loc e) 
 P[e']) supposing 
Q[e]))
      
 (
e:E. {e is first@ i s.t.  e.P[e] 
 Q[e]})) }
{ Proof }
Definitions occuring in Statement : 
es-first-at: e is first@ i s.t.  e.P[e], 
es-locl: (e <loc e'), 
es-loc: loc(e), 
es-E: E, 
event_ordering: EO, 
Id: Id, 
decidable: Dec(P), 
uimplies: b supposing a, 
uall:
[x:A]. B[x], 
prop:
, 
guard: {T}, 
so_apply: x[s], 
all:
x:A. B[x], 
exists:
x:A. B[x], 
not:
A, 
implies: 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:
, 
implies: P 
 Q, 
so_apply: x[s], 
uimplies: b supposing a, 
exists:
x:A. B[x], 
and: P 
 Q, 
guard: {T}, 
member: t 
 T, 
so_lambda: 
x.t[x], 
cand: A c
 B, 
decidable: Dec(P), 
not:
A, 
es-locl: (e <loc e'), 
es-first-at: e is first@ i s.t.  e.P[e], 
or: P 
 Q, 
alle-lt:
e<e'.P[e], 
false: False
Lemmas : 
Id_wf, 
es-loc_wf, 
es-first-at_wf, 
es-E_wf, 
not_wf, 
es-locl_wf, 
decidable_wf, 
event_ordering_wf
\mforall{}es:EO.  \mforall{}i:Id.
    \mforall{}[P,Q:\{e:E|  loc(e)  =  i\}    {}\mrightarrow{}  \mBbbP{}].
        ((\mforall{}e:\{e:E|  loc(e)  =  i\}  .  Dec(Q[e]))
        {}\mRightarrow{}  (\mforall{}e:\{e:E|  loc(e)  =  i\}  .  (P[e]  {}\mRightarrow{}  \mexists{}e':E.  ((e'  <loc  e)  \mwedge{}  P[e'])  supposing  \mneg{}Q[e]))
        {}\mRightarrow{}  (\mforall{}e:E.  \{e  is  first@  i  s.t.    e.P[e]  {}\mRightarrow{}  Q[e]\}))
Date html generated:
2011_08_16-AM-10_50_49
Last ObjectModification:
2011_06_18-AM-09_25_57
Home
Index