{ es:EO. p:E  (E + Top).
    (causal-predecessor(es;p)  (e,e':E.  Dec(same-thread(es;p;e;e')))) }

{ Proof }



Definitions occuring in Statement :  same-thread: same-thread(es;p;e;e') causal-predecessor: causal-predecessor(es;p) es-E: E event_ordering: EO decidable: Dec(P) top: Top all: x:A. B[x] implies: P  Q function: x:A  B[x] union: left + right
Definitions :  strongwellfounded: SWellFounded(R[x; y]) function: x:A  B[x] implies: P  Q all: x:A. B[x] equal: s = t member: t  T subtype_rel: A r B strong-subtype: strong-subtype(A;B) apply: f a p-graph: p-graph(A;f) record-select: r.x es-E: E infix_ap: x f y es-causl: (e < e') assert: b causal-predecessor: causal-predecessor(es;p) dep-isect: Error :dep-isect,  eq_atom: x =a y eq_atom: eq_atom$n(x;y) record+: record+ event_ordering: EO universe: Type prop: so_lambda: x y.t[x; y] final-iterate: final-iterate(f;x) decidable: Dec(P) es-locl: (e <loc e') es-le: e loc e'  es-causle: e c e' product: x:A  B[x] exists: x:A. B[x] existse-before: e<e'.P[e] existse-le: ee'.P[e] alle-lt: e<e'.P[e] alle-le: ee'.P[e] alle-between1: e[e1,e2).P[e] existse-between1: e[e1,e2).P[e] alle-between2: e[e1,e2].P[e] existse-between2: e[e1,e2].P[e] existse-between3: e(e1,e2].P[e] es-fset-loc: i  locs(s) es-E-interface: Error :es-E-interface,  collect-event: Error :collect-event,  cut-order: Error :cut-order,  path-goes-thru: Error :path-goes-thru,  es-r-immediate-pred: es-r-immediate-pred(es;R;e';e) same-thread: same-thread(es;p;e;e') top: Top union: left + right or: P  Q and: P  Q false: False not: A iff: P  Q less_than: a < b le: A  B divides: b | a assoced: a ~ b set_leq: a  b set_lt: a <p b grp_lt: a < b cand: A c B l_all: (xL.P[x]) l_exists: (xL. P[x]) l_member: (x  l) l_contains: A  B inject: Inj(A;B;f) reducible: reducible(a) prime: prime(a) squash: T l_disjoint: l_disjoint(T;l1;l2) fun-connected: y is f*(x) qle: r  s qless: r < s q-rel: q-rel(r;x) p-outcome: Outcome fset-member: a  s f-subset: xs  ys fset-closed: (s closed under fs) cs-not-completed: in state s, a has not completed inning i cs-archived: by state s, a archived v in inning i cs-passed: by state s, a passed inning i without archiving a value cs-inning-committed: in state s, inning i has committed v cs-inning-committable: in state s, inning i could commit v  cs-archive-blocked: in state s, ws' blocks ws from archiving v in inning i cs-precondition: state s may consider v in inning i Auto: Error :Auto,  CollapseTHEN: Error :CollapseTHEN,  Unfold: Error :Unfold,  tactic: Error :tactic
Lemmas :  same-thread_wf causal-predecessor_wf top_wf event_ordering_wf decidable_wf decidable__es-E-equal final-iterate_wf p-graph_wf es-E_wf strongwellfounded_wf causal-pred-wellfounded

\mforall{}es:EO.  \mforall{}p:E  {}\mrightarrow{}  (E  +  Top).    (causal-predecessor(es;p)  {}\mRightarrow{}  (\mforall{}e,e':E.    Dec(same-thread(es;p;e;e'))))


Date html generated: 2011_08_16-AM-11_17_10
Last ObjectModification: 2010_09_24-PM-08_44_03

Home Index