Nuprl Lemma : lookup-list-map-inDom-prop

[Key,Value:Type]. ∀[deqKey:EqDecider(Key)]. ∀[key:Key]. ∀[m:lookup-list-map-type(Key;Value)].
  (↑lookup-list-map-inDom(deqKey;key;m) ⇐⇒ ↑isl(lookup-list-map-find(deqKey;key;m)))


Proof




Definitions occuring in Statement :  lookup-list-map-inDom: lookup-list-map-inDom(deqKey;key;m) lookup-list-map-find: lookup-list-map-find(deqKey;key;m) lookup-list-map-type: lookup-list-map-type(Key;Value) deq: EqDecider(T) assert: b isl: isl(x) uall: [x:A]. B[x] iff: ⇐⇒ Q universe: Type
Definitions unfolded in proof :  lookup-list-map-type: lookup-list-map-type(Key;Value) uall: [x:A]. B[x] member: t ∈ T so_lambda: λ2x.t[x] so_apply: x[s] implies:  Q all: x:A. B[x] prop: iff: ⇐⇒ Q and: P ∧ Q rev_implies:  Q lookup-list-map-find: lookup-list-map-find(deqKey;key;m) lookup-list-map-inDom: lookup-list-map-inDom(deqKey;key;m) so_lambda: so_lambda(x,y,z.t[x; y; z]) top: Top so_apply: x[s1;s2;s3] assert: b ifthenelse: if then else fi  bfalse: ff apply-alist: apply-alist(eq;L;x) isl: isl(x) false: False pi1: fst(t) pi2: snd(t) eqof: eqof(d) deq: EqDecider(T) bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) uimplies: supposing a bor: p ∨bq true: True exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) guard: {T} bnot: ¬bb not: ¬A

Latex:
\mforall{}[Key,Value:Type].  \mforall{}[deqKey:EqDecider(Key)].  \mforall{}[key:Key].  \mforall{}[m:lookup-list-map-type(Key;Value)].
    (\muparrow{}lookup-list-map-inDom(deqKey;key;m)  \mLeftarrow{}{}\mRightarrow{}  \muparrow{}isl(lookup-list-map-find(deqKey;key;m)))



Date html generated: 2016_05_17-PM-01_50_56
Last ObjectModification: 2015_12_28-PM-08_50_46

Theory : datatype-signatures


Home Index