{ es:EO
    [P:E  ]
      ((e:E. Dec(P[e]))
       (e:E
            ((m:E
               (m loc e 
                P[m]
                (e':E. ((m <loc e')  e' loc e   (P[e'])))))
             (e':E. (e' loc e   (P[e'])))))) }

{ Proof }



Definitions occuring in Statement :  es-le: e loc e'  es-locl: (e <loc e') es-E: E event_ordering: EO decidable: Dec(P) uall: [x:A]. B[x] prop: so_apply: x[s] all: x:A. B[x] exists: x:A. B[x] not: A implies: P  Q or: P  Q and: P  Q function: x:A  B[x]
Definitions :  cand: A c B lambda: x.A[x] dep-isect: Error :dep-isect,  eq_atom: x =a y eq_atom: eq_atom$n(x;y) record+: record+ infix_ap: x f y record-select: r.x equal: s = t es-causl: (e < e') guard: {T} member: t  T wellfounded: WellFnd{i}(A;x,y.R[x; y]) isect: x:A. B[x] event_ordering: EO universe: Type prop: decidable: Dec(P) uall: [x:A]. B[x] so_lambda: x.t[x] or: P  Q union: left + right exists: x:A. B[x] and: P  Q product: x:A  B[x] es-locl: (e <loc e') implies: P  Q not: A so_apply: x[s] apply: f a es-le: e loc e'  es-E: E all: x:A. B[x] function: x:A  B[x] assert: b strong-subtype: strong-subtype(A;B) le: A  B ge: i  j  less_than: a < b uimplies: b supposing a uiff: uiff(P;Q) subtype_rel: A r B false: False void: Void decide: case b of inl(x) =s[x] | inr(y) =t[y] ifthenelse: if b then t else f fi  divides: b | a assoced: a ~ b set_leq: a  b set_lt: a <p b grp_lt: a < b l_member: (x  l) l_contains: A  B inject: Inj(A;B;f) reducible: reducible(a) prime: prime(a) squash: T l_exists: (xL. P[x]) l_all: (xL.P[x]) fun-connected: y is f*(x) qle: r  s qless: r < s q-rel: q-rel(r;x) i-finite: i-finite(I) i-closed: i-closed(I) p-outcome: Outcome fset-member: a  s f-subset: xs  ys fset-closed: (s closed under fs) l_disjoint: l_disjoint(T;l1;l2) cs-not-completed: in state s, a has not completed inning i cs-archived: by state s, a archived v in inning i cs-passed: by state s, a passed inning i without archiving a value cs-inning-committed: in state s, inning i has committed v cs-inning-committable: in state s, inning i could commit v  cs-archive-blocked: in state s, ws' blocks ws from archiving v in inning i cs-precondition: state s may consider v in inning i es-causle: e c e' es-first: first(e) bool: btrue: tt set: {x:A| B[x]}  record: record(x.T[x]) es-pred: pred(e) pair: <a, b> Id: Id rev_implies: P  Q iff: P  Q true: True Auto: Error :Auto,  D: Error :D,  CollapseTHEN: Error :CollapseTHEN,  tactic: Error :tactic
Lemmas :  es-le-iff es-causle-le es-le-pred es-pred-locl es-locl_transitivity1 es-le_weakening es-pred_wf es-pred-causl ifthenelse_wf bool_wf assert_elim es-le-first decidable__assert es-first_wf es-locl_transitivity2 es-locl_irreflexivity false_wf es-le_wf es-E_wf es-locl_wf not_wf es-causl-wellfnd decidable_wf uall_wf event_ordering_wf es-causl_wf

\mforall{}es:EO
    \mforall{}[P:E  {}\mrightarrow{}  \mBbbP{}]
        ((\mforall{}e:E.  Dec(P[e]))
        {}\mRightarrow{}  (\mforall{}e:E
                    ((\mexists{}m:E.  (m  \mleq{}loc  e    \mwedge{}  P[m]  \mwedge{}  (\mforall{}e':E.  ((m  <loc  e')  {}\mRightarrow{}  e'  \mleq{}loc  e    {}\mRightarrow{}  (\mneg{}P[e'])))))
                    \mvee{}  (\mforall{}e':E.  (e'  \mleq{}loc  e    {}\mRightarrow{}  (\mneg{}P[e']))))))


Date html generated: 2011_08_16-AM-10_36_26
Last ObjectModification: 2011_06_18-AM-09_15_55

Home Index