Nuprl Lemma : bag-member-map3-deq

∀[T,U:Type].
  ∀x:U. ∀bs:bag(T). ∀f:{v:T| v ↓∈ bs}  ⟶ U.
    (Inj({v:T| v ↓∈ bs} ;U;f) ⇒ (∀x,y:U.  Dec(x = y ∈ U)) ⇒ uiff(x ↓∈ bag-map(f;bs);∃v:T. (v ↓∈ bs ∧ (x = (f v) ∈ U)))\000C)


Proof




Definitions occuring in Statement :  bag-member: x ↓∈ bs,  bag-map: bag-map(f;bs),  bag: bag(T),  inject: Inj(A;B;f),  decidable: Dec(P),  uiff: uiff(P;Q),  uall: ∀[x:A]. B[x],  all: ∀x:A. B[x],  exists: ∃x:A. B[x],  implies: P ⇒ Q,  and: P ∧ Q,  set: {x:A| B[x]} ,  apply: f a,  function: x:A ⟶ B[x],  universe: Type,  equal: s = t ∈ T
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  all: ∀x:A. B[x],  implies: P ⇒ Q,  member: t ∈ T,  uiff: uiff(P;Q),  and: P ∧ Q,  uimplies: b supposing a,  squash: ↓T,  so_lambda: λ2x.t[x],  prop: ℙ,  so_apply: x[s],  exists: ∃x:A. B[x],  bag-member: x ↓∈ bs,  iff: P ⇐⇒ Q,  rev_implies: P ⇐ Q,  subtype_rel: A ⊆r B,  guard: {T},  decidable: Dec(P),  or: P ∨ Q,  decision: Decision,  top: Top,  inject: Inj(A;B;f),  cand: A c∧ B,  sq_stable: SqStable(P),  label: ...$L... t,  true: True
Lemmas referenced :  bag-member-map3,  bag-member_wf,  bag-map-member-wf,  squash_wf,  exists_wf,  equal_wf,  iff_weakening_uiff,  decidable_wf,  inject_wf,  bag_wf,  single-valued-bag-filter,  dec2bool_wf,  subtype_rel_self,  subtype_rel_union,  not_wf,  top_wf,  dec2bool_decidable,  assert_wf,  bag-member-size,  bag-filter-wf2,  subtype_rel_bag,  bag-member-filter2,  sv-bag-only_wf,  sq_stable__bag-member,  bag-member-sv-bag-only,  sv-bag-only-filter,  true_wf,  iff_weakening_equal
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation_alt,  lambdaFormation_alt,  cut,  introduction,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  hypothesisEquality,  dependent_functionElimination,  because_Cache,  hypothesis,  independent_pairFormation,  imageElimination,  sqequalRule,  imageMemberEquality,  baseClosed,  rename,  universeIsType,  lambdaEquality,  productEquality,  applyEquality,  dependent_set_memberEquality,  productIsType,  productElimination,  independent_isectElimination,  equalityTransitivity,  equalitySymmetry,  independent_functionElimination,  functionIsType,  inhabitedIsType,  setEquality,  setIsType,  universeEquality,  lambdaFormation,  setElimination,  functionExtensionality,  cumulativity,  functionEquality,  isect_memberEquality,  voidElimination,  voidEquality,  dependent_pairFormation,  natural_numberEquality,  instantiate

Latex:
\mforall{}[T,U:Type].
    \mforall{}x:U.  \mforall{}bs:bag(T).  \mforall{}f:\{v:T|  v  \mdownarrow{}\mmember{}  bs\}    {}\mrightarrow{}  U.
        (Inj(\{v:T|  v  \mdownarrow{}\mmember{}  bs\}  ;U;f)
        {}\mRightarrow{}  (\mforall{}x,y:U.    Dec(x  =  y))
        {}\mRightarrow{}  uiff(x  \mdownarrow{}\mmember{}  bag-map(f;bs);\mexists{}v:T.  (v  \mdownarrow{}\mmember{}  bs  \mwedge{}  (x  =  (f  v)))))



Date html generated: 2019_10_15-AM-11_02_44
Last ObjectModification: 2018_09_27-AM-11_19_21

Theory : bags


Home Index