### Nuprl Lemma : bag-filter-empty-iff

`∀[T:Type]. ∀[P:T ⟶ 𝔹]. ∀[b:bag(T)].  uiff(∀x:T. (x ↓∈ b `` (¬↑P[x]));↑bag-null([x∈b|P[x]]))`

Proof

Definitions occuring in Statement :  bag-member: `x ↓∈ bs` bag-null: `bag-null(bs)` bag-filter: `[x∈b|p[x]]` bag: `bag(T)` assert: `↑b` bool: `𝔹` uiff: `uiff(P;Q)` uall: `∀[x:A]. B[x]` so_apply: `x[s]` all: `∀x:A. B[x]` not: `¬A` implies: `P `` Q` function: `x:A ⟶ B[x]` universe: `Type`
Definitions unfolded in proof :  member: `t ∈ T` uall: `∀[x:A]. B[x]` so_lambda: `λ2x.t[x]` implies: `P `` Q` prop: `ℙ` so_apply: `x[s]` all: `∀x:A. B[x]` empty-bag: `{}` bag-null: `bag-null(bs)` null: `null(as)` bag-filter: `[x∈b|p[x]]` filter: `filter(P;l)` reduce: `reduce(f;k;as)` list_ind: list_ind nil: `[]` it: `⋅` btrue: `tt` assert: `↑b` ifthenelse: `if b then t else f fi ` uiff: `uiff(P;Q)` and: `P ∧ Q` uimplies: `b supposing a` true: `True` false: `False` not: `¬A` cons-bag: `x.b` top: `Top` bool: `𝔹` unit: `Unit` cons: `[a / b]` bfalse: `ff` sq_or: `a ↓∨ b` or: `P ∨ Q` subtype_rel: `A ⊆r B` squash: `↓T` exists: `∃x:A. B[x]` sq_type: `SQType(T)` guard: `{T}` bnot: `¬bb` rev_implies: `P `` Q` iff: `P `⇐⇒` Q` sq_stable: `SqStable(P)`
Lemmas referenced :  all_wf bag-member_wf not_wf assert_wf bag-null_wf bag-filter_wf squash_wf false_wf true_wf bag-member-empty-iff empty-bag_wf uiff_wf bag_filter_cons_lemma bool_wf eqtt_to_assert list-subtype-bag eqff_to_assert equal_wf bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot sq_or_wf iff_weakening_uiff rev_implies_wf assert_witness bag-member-cons cons-bag_wf bag_wf bag_to_squash_list sq_stable__uiff sq_stable__all sq_stable__not sq_stable_from_decidable decidable__assert list_induction list_wf assert_elim and_wf not_assert_elim btrue_neq_bfalse
Rules used in proof :  because_Cache sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity hypothesisEquality cut introduction extract_by_obid sqequalHypSubstitution isectElimination thin cumulativity sqequalRule lambdaEquality functionEquality hypothesis applyEquality functionExtensionality dependent_functionElimination setEquality independent_pairFormation isect_memberFormation natural_numberEquality axiomEquality equalityTransitivity equalitySymmetry lambdaFormation voidElimination addLevel productElimination independent_isectElimination allFunctionality independent_functionElimination isect_memberEquality voidEquality unionElimination equalityElimination inlFormation imageMemberEquality baseClosed dependent_pairFormation promote_hyp instantiate inrFormation dependent_set_memberEquality universeEquality independent_pairEquality imageElimination rename hyp_replacement applyLambdaEquality levelHypothesis setElimination

Latex:
\mforall{}[T:Type].  \mforall{}[P:T  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[b:bag(T)].    uiff(\mforall{}x:T.  (x  \mdownarrow{}\mmember{}  b  {}\mRightarrow{}  (\mneg{}\muparrow{}P[x]));\muparrow{}bag-null([x\mmember{}b|P[x]]))

Date html generated: 2017_10_01-AM-08_56_15
Last ObjectModification: 2017_07_26-PM-04_38_16

Theory : bags

Home Index