{ 
es:EO
    
[P:E 
 
]. 
[R:E 
 E 
 
].
      (single-thread-generator{i:l}(es;P;R)
      
 (
e,e':E.  ((R e e') 
 (P[e] 
 P[e'])))
      
 (connex({e:E| P[e]} R^*)
         c
 (R
|P <
>{E} x,y:E. (x < y)|P)
         c
 (R <
>{E} R
!)
         c
 (
x,y,x',y':E.  ((R
 x y) 
 (R y' y) 
 ((R^*) x y')))
         c
 (
x,y,x',y':E.
               ((R
 x y) 
 (R x' x) 
 (R y' y) 
 (R
 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, 
and: 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, 
and: P 
 Q, 
so_apply: x[s], 
member: t 
 T, 
cand: A c
 B, 
binrel_eqv: E <
>{T} E', 
rel-restriction: R|P, 
iff: P 

 Q, 
rev_implies: P 
 Q, 
subtype: S 
 T, 
suptype: suptype(S; T), 
so_lambda: 
x y.t[x; y], 
so_lambda: 
x.t[x], 
so_apply: x[s1;s2], 
uimplies: b supposing a, 
guard: {T}, 
binrel_ap: a [r] b
Lemmas : 
generated-thread-binrel-properties, 
es-E_wf, 
single-thread-generator_wf, 
event_ordering_wf, 
xxconnex_wf, 
rel_star_wf, 
binrel_eqv_wf, 
rel-restriction_wf, 
rel_plus_wf, 
ab_binrel_wf, 
es-causl_wf, 
rel-immediate_wf, 
binrel_ap_wf, 
cand_functionality_wrt_iff, 
binrel_eqv_functionality_wrt_breqv, 
rel_plus_functionality_wrt_breqv, 
binrel_eqv_weakening, 
rel-immediate_functionality_wrt_breqv, 
all_functionality_wrt_iff, 
implies_functionality_wrt_iff, 
binrel_ap_functionality_wrt_breqv, 
rel_star_functionality_wrt_breqv
\mforall{}es:EO
    \mforall{}[P:E  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[R:E  {}\mrightarrow{}  E  {}\mrightarrow{}  \mBbbP{}].
        (single-thread-generator\{i:l\}(es;P;R)
        {}\mRightarrow{}  (\mforall{}e,e':E.    ((R  e  e')  {}\mRightarrow{}  (P[e]  \mwedge{}  P[e'])))
        {}\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  <\mequiv{}>\{E\}  R\msupplus{}!)
              c\mwedge{}  (\mforall{}x,y,x',y':E.    ((R\msupplus{}  x  y)  {}\mRightarrow{}  (R  y'  y)  {}\mRightarrow{}  (rel\_star(E;  R)  x  y')))
              c\mwedge{}  (\mforall{}x,y,x',y':E.    ((R\msupplus{}  x  y)  {}\mRightarrow{}  (R  x'  x)  {}\mRightarrow{}  (R  y'  y)  {}\mRightarrow{}  (R\msupplus{}  x'  y')))))
Date html generated:
2011_08_16-AM-11_18_49
Last ObjectModification:
2011_06_20-AM-00_23_49
Home
Index