Step
*
1
1
1
of Lemma
bag-summation-filter
1. T : Type
2. R : Type
3. add : R ⟶ R ⟶ R
4. zero : R
5. b : bag(T)
6. p : T ⟶ 𝔹
7. ∀[f:T ⟶ R]
     Σ(x∈b). f[x] = (Σ(x∈[x∈b|p[x]]). f[x] add Σ(x∈[x∈b|¬bp[x]]). f[x]) ∈ R supposing IsMonoid(R;add;zero) ∧ Comm(R;add)
8. f : T ⟶ R
9. Assoc(R;add)
10. ∀[x:R]. (((x add zero) = x ∈ R) ∧ ((zero add x) = x ∈ R))
11. Comm(R;add)
⊢ Σ(x∈[x∈b|p[x]]). f[x] = Σ(x∈[x∈b|p[x]]). if p[x] then f[x] else zero fi  ∈ R
BY
{ (GenConcl ⌜[x∈b|p[x]] = B ∈ bag({x:T| ↑p[x]} )⌝⋅ THEN Auto) }
1
1. T : Type
2. R : Type
3. add : R ⟶ R ⟶ R
4. zero : R
5. b : bag(T)
6. p : T ⟶ 𝔹
7. ∀[f:T ⟶ R]
     Σ(x∈b). f[x] = (Σ(x∈[x∈b|p[x]]). f[x] add Σ(x∈[x∈b|¬bp[x]]). f[x]) ∈ R supposing IsMonoid(R;add;zero) ∧ Comm(R;add)
8. f : T ⟶ R
9. Assoc(R;add)
10. ∀[x:R]. (((x add zero) = x ∈ R) ∧ ((zero add x) = x ∈ R))
11. Comm(R;add)
12. B : bag({x:T| ↑p[x]} )
13. [x∈b|p[x]] = B ∈ bag({x:T| ↑p[x]} )
⊢ Σ(x∈B). f[x] = Σ(x∈B). if p[x] then f[x] else zero fi  ∈ R
Latex:
Latex:
1.  T  :  Type
2.  R  :  Type
3.  add  :  R  {}\mrightarrow{}  R  {}\mrightarrow{}  R
4.  zero  :  R
5.  b  :  bag(T)
6.  p  :  T  {}\mrightarrow{}  \mBbbB{}
7.  \mforall{}[f:T  {}\mrightarrow{}  R]
          \mSigma{}(x\mmember{}b).  f[x]  =  (\mSigma{}(x\mmember{}[x\mmember{}b|p[x]]).  f[x]  add  \mSigma{}(x\mmember{}[x\mmember{}b|\mneg{}\msubb{}p[x]]).  f[x]) 
          supposing  IsMonoid(R;add;zero)  \mwedge{}  Comm(R;add)
8.  f  :  T  {}\mrightarrow{}  R
9.  Assoc(R;add)
10.  \mforall{}[x:R].  (((x  add  zero)  =  x)  \mwedge{}  ((zero  add  x)  =  x))
11.  Comm(R;add)
\mvdash{}  \mSigma{}(x\mmember{}[x\mmember{}b|p[x]]).  f[x]  =  \mSigma{}(x\mmember{}[x\mmember{}b|p[x]]).  if  p[x]  then  f[x]  else  zero  fi 
By
Latex:
(GenConcl  \mkleeneopen{}[x\mmember{}b|p[x]]  =  B\mkleeneclose{}\mcdot{}  THEN  Auto)
Home
Index