Nuprl Lemma : filter_filter2

[T:Type]. ∀[P:T ⟶ 𝔹]. ∀[L:T List].  (filter(P;L) filter2(λi.(P L[i]);L) ∈ (T List))


Proof




Definitions occuring in Statement :  filter2: filter2(P;L) select: L[n] filter: filter(P;l) list: List bool: 𝔹 uall: [x:A]. B[x] apply: a lambda: λx.A[x] function: x:A ⟶ B[x] universe: Type equal: t ∈ T
Definitions unfolded in proof :  member: t ∈ T prop: uall: [x:A]. B[x] int_seg: {i..j-} uimplies: supposing a guard: {T} lelt: i ≤ j < k and: P ∧ Q all: x:A. B[x] decidable: Dec(P) or: P ∨ Q satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] false: False implies:  Q not: ¬A top: Top ge: i ≥  le: A ≤ B so_lambda: λ2x.t[x] subtype_rel: A ⊆B so_apply: x[s] less_than: a < b squash: T bool: 𝔹 unit: Unit it: btrue: tt ifthenelse: if then else fi  uiff: uiff(P;Q) bfalse: ff true: True iff: ⇐⇒ Q rev_implies:  Q select: L[n] cons: [a b]
Lemmas referenced :  bool_wf equal_wf cons_wf filter2_wf select_wf int_seg_properties length_wf decidable__le satisfiable-full-omega-tt intformand_wf intformnot_wf intformle_wf itermConstant_wf itermAdd_wf itermVar_wf int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_add_lemma int_term_value_var_lemma int_formula_prop_wf length_of_cons_lemma non_neg_length decidable__lt intformless_wf int_formula_prop_less_lemma equal-wf-T-base assert_wf bnot_wf not_wf list_induction list_wf filter_wf5 subtype_rel_dep_function l_member_wf set_wf int_seg_wf filter_nil_lemma filter2_nil_lemma nil_wf filter_cons_lemma squash_wf true_wf eqtt_to_assert cons_filter2 iff_weakening_equal uiff_transitivity eqff_to_assert assert_of_bnot select-cons-tl add-subtract-cancel
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity applyEquality functionExtensionality hypothesisEquality cumulativity cut introduction extract_by_obid hypothesis because_Cache thin hyp_replacement equalitySymmetry applyLambdaEquality sqequalHypSubstitution isectElimination lambdaEquality addEquality setElimination rename independent_isectElimination natural_numberEquality productElimination dependent_functionElimination unionElimination dependent_pairFormation int_eqEquality intEquality isect_memberEquality voidElimination voidEquality sqequalRule independent_pairFormation computeAll baseClosed isect_memberFormation setEquality lambdaFormation imageElimination independent_functionElimination equalityTransitivity equalityElimination imageMemberEquality universeEquality axiomEquality functionEquality

Latex:
\mforall{}[T:Type].  \mforall{}[P:T  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[L:T  List].    (filter(P;L)  =  filter2(\mlambda{}i.(P  L[i]);L))



Date html generated: 2017_10_01-AM-08_35_11
Last ObjectModification: 2017_07_26-PM-04_25_44

Theory : list!


Home Index