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: supposing a uall: [x:A]. B[x] cand: c∧ B prop: so_apply: x[s] all: x:A. B[x] exists: x:A. B[x] iff: ⇐⇒ Q not: ¬A implies:  Q and: P ∧ Q set: {x:A| B[x]}  function: x:A ⟶ B[x] equal: t ∈ T
Definitions unfolded in proof :  all: x:A. B[x] uall: [x:A]. B[x] implies:  Q iff: ⇐⇒ Q and: P ∧ Q cand: 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 ⊆B rev_implies:  Q uimplies: 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