Nuprl Lemma : bag-double-summation2

[R:Type]. ∀[add:R ⟶ R ⟶ R]. ∀[zero:R].
  ∀[T,A:Type]. ∀[f:T ⟶ bag(A)]. ∀[h:T ⟶ A ⟶ R]. ∀[b:bag(T)].
    (x∈b). Σ(y∈f[x]). h[x;y] = Σ(p∈⋃x∈b.bag-map(λy.<x, y>;f[x])). h[fst(p);snd(p)] ∈ R) 
  supposing IsMonoid(R;add;zero) ∧ Comm(R;add)


Proof




Definitions occuring in Statement :  bag-summation: Σ(x∈b). f[x] bag-combine: x∈bs.f[x] bag-map: bag-map(f;bs) bag: bag(T) comm: Comm(T;op) uimplies: supposing a uall: [x:A]. B[x] so_apply: x[s1;s2] so_apply: x[s] pi1: fst(t) pi2: snd(t) and: P ∧ Q lambda: λx.A[x] function: x:A ⟶ B[x] pair: <a, b> universe: Type equal: t ∈ T monoid_p: IsMonoid(T;op;id)
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a and: P ∧ Q prop: cand: c∧ B so_lambda: λ2x.t[x] so_apply: x[s]
Lemmas referenced :  bag-double-summation bag_wf and_wf monoid_p_wf comm_wf
Rules used in proof :  cut lemma_by_obid sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation hypothesis sqequalHypSubstitution isectElimination thin hypothesisEquality introduction productElimination sqequalRule isect_memberEquality axiomEquality because_Cache functionEquality universeEquality independent_pairFormation lambdaEquality independent_isectElimination

Latex:
\mforall{}[R:Type].  \mforall{}[add:R  {}\mrightarrow{}  R  {}\mrightarrow{}  R].  \mforall{}[zero:R].
    \mforall{}[T,A:Type].  \mforall{}[f:T  {}\mrightarrow{}  bag(A)].  \mforall{}[h:T  {}\mrightarrow{}  A  {}\mrightarrow{}  R].  \mforall{}[b:bag(T)].
        (\mSigma{}(x\mmember{}b).  \mSigma{}(y\mmember{}f[x]).  h[x;y]  =  \mSigma{}(p\mmember{}\mcup{}x\mmember{}b.bag-map(\mlambda{}y.<x,  y>f[x])).  h[fst(p);snd(p)]) 
    supposing  IsMonoid(R;add;zero)  \mwedge{}  Comm(R;add)



Date html generated: 2016_05_15-PM-02_33_02
Last ObjectModification: 2015_12_27-AM-09_47_22

Theory : bags


Home Index