Nuprl Lemma : ses-flow-has*

∀s:SES. ∀es:EO+(Info). ∀e1,e2:E. ∀a:Atom1.
  (ses-flow(s;es;a;e1;e2) ⇒ ((e1 ≤loc e2  ∧ (e2 has a)) ∨ (∃snd:E(Send). (e1 ≤loc snd  ∧ (snd < e2) ∧ snd has* a))))


Proof




Definitions occuring in Statement :  event-has*: e has* a,  ses-flow: ses-flow(s;es;a;e1;e2),  event-has: (e has a),  ses-send: Send,  ses-info: Info,  security-event-structure: SES,  es-E-interface: E(X),  event-ordering+: EO+(Info),  es-le: e ≤loc e' ,  es-causl: (e < e'),  es-E: E,  atom: Atom$n,  all: ∀x:A. B[x],  exists: ∃x:A. B[x],  implies: P ⇒ Q,  or: P ∨ Q,  and: P ∧ Q
Definitions unfolded in proof :  all: ∀x:A. B[x],  member: t ∈ T,  uall: ∀[x:A]. B[x],  so_lambda: so_lambda(x,y,z.t[x; y; z]),  prop: ℙ,  and: P ∧ Q,  subtype_rel: A ⊆r B,  so_lambda: λ2x y.t[x; y],  so_apply: x[s1;s2],  uimplies: b supposing a,  top: Top,  so_lambda: λ2x.t[x],  es-E-interface: E(X),  so_apply: x[s],  so_apply: x[s1;s2;s3],  implies: P ⇒ Q,  or: P ∨ Q,  cand: A c∧ B,  sq_type: SQType(T),  guard: {T},  assert: ↑b,  ifthenelse: if b then t else f fi ,  btrue: tt,  true: True,  exists: ∃x:A. B[x],  event-has*: e has* a,  infix_ap: x f y,  es-locl: (e <loc e'),  iff: P ⇐⇒ Q,  rev_implies: P ⇐ Q

Latex:
\mforall{}s:SES.  \mforall{}es:EO+(Info).  \mforall{}e1,e2:E.  \mforall{}a:Atom1.
    (ses-flow(s;es;a;e1;e2)
    {}\mRightarrow{}  ((e1  \mleq{}loc  e2    \mwedge{}  (e2  has  a))  \mvee{}  (\mexists{}snd:E(Send).  (e1  \mleq{}loc  snd    \mwedge{}  (snd  <  e2)  \mwedge{}  snd  has*  a))))



Date html generated: 2016_05_17-AM-11_48_30
Last ObjectModification: 2016_01_18-AM-07_47_10

Theory : event-logic-applications


Home Index