{ [Info:Type]
    es:EO+(Info). e:E. P:{e':E| (e' <loc e)}   .
      (first(e))
       ((((P pred(e)))  (do-apply(last(P);e) ~ pred(e)))
         (((P pred(e)))
           (can-apply(last(P);pred(e)))
           (do-apply(last(P);e) ~ do-apply(last(P);pred(e))))) 
      supposing can-apply(last(P);e) }

{ Proof }



Definitions occuring in Statement :  es-local-pred: last(P) event-ordering+: EO+(Info) es-locl: (e <loc e') es-pred: pred(e) es-first: first(e) es-E: E assert: b bool: uimplies: b supposing a uall: [x:A]. B[x] all: x:A. B[x] not: A or: P  Q and: P  Q set: {x:A| B[x]}  apply: f a function: x:A  B[x] universe: Type sqequal: s ~ t do-apply: do-apply(f;x) can-apply: can-apply(f;x)
Definitions :  uall: [x:A]. B[x] all: x:A. B[x] uimplies: b supposing a assert: b can-apply: can-apply(f;x) es-local-pred: last(P) and: P  Q not: A do-apply: do-apply(f;x) isl: isl(x) outl: outl(x) ifthenelse: if b then t else f fi  ycomb: Y member: t  T implies: P  Q btrue: tt prop: false: False bfalse: ff true: True or: P  Q cand: A c B sq_exists: x:{A| B[x]} subtype: S  T suptype: suptype(S; T) sq_type: SQType(T) top: Top so_lambda: x.t[x] guard: {T} bool: unit: Unit iff: P  Q so_apply: x[s] it:
Lemmas :  es-first_wf bool_wf iff_weakening_uiff assert_wf eqtt_to_assert false_wf not_wf uiff_transitivity bnot_wf eqff_to_assert assert_of_bnot es-locl_wf es-E_wf event-ordering+_inc event-ordering+_wf es-pred_wf es-pred-locl true_wf isl_wf es-local-pred_wf es-local-pred_wf2 subtype_rel_function subtype_rel_sets subtype_rel_self es-locl_transitivity2 es-le_weakening subtype_rel_sum top_wf

\mforall{}[Info:Type]
    \mforall{}es:EO+(Info).  \mforall{}e:E.  \mforall{}P:\{e':E|  (e'  <loc  e)\}    {}\mrightarrow{}  \mBbbB{}.
        (\mneg{}\muparrow{}first(e))
        \mwedge{}  (((\muparrow{}(P  pred(e)))  \mwedge{}  (do-apply(last(P);e)  \msim{}  pred(e)))
            \mvee{}  ((\mneg{}\muparrow{}(P  pred(e)))
                \mwedge{}  (\muparrow{}can-apply(last(P);pred(e)))
                \mwedge{}  (do-apply(last(P);e)  \msim{}  do-apply(last(P);pred(e))))) 
        supposing  \muparrow{}can-apply(last(P);e)


Date html generated: 2011_08_16-PM-04_42_31
Last ObjectModification: 2011_06_20-AM-01_02_30

Home Index