Nuprl Lemma : bag-partitions-symmetry

∀[T:Type]
  ∀[eq:EqDecider(T)]. ∀[bs:bag(T)].
    (bag-map(λp.<snd(p), fst(p)>;bag-partitions(eq;bs)) = bag-partitions(eq;bs) ∈ bag(bag(T) × bag(T))) 
  supposing valueall-type(T)


Proof




Definitions occuring in Statement :  bag-partitions: bag-partitions(eq;bs),  bag-map: bag-map(f;bs),  bag: bag(T),  deq: EqDecider(T),  valueall-type: valueall-type(T),  uimplies: b supposing a,  uall: ∀[x:A]. B[x],  pi1: fst(t),  pi2: snd(t),  lambda: λx.A[x],  pair: <a, b>,  product: x:A × B[x],  universe: Type,  equal: s = t ∈ T
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  member: t ∈ T,  uimplies: b supposing a,  product-deq: product-deq(A;B;a;b),  so_lambda: λ2x.t[x],  so_apply: x[s],  top: Top,  uiff: uiff(P;Q),  and: P ∧ Q,  cand: A c∧ B,  all: ∀x:A. B[x],  implies: P ⇒ Q,  prop: ℙ,  pi2: snd(t),  pi1: fst(t),  squash: ↓T,  true: True,  subtype_rel: A ⊆r B,  guard: {T},  iff: P ⇐⇒ Q,  rev_implies: P ⇐ Q,  bag-partitions: bag-partitions(eq;bs),  callbyvalueall: callbyvalueall,  has-value: (a)↓,  has-valueall: has-valueall(a),  sq_stable: SqStable(P),  exists: ∃x:A. B[x]
Lemmas referenced :  product-deq_wf,  bag_wf,  bag-deq_wf,  deq_wf,  valueall-type_wf,  bag-extensionality2,  bag-partitions_wf,  bag-map_wf,  pi2_wf,  pi1_wf_top,  bag-member_wf,  equal_wf,  squash_wf,  true_wf,  pair_eta_rw,  iff_weakening_equal,  bag-count-map,  valueall-type-has-valueall,  bag-valueall-type,  product-valueall-type,  bag-splits_wf,  evalall-reduce,  equal-count-bag-to-set,  bag-append-comm,  bag-append_wf,  bag-member-splits,  iff_wf,  sq_stable__bag-member,  bag-member-partitions,  bag-member-map
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation,  introduction,  cut,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  cumulativity,  hypothesisEquality,  hypothesis,  sqequalRule,  isect_memberEquality,  axiomEquality,  because_Cache,  equalityTransitivity,  equalitySymmetry,  productEquality,  independent_isectElimination,  lambdaEquality,  independent_pairEquality,  productElimination,  voidElimination,  voidEquality,  lambdaFormation,  independent_pairFormation,  applyEquality,  imageElimination,  universeEquality,  natural_numberEquality,  imageMemberEquality,  baseClosed,  independent_functionElimination,  sqequalElimination,  dependent_functionElimination,  callbyvalueReduce,  equalityUniverse,  levelHypothesis,  addLevel,  impliesFunctionality,  hyp_replacement,  applyLambdaEquality

Latex:
\mforall{}[T:Type]
    \mforall{}[eq:EqDecider(T)].  \mforall{}[bs:bag(T)].
        (bag-map(\mlambda{}p.<snd(p),  fst(p)>bag-partitions(eq;bs))  =  bag-partitions(eq;bs)) 
    supposing  valueall-type(T)



Date html generated: 2018_05_21-PM-09_49_42
Last ObjectModification: 2017_07_26-PM-06_31_16

Theory : bags_2


Home Index