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