### Nuprl Lemma : member_filter

`∀[T:Type]. ∀P:T ⟶ 𝔹. ∀L:T List. ∀x:T.  ((x ∈ filter(P;L)) `⇐⇒` (x ∈ L) ∧ (↑(P x)))`

Proof

Definitions occuring in Statement :  l_member: `(x ∈ l)` filter: `filter(P;l)` list: `T List` assert: `↑b` bool: `𝔹` uall: `∀[x:A]. B[x]` all: `∀x:A. B[x]` iff: `P `⇐⇒` Q` and: `P ∧ Q` apply: `f a` function: `x:A ⟶ B[x]` universe: `Type`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` all: `∀x:A. B[x]` member: `t ∈ T` so_lambda: `λ2x.t[x]` subtype_rel: `A ⊆r B` so_apply: `x[s]` prop: `ℙ` uimplies: `b supposing a` and: `P ∧ Q` implies: `P `` Q` top: `Top` iff: `P `⇐⇒` Q` not: `¬A` false: `False` rev_implies: `P `` Q` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` uiff: `uiff(P;Q)` ifthenelse: `if b then t else f fi ` or: `P ∨ Q` bfalse: `ff` exists: `∃x:A. B[x]` sq_type: `SQType(T)` guard: `{T}` bnot: `¬bb` assert: `↑b` true: `True` cand: `A c∧ B`
Lemmas referenced :  list_induction all_wf iff_wf l_member_wf filter_wf5 subtype_rel_dep_function bool_wf subtype_rel_self set_wf assert_wf list_wf filter_nil_lemma filter_cons_lemma null_nil_lemma btrue_wf member-implies-null-eq-bfalse nil_wf btrue_neq_bfalse assert_witness eqtt_to_assert cons_member cons_wf or_wf equal_wf eqff_to_assert bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot ifthenelse_wf and_wf assert_elim not_assert_elim
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity Error :isect_memberFormation_alt,  lambdaFormation cut thin introduction extract_by_obid sqequalHypSubstitution isectElimination hypothesisEquality sqequalRule lambdaEquality applyEquality because_Cache hypothesis setEquality independent_isectElimination setElimination rename productEquality independent_functionElimination dependent_functionElimination isect_memberEquality voidElimination voidEquality functionEquality Error :universeIsType,  universeEquality independent_pairFormation equalityTransitivity equalitySymmetry productElimination Error :lambdaFormation_alt,  unionElimination equalityElimination cumulativity dependent_pairFormation promote_hyp instantiate Error :inhabitedIsType,  inlFormation inrFormation dependent_set_memberEquality applyLambdaEquality natural_numberEquality

Latex:
\mforall{}[T:Type].  \mforall{}P:T  {}\mrightarrow{}  \mBbbB{}.  \mforall{}L:T  List.  \mforall{}x:T.    ((x  \mmember{}  filter(P;L))  \mLeftarrow{}{}\mRightarrow{}  (x  \mmember{}  L)  \mwedge{}  (\muparrow{}(P  x)))

Date html generated: 2019_06_20-PM-00_43_56
Last ObjectModification: 2018_09_26-PM-02_25_23

Theory : list_0

Home Index