Nuprl Lemma : bag-append-equal-bag-rep

∀[T:Type]. ∀[x:T]. ∀[n:ℕ]. ∀[a,b:bag(T)].
  uiff((a + b) = bag-rep(n;x) ∈ bag(T);(n = (#(a) + #(b)) ∈ ℤ)
  ∧ (a = bag-rep(#(a);x) ∈ bag(T))
  ∧ (b = bag-rep(#(b);x) ∈ bag(T)))


Proof




Definitions occuring in Statement :  bag-rep: bag-rep(n;x),  bag-size: #(bs),  bag-append: as + bs,  bag: bag(T),  nat: ℕ,  uiff: uiff(P;Q),  uall: ∀[x:A]. B[x],  and: P ∧ Q,  add: n + m,  int: ℤ,  universe: Type,  equal: s = t ∈ T
Definitions unfolded in proof :  nat: ℕ,  subtype_rel: A ⊆r B,  prop: ℙ,  uimplies: b supposing a,  and: P ∧ Q,  uiff: uiff(P;Q),  member: t ∈ T,  uall: ∀[x:A]. B[x],  exists: ∃x:A. B[x],  sub-bag: sub-bag(T;as;bs),  all: ∀x:A. B[x],  implies: P ⇒ Q,  rev_implies: P ⇐ Q,  iff: P ⇐⇒ Q,  guard: {T},  true: True,  squash: ↓T,  sq_type: SQType(T),  top: Top
Lemmas referenced :  nat_wf,  bag-size_wf,  list-subtype-bag,  bag-rep_wf,  bag-append_wf,  bag_wf,  equal_wf,  bag-size-rep,  bag-size-append,  sub-bag-of-bag-rep,  bag-append-comm,  iff_weakening_equal,  true_wf,  squash_wf,  int_subtype_base,  subtype_base_sq,  bag-rep-add
Rules used in proof :  universeEquality,  equalitySymmetry,  equalityTransitivity,  isect_memberEquality,  addEquality,  rename,  setElimination,  intEquality,  productEquality,  lambdaEquality,  independent_isectElimination,  because_Cache,  applyEquality,  hypothesisEquality,  cumulativity,  isectElimination,  extract_by_obid,  axiomEquality,  independent_pairEquality,  thin,  productElimination,  sqequalHypSubstitution,  sqequalRule,  hypothesis,  independent_pairFormation,  cut,  introduction,  isect_memberFormation,  sqequalReflexivity,  computationStep,  sqequalTransitivity,  sqequalSubstitution,  applyLambdaEquality,  Error :memTop,  dependent_pairFormation,  dependent_functionElimination,  independent_functionElimination,  baseClosed,  imageMemberEquality,  natural_numberEquality,  imageElimination,  hyp_replacement,  instantiate,  voidEquality,  voidElimination

Latex:
\mforall{}[T:Type].  \mforall{}[x:T].  \mforall{}[n:\mBbbN{}].  \mforall{}[a,b:bag(T)].
    uiff((a  +  b)  =  bag-rep(n;x);(n  =  (\#(a)  +  \#(b)))  \mwedge{}  (a  =  bag-rep(\#(a);x))  \mwedge{}  (b  =  bag-rep(\#(b);x)))



Date html generated: 2020_05_20-AM-08_02_03
Last ObjectModification: 2020_01_07-PM-02_18_08

Theory : bags


Home Index