{ es:EO
    [P:E  ]. [R:E  E  ].
      (single-thread-generator{i:l}(es;P;R)
       (connex({e:E| P[e]} ;R^*)
         c (R|P <>{E} x,y:E. (x < y)|P)
         c (R|P <>{E} R|P)
         c (R|P <>{E} R|P!)
         c (x,y,x',y':E.  ((R|P x y)  (R|P y' y)  ((R|P^*) x y')))
         c (x,y,x',y':E.
               ((R|P x y)  (R|P x' x)  (R|P y' y)  (R|P x' y'))))) }

{ Proof }



Definitions occuring in Statement :  single-thread-generator: single-thread-generator{i:l}(es;P;R) es-causl: (e < e') es-E: E event_ordering: EO uall: [x:A]. B[x] cand: A c B prop: so_apply: x[s] all: x:A. B[x] implies: P  Q set: {x:A| B[x]}  apply: f a function: x:A  B[x] rel_star: R^* xxconnex: connex(T;R) ab_binrel: x,y:T. E[x; y] binrel_eqv: E <>{T} E' rel-immediate: R! rel_plus: R rel-restriction: R|P
Definitions :  all: x:A. B[x] uall: [x:A]. B[x] prop: implies: P  Q cand: A c B member: t  T so_apply: x[s] xxconnex: connex(T;R) connex: Connex(T;x,y.R[x; y]) squash: T true: True or: P  Q infix_ap: x f y and: P  Q iff: P  Q rev_implies: P  Q binrel_eqv: E <>{T} E' rel-restriction: R|P ab_binrel: x,y:T. E[x; y] single-thread-generator: single-thread-generator{i:l}(es;P;R) sq_stable: SqStable(P)
Lemmas :  generated-thread-properties single-thread-generator_wf es-E_wf event_ordering_wf sq_stable_from_decidable rel_star_wf rel_plus_wf or_functionality_wrt_iff rel-star-iff-rel-plus-or es-causl_wf rel-restriction_wf

\mforall{}es:EO
    \mforall{}[P:E  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[R:E  {}\mrightarrow{}  E  {}\mrightarrow{}  \mBbbP{}].
        (single-thread-generator\{i:l\}(es;P;R)
        {}\mRightarrow{}  (connex(\{e:E|  P[e]\}  ;rel\_star(E;  R))
              c\mwedge{}  (R\msupplus{}|P  <\mequiv{}>\{E\}  x,y:E.  (x  <  y)|P)
              c\mwedge{}  (R|P\msupplus{}  <\mequiv{}>\{E\}  R\msupplus{}|P)
              c\mwedge{}  (R|P  <\mequiv{}>\{E\}  R|P\msupplus{}!)
              c\mwedge{}  (\mforall{}x,y,x',y':E.    ((R|P\msupplus{}  x  y)  {}\mRightarrow{}  (R|P  y'  y)  {}\mRightarrow{}  (rel\_star(E;  R|P)  x  y')))
              c\mwedge{}  (\mforall{}x,y,x',y':E.    ((R|P\msupplus{}  x  y)  {}\mRightarrow{}  (R|P  x'  x)  {}\mRightarrow{}  (R|P  y'  y)  {}\mRightarrow{}  (R|P\msupplus{}  x'  y')))))


Date html generated: 2011_08_16-AM-11_18_42
Last ObjectModification: 2011_06_20-AM-00_23_40

Home Index