{ [ses:SES]
    [es:EO+(Info)]
      (([e:E]. isMsg(e) ~ ff supposing e  Sign)
       ([e:E]. isMsg(e) ~ ff supposing e  Verify)
       ([e:E]. isMsg(e) ~ ff supposing e  Encrypt)
       ([e:E]. isMsg(e) ~ ff supposing e  Decrypt)
       ([e:E]. isMsg(e) ~ ff supposing e  New)
       ([e:E]. isMsg(e) ~ tt supposing e  Send)
       ([e:E]. isMsg(e) ~ tt supposing e  Rcv)) 
    supposing ActionsDisjoint }

{ Proof }



Definitions occuring in Statement :  ses-msg: isMsg(e) ses-disjoint: ActionsDisjoint ses-decrypt: Decrypt ses-encrypt: Encrypt ses-verify: Verify ses-sign: Sign ses-rcv: Rcv ses-send: Send ses-new: New ses-info: Info security-event-structure: SES in-eclass: e  X event-ordering+: EO+(Info) es-E: E assert: b bfalse: ff btrue: tt uimplies: b supposing a uall: [x:A]. B[x] and: P  Q sqequal: s ~ t
Definitions :  guard: {T} sq_type: SQType(T) fpf: a:A fp-B[a] strong-subtype: strong-subtype(A;B) le: A  B ge: i  j  less_than: a < b false: False limited-type: LimitedType natural_number: $n uiff: uiff(P;Q) iff: P  Q eq_bool: p =b q lt_int: i <z j le_int: i z j eq_int: (i = j) null: null(as) set_blt: a < b grp_blt: a < b infix_ap: x f y dcdr-to-bool: [d] bl-all: (xL.P[x])_b bl-exists: (xL.P[x])_b b-exists: (i<n.P[i])_b eq_type: eq_type(T;T') not: A qeq: qeq(r;s) q_less: q_less(r;s) q_le: q_le(r;s) deq-member: deq-member(eq;x;L) deq-disjoint: deq-disjoint(eq;as;bs) deq-all-disjoint: deq-all-disjoint(eq;ass;bs) eq_str: Error :eq_str,  eq_id: a = b eq_lnk: a = b es-eq-E: e = e' es-bless: e <loc e' es-ble: e loc e' bimplies: p  q band: p  q bor: p q bnot: b int: unit: Unit union: left + right bool: implies: P  Q cand: A c B rec: rec(x.A[x]) tree: Tree(E) btrue: tt ses-new: New ses-decrypt: Decrypt encryption-key: Key ses-encrypt: Encrypt ses-verify: Verify void: Void subtype: S  T universe: Type atom: Atom apply: f a es-base-E: es-base-E(es) token: "$token" lambda: x.A[x] es-E-interface: E(X) subtype_rel: A r B decide: case b of inl(x) =s[x] | inr(y) =t[y] ifthenelse: if b then t else f fi  so_lambda: x y.t[x; y] atom: Atom$n Id: Id sdata: SecurityData eclass: EClass(A[eo; e]) top: Top exists: x:A. B[x] function: x:A  B[x] all: x:A. B[x] dep-isect: Error :dep-isect,  eq_atom: x =a y eq_atom: eq_atom$n(x;y) record+: record+ set: {x:A| B[x]}  record-select: r.x bfalse: ff ses-msg: isMsg(e) ses-sign: Sign equal: s = t pair: <a, b> prop: member: t  T security-event-structure: SES ses-disjoint: ActionsDisjoint ses-info: Info and: P  Q product: x:A  B[x] assert: b es-E: E event-ordering+: EO+(Info) event_ordering: EO uall: [x:A]. B[x] so_lambda: x.t[x] uimplies: b supposing a isect: x:A. B[x] sqequal: s ~ t Try: Error :Try,  CollapseTHEN: Error :CollapseTHEN,  MaAuto: Error :MaAuto,  ses-rcv: Rcv in-eclass: e  X CollapseTHENA: Error :CollapseTHENA,  ses-send: Send Auto: Error :Auto,  ExRepD: Error :ExRepD,  Unfold: Error :Unfold,  RepeatFor: Error :RepeatFor,  D: Error :D,  tactic: Error :tactic
Lemmas :  event-ordering+_wf ses-info_wf es-interface-subtype_rel2 ses-sign_wf es-interface-top sdata_wf Id_wf member_wf eclass_wf in-eclass_wf assert_wf es-E_wf ses-disjoint_wf security-event-structure_wf uall_wf es-base-E_wf subtype_rel_self event-ordering+_inc top_wf subtype_rel_wf ses-verify_wf ses-encrypt_wf encryption-key_wf ses-decrypt_wf ses-new_wf ses-send_wf ses-rcv_wf bool_wf iff_weakening_uiff eqtt_to_assert not_wf uiff_transitivity eqff_to_assert assert_of_bnot bnot_wf btrue_wf subtype_base_sq bool_subtype_base bfalse_wf assert_elim

\mforall{}[ses:SES]
    \mforall{}[es:EO+(Info)]
        ((\mforall{}[e:E].  isMsg(e)  \msim{}  ff  supposing  \muparrow{}e  \mmember{}\msubb{}  Sign)
        \mwedge{}  (\mforall{}[e:E].  isMsg(e)  \msim{}  ff  supposing  \muparrow{}e  \mmember{}\msubb{}  Verify)
        \mwedge{}  (\mforall{}[e:E].  isMsg(e)  \msim{}  ff  supposing  \muparrow{}e  \mmember{}\msubb{}  Encrypt)
        \mwedge{}  (\mforall{}[e:E].  isMsg(e)  \msim{}  ff  supposing  \muparrow{}e  \mmember{}\msubb{}  Decrypt)
        \mwedge{}  (\mforall{}[e:E].  isMsg(e)  \msim{}  ff  supposing  \muparrow{}e  \mmember{}\msubb{}  New)
        \mwedge{}  (\mforall{}[e:E].  isMsg(e)  \msim{}  tt  supposing  \muparrow{}e  \mmember{}\msubb{}  Send)
        \mwedge{}  (\mforall{}[e:E].  isMsg(e)  \msim{}  tt  supposing  \muparrow{}e  \mmember{}\msubb{}  Rcv)) 
    supposing  ActionsDisjoint


Date html generated: 2011_08_17-PM-07_31_42
Last ObjectModification: 2011_06_18-PM-01_24_26

Home Index