Nuprl Lemma : map-l-union-1

∀[T:Type]. ∀[f:T ⟶ T]. ∀[eq:EqDecider(T)]. ∀[as,bs:T List].
  map(f;as ⋃ bs) ~ map(f;as) ⋃ map(f;bs) supposing Inj({x:T| (x ∈ as ⋃ bs)} ;T;f)


Proof




Definitions occuring in Statement :  l-union: as ⋃ bs,  l_member: (x ∈ l),  map: map(f;as),  list: T List,  deq: EqDecider(T),  inject: Inj(A;B;f),  uimplies: b supposing a,  uall: ∀[x:A]. B[x],  set: {x:A| B[x]} ,  function: x:A ⟶ B[x],  universe: Type,  sqequal: s ~ t
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  member: t ∈ T,  uimplies: b supposing a,  prop: ℙ,  subtype_rel: A ⊆r B,  so_lambda: λ2x.t[x],  so_apply: x[s],  all: ∀x:A. B[x]
Lemmas referenced :  inject_wf,  l_member_wf,  l-union_wf,  subtype_rel_dep_function,  set_wf,  list_wf,  deq_wf,  map-l-union
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation,  introduction,  cut,  hypothesis,  sqequalAxiom,  lemma_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  setEquality,  hypothesisEquality,  applyEquality,  sqequalRule,  lambdaEquality,  independent_isectElimination,  setElimination,  rename,  because_Cache,  lambdaFormation,  isect_memberEquality,  equalityTransitivity,  equalitySymmetry,  functionEquality,  universeEquality

Latex:
\mforall{}[T:Type].  \mforall{}[f:T  {}\mrightarrow{}  T].  \mforall{}[eq:EqDecider(T)].  \mforall{}[as,bs:T  List].
    map(f;as  \mcup{}  bs)  \msim{}  map(f;as)  \mcup{}  map(f;bs)  supposing  Inj(\{x:T|  (x  \mmember{}  as  \mcup{}  bs)\}  ;T;f)



Date html generated: 2016_05_14-PM-03_24_58
Last ObjectModification: 2015_12_26-PM-06_22_08

Theory : decidable!equality


Home Index