{ [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