Nuprl Lemma : member-mapfilter-univ

[T:Type]
  ∀L:T List. ∀P:{x:T| (x ∈ L)}  ⟶ 𝔹.
    ∀[T':Type]
      ∀f:{x:T| (x ∈ L) c∧ (↑(P x))}  ⟶ T'. ∀x:T'.
        ((x ∈ mapfilter(f;P;L)) ⇐⇒ ∃y:T. ((y ∈ L) ∧ ((↑(P y)) c∧ (x (f y) ∈ T'))))


Proof




Definitions occuring in Statement :  mapfilter: mapfilter(f;P;L) l_member: (x ∈ l) list: List assert: b bool: 𝔹 uall: [x:A]. B[x] cand: c∧ B all: x:A. B[x] exists: x:A. B[x] iff: ⇐⇒ Q and: P ∧ Q set: {x:A| B[x]}  apply: a function: x:A ⟶ B[x] universe: Type equal: t ∈ T
Definitions unfolded in proof :  guard: {T} cand: c∧ B prop: member: t ∈ T all: x:A. B[x] uall: [x:A]. B[x] rev_implies:  Q implies:  Q and: P ∧ Q iff: ⇐⇒ Q exists: x:A. B[x] so_lambda: λ2x.t[x] so_apply: x[s] mapfilter: mapfilter(f;P;L) subtype_rel: A ⊆B uimplies: supposing a
Lemmas referenced :  istype-universe list_wf bool_wf list-subtype assert_wf istype-assert l_member_wf member_map_filter l_member-settype map_wf filter_type subtype_rel_list
Rules used in proof :  universeEquality instantiate inhabitedIsType setIsType functionIsType because_Cache universeIsType productIsType sqequalRule independent_pairFormation dependent_set_memberEquality_alt rename setElimination applyEquality functionExtensionality dependent_functionElimination hypothesis hypothesisEquality setEquality thin isectElimination sqequalHypSubstitution extract_by_obid introduction cut lambdaFormation_alt isect_memberFormation_alt sqequalReflexivity computationStep sqequalTransitivity sqequalSubstitution productElimination independent_functionElimination dependent_pairFormation_alt lambdaEquality_alt equalityIstype productEquality equalityIsType1 equalityTransitivity equalitySymmetry independent_isectElimination cumulativity

Latex:
\mforall{}[T:Type]
    \mforall{}L:T  List.  \mforall{}P:\{x:T|  (x  \mmember{}  L)\}    {}\mrightarrow{}  \mBbbB{}.
        \mforall{}[T':Type]
            \mforall{}f:\{x:T|  (x  \mmember{}  L)  c\mwedge{}  (\muparrow{}(P  x))\}    {}\mrightarrow{}  T'.  \mforall{}x:T'.
                ((x  \mmember{}  mapfilter(f;P;L))  \mLeftarrow{}{}\mRightarrow{}  \mexists{}y:T.  ((y  \mmember{}  L)  \mwedge{}  ((\muparrow{}(P  y))  c\mwedge{}  (x  =  (f  y)))))



Date html generated: 2019_10_15-AM-10_21_57
Last ObjectModification: 2019_08_05-PM-02_08_39

Theory : list_1


Home Index