{ [k:Knd]. [l:IdLnk]. [dt:x:Id fp-Type].
    lnk-decl(l;dt)(k) ~ dt(tag(k)) supposing k  dom(lnk-decl(l;dt)) }

{ Proof }



Definitions occuring in Statement :  lnk-decl: lnk-decl(l;dt) fpf-ap: f(x) fpf-dom: x  dom(f) fpf: a:A fp-B[a] Kind-deq: KindDeq id-deq: IdDeq tagof: tag(k) Knd: Knd IdLnk: IdLnk Id: Id assert: b uimplies: b supposing a uall: [x:A]. B[x] universe: Type sqequal: s ~ t
Definitions :  tagof: tag(k) pi2: snd(t) outl: outl(x) member: t  T so_lambda: x.t[x] IdLnk: IdLnk Id: Id all: x:A. B[x] fpf-cap: f(x)?z prop: ifthenelse: if b then t else f fi  implies: P  Q btrue: tt bfalse: ff Knd: Knd uall: [x:A]. B[x] so_apply: x[s] uimplies: b supposing a sq_type: SQType(T) guard: {T} not: A false: False bool: unit: Unit iff: P  Q and: P  Q assert: b rcv: rcv(l,tg) locl: locl(a) it:
Lemmas :  assert_wf fpf-dom_wf Knd_wf Kind-deq_wf lnk-decl_wf fpf-trivial-subtype-top fpf_wf top_wf Id_wf IdLnk_wf lnk-decl-dom2 subtype_base_sq product_subtype_base atom2_subtype_base lnk-decl-dom lnk-decl-cap rcv_wf bool_wf not_wf bnot_wf id-deq_wf iff_weakening_uiff eqtt_to_assert uiff_transitivity eqff_to_assert assert_of_bnot lnk-decl-dom-not

\mforall{}[k:Knd].  \mforall{}[l:IdLnk].  \mforall{}[dt:x:Id  fp->  Type].
    lnk-decl(l;dt)(k)  \msim{}  dt(tag(k))  supposing  \muparrow{}k  \mmember{}  dom(lnk-decl(l;dt))


Date html generated: 2011_08_10-AM-08_10_45
Last ObjectModification: 2011_06_18-AM-08_26_34

Home Index