{ [es:EO]. [P:E  ]. [R:E  E  ].
    ([a,b,e:E].
       (a = b) supposing 
          (((P[e]  P[a])  P[b]) and 
          ((R a e)  (R b e)))) supposing 
       ((e,e':E.  ((R e e')  (P[e]  P[e']))) and 
       single-thread-generator{i:l}(es;P;R)) }

{ Proof }



Definitions occuring in Statement :  single-thread-generator: single-thread-generator{i:l}(es;P;R) es-E: E event_ordering: EO uimplies: b supposing a uall: [x:A]. B[x] prop: so_apply: x[s] all: x:A. B[x] implies: P  Q and: P  Q apply: f a function: x:A  B[x] equal: s = t
Definitions :  uall: [x:A]. B[x] prop: uimplies: b supposing a all: x:A. B[x] implies: P  Q and: P  Q so_apply: x[s] member: t  T infix_ap: x f y cand: A c B or: P  Q iff: P  Q rev_implies: P  Q rel-immediate: R! not: A false: False
Lemmas :  es-E_wf single-thread-generator_wf event_ordering_wf generated-thread-properties2 rel-rel-plus

\mforall{}[es:EO].  \mforall{}[P:E  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[R:E  {}\mrightarrow{}  E  {}\mrightarrow{}  \mBbbP{}].
    (\mforall{}[a,b,e:E].    (a  =  b)  supposing  (((P[e]  \mwedge{}  P[a])  \mwedge{}  P[b])  and  ((R  a  e)  \mwedge{}  (R  b  e))))  supposing 
          ((\mforall{}e,e':E.    ((R  e  e')  {}\mRightarrow{}  (P[e]  \mwedge{}  P[e'])))  and 
          single-thread-generator\{i:l\}(es;P;R))


Date html generated: 2011_08_16-AM-11_19_10
Last ObjectModification: 2011_06_20-AM-00_24_31

Home Index