Nuprl Lemma : lnk-decl-compatible-single

∀[l:IdLnk]. ∀[dt:tg:Id fp-> Type]. ∀[knd:Knd]. ∀[T:Type].
  lnk-decl(l;dt) || knd : T 
  supposing (↑isrcv(knd)) ⇒ (↑lnk(knd) = l) ⇒ (↑tag(knd) ∈ dom(dt)) ⇒ (T = dt(tag(knd)) ∈ Type)


Proof




Definitions occuring in Statement :  lnk-decl: lnk-decl(l;dt),  fpf-single: x : v,  fpf-compatible: f || g,  fpf-ap: f(x),  fpf-dom: x ∈ dom(f),  fpf: a:A fp-> B[a],  Kind-deq: KindDeq,  eq_lnk: a = b,  tagof: tag(k),  lnk: lnk(k),  isrcv: isrcv(k),  Knd: Knd,  IdLnk: IdLnk,  id-deq: IdDeq,  Id: Id,  assert: ↑b,  uimplies: b supposing a,  uall: ∀[x:A]. B[x],  implies: P ⇒ Q,  universe: Type,  equal: s = t ∈ T
Lemmas :  assert-deq-member,  Knd_wf,  Kind-deq_wf,  map_wf,  Id_wf,  rcv_wf,  member_map,  subtype_base_sq,  union_subtype_base,  IdLnk_wf,  product_subtype_base,  atom2_subtype_base,  assert-eq-lnk,  id-deq_wf
\mforall{}[l:IdLnk].  \mforall{}[dt:tg:Id  fp->  Type].  \mforall{}[knd:Knd].  \mforall{}[T:Type].
    lnk-decl(l;dt)  ||  knd  :  T 
    supposing  (\muparrow{}isrcv(knd))  {}\mRightarrow{}  (\muparrow{}lnk(knd)  =  l)  {}\mRightarrow{}  (\muparrow{}tag(knd)  \mmember{}  dom(dt))  {}\mRightarrow{}  (T  =  dt(tag(knd)))



Date html generated: 2015_07_17-AM-11_16_04
Last ObjectModification: 2015_01_28-AM-07_39_24

Home Index