Nuprl Lemma : es-first-at-since-iff
∀es:EO. ∀i:Id. ∀e:E.
  ∀[P,R:{e:E| loc(e) = i ∈ Id}  ⟶ ℙ].
    ((∀e:E. Dec(R[e]) supposing loc(e) = i ∈ Id)
    ⇒ (es-first-at-since(es;i;e;e.R[e];e.P[e])
       ⇐⇒ (loc(e) = i ∈ Id)
           c∧ ((P[e] ∧ (¬R[e]))
              ∧ ((∃e'':E. ((e'' <loc e) c∧ P[e'']))
                ⇒ (∃e':E
                     ((e' <loc e)
                     c∧ (R[e'] ∧ (∀e'':E. ((e' <loc e'') ⇒ (e'' <loc e) ⇒ ((¬P[e'']) ∧ (¬R[e''])))))))))))
Proof
Definitions occuring in Statement : 
es-first-at-since: es-first-at-since(es;i;e;e.R[e];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], 
cand: A c∧ B, 
prop: ℙ, 
so_apply: x[s], 
all: ∀x:A. B[x], 
exists: ∃x:A. B[x], 
iff: P ⇐⇒ Q, 
not: ¬A, 
implies: P ⇒ Q, 
and: P ∧ Q, 
set: {x:A| B[x]} , 
function: x:A ⟶ B[x], 
equal: s = t ∈ T
Definitions unfolded in proof : 
all: ∀x:A. B[x], 
uall: ∀[x:A]. B[x], 
implies: P ⇒ Q, 
iff: P ⇐⇒ Q, 
and: P ∧ Q, 
cand: A c∧ B, 
es-first-at-since: es-first-at-since(es;i;e;e.R[e];e.P[e]), 
not: ¬A, 
false: False, 
member: t ∈ T, 
prop: ℙ, 
so_apply: x[s], 
exists: ∃x:A. B[x], 
so_lambda: λ2x.t[x], 
es-locl: (e <loc e'), 
subtype_rel: A ⊆r B, 
rev_implies: P ⇐ Q, 
uimplies: b supposing a, 
alle-lt: ∀e<e'.P[e], 
guard: {T}, 
es-le: e ≤loc e' , 
or: P ∨ Q, 
squash: ↓T
Latex:
\mforall{}es:EO.  \mforall{}i:Id.  \mforall{}e:E.
    \mforall{}[P,R:\{e:E|  loc(e)  =  i\}    {}\mrightarrow{}  \mBbbP{}].
        ((\mforall{}e:E.  Dec(R[e])  supposing  loc(e)  =  i)
        {}\mRightarrow{}  (es-first-at-since(es;i;e;e.R[e];e.P[e])
              \mLeftarrow{}{}\mRightarrow{}  (loc(e)  =  i)
                      c\mwedge{}  ((P[e]  \mwedge{}  (\mneg{}R[e]))
                            \mwedge{}  ((\mexists{}e'':E.  ((e''  <loc  e)  c\mwedge{}  P[e'']))
                                {}\mRightarrow{}  (\mexists{}e':E
                                          ((e'  <loc  e)
                                          c\mwedge{}  (R[e']
                                                \mwedge{}  (\mforall{}e'':E
                                                          ((e'  <loc  e'')  {}\mRightarrow{}  (e''  <loc  e)  {}\mRightarrow{}  ((\mneg{}P[e''])  \mwedge{}  (\mneg{}R[e''])))))))))))
Date html generated:
2016_05_16-AM-10_25_02
Last ObjectModification:
2016_01_17-PM-01_27_28
Theory : new!event-ordering
Home
Index