### Nuprl Lemma : bag-mapfilter-fast_wf

`∀[A,B:Type]. ∀[bs:bag(A)]. ∀[P:A ⟶ 𝔹]. ∀[f:{x:A| ↑P[x]}  ⟶ B].  (bag-mapfilter-fast(f;P;bs) ∈ bag(B))`

Proof

Definitions occuring in Statement :  bag-mapfilter-fast: `bag-mapfilter-fast(f;P;bs)` bag: `bag(T)` assert: `↑b` bool: `𝔹` uall: `∀[x:A]. B[x]` so_apply: `x[s]` member: `t ∈ T` set: `{x:A| B[x]} ` function: `x:A ⟶ B[x]` universe: `Type`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` bag-mapfilter-fast: `bag-mapfilter-fast(f;P;bs)` so_lambda: `λ2x y.t[x; y]` so_apply: `x[s]` all: `∀x:A. B[x]` implies: `P `` Q` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` ifthenelse: `if b then t else f fi ` uiff: `uiff(P;Q)` and: `P ∧ Q` uimplies: `b supposing a` prop: `ℙ` bfalse: `ff` so_apply: `x[s1;s2]` top: `Top` exists: `∃x:A. B[x]` or: `P ∨ Q` sq_type: `SQType(T)` guard: `{T}` bnot: `¬bb` assert: `↑b` false: `False` squash: `↓T` true: `True` subtype_rel: `A ⊆r B` iff: `P `⇐⇒` Q` rev_implies: `P `` Q`
Lemmas referenced :  bag-accum_wf bag_wf empty-bag_wf bool_wf eqtt_to_assert cons-bag_wf assert_wf equal_wf cons-bag-as-append eqff_to_assert bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot bag-append_wf squash_wf true_wf bag-append-comm single-bag_wf iff_weakening_equal bag-append-assoc
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalRule extract_by_obid sqequalHypSubstitution isectElimination thin cumulativity hypothesisEquality hypothesis because_Cache lambdaEquality applyEquality functionExtensionality lambdaFormation unionElimination equalityElimination productElimination independent_isectElimination setEquality dependent_set_memberEquality equalityTransitivity equalitySymmetry dependent_functionElimination independent_functionElimination isect_memberEquality voidElimination voidEquality dependent_pairFormation promote_hyp instantiate axiomEquality functionEquality universeEquality imageElimination natural_numberEquality imageMemberEquality baseClosed

Latex:
\mforall{}[A,B:Type].  \mforall{}[bs:bag(A)].  \mforall{}[P:A  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[f:\{x:A|  \muparrow{}P[x]\}    {}\mrightarrow{}  B].
(bag-mapfilter-fast(f;P;bs)  \mmember{}  bag(B))

Date html generated: 2017_10_01-AM-08_58_25
Last ObjectModification: 2017_07_26-PM-04_40_24

Theory : bags

Home Index