Step * of Lemma bag-summation-single-non-zero

[T,R:Type]. ∀[eq:EqDecider(T)]. ∀[add:R ⟶ R ⟶ R]. ∀[zero:R]. ∀[b:bag(T)]. ∀[f:T ⟶ R].
  ∀z:T. Σ(x∈b). f[x] = Σ(x∈[x∈b|eq z]). f[x] ∈ supposing ∀x:T. (x ↓∈  ((x z ∈ T) ∨ (f[x] zero ∈ R))) 
  supposing IsMonoid(R;add;zero) ∧ Comm(R;add)
BY
((InstLemma `bag-summation-split` []⋅
    THEN RepeatFor (ParallelLast')
    THEN (D THENA Auto)
    THEN PromoteHyp (-1) 2
    THEN RepeatFor (ParallelLast'))
   THEN Auto
   THEN (InstHyp [⌜λ2x.eq z⌝;⌜f⌝(-6)⋅ THENA Auto)
   THEN Subst ⌜Σ(x∈[x∈b|¬b(eq z)]). f[x] zero ∈ R⌝ (-1)⋅
   THEN Auto) }

1
.....equality..... 
1. Type
2. eq EqDecider(T)
3. Type
4. add R ⟶ R ⟶ R
5. zero R
6. bag(T)
7. ∀[p:T ⟶ 𝔹]. ∀[f:T ⟶ R].
     Σ(x∈b). f[x] (x∈[x∈b|p[x]]). f[x] add Σ(x∈[x∈b|¬bp[x]]). f[x]) ∈ supposing IsMonoid(R;add;zero) ∧ Comm(R;add)
8. T ⟶ R
9. IsMonoid(R;add;zero)
10. Comm(R;add)
11. T
12. ∀x:T. (x ↓∈  ((x z ∈ T) ∨ (f[x] zero ∈ R)))
13. Σ(x∈b). f[x] (x∈[x∈b|eq z]). f[x] add Σ(x∈[x∈b|¬b(eq z)]). f[x]) ∈ R
⊢ Σ(x∈[x∈b|¬b(eq z)]). f[x] zero ∈ R

2
1. Type
2. eq EqDecider(T)
3. Type
4. add R ⟶ R ⟶ R
5. zero R
6. bag(T)
7. ∀[p:T ⟶ 𝔹]. ∀[f:T ⟶ R].
     Σ(x∈b). f[x] (x∈[x∈b|p[x]]). f[x] add Σ(x∈[x∈b|¬bp[x]]). f[x]) ∈ supposing IsMonoid(R;add;zero) ∧ Comm(R;add)
8. T ⟶ R
9. IsMonoid(R;add;zero)
10. Comm(R;add)
11. T
12. ∀x:T. (x ↓∈  ((x z ∈ T) ∨ (f[x] zero ∈ R)))
13. Σ(x∈b). f[x] (x∈[x∈b|eq z]). f[x] add zero) ∈ R
⊢ Σ(x∈b). f[x] = Σ(x∈[x∈b|eq z]). f[x] ∈ R


Latex:


Latex:
\mforall{}[T,R:Type].  \mforall{}[eq:EqDecider(T)].  \mforall{}[add:R  {}\mrightarrow{}  R  {}\mrightarrow{}  R].  \mforall{}[zero:R].  \mforall{}[b:bag(T)].  \mforall{}[f:T  {}\mrightarrow{}  R].
    \mforall{}z:T
        \mSigma{}(x\mmember{}b).  f[x]  =  \mSigma{}(x\mmember{}[x\mmember{}b|eq  x  z]).  f[x]  supposing  \mforall{}x:T.  (x  \mdownarrow{}\mmember{}  b  {}\mRightarrow{}  ((x  =  z)  \mvee{}  (f[x]  =  zero))) 
    supposing  IsMonoid(R;add;zero)  \mwedge{}  Comm(R;add)


By


Latex:
((InstLemma  `bag-summation-split`  []\mcdot{}
    THEN  RepeatFor  2  (ParallelLast')
    THEN  (D  0  THENA  Auto)
    THEN  PromoteHyp  (-1)  2
    THEN  RepeatFor  3  (ParallelLast'))
  THEN  Auto
  THEN  (InstHyp  [\mkleeneopen{}\mlambda{}\msubtwo{}x.eq  x  z\mkleeneclose{};\mkleeneopen{}f\mkleeneclose{}]  (-6)\mcdot{}  THENA  Auto)
  THEN  Subst  \mkleeneopen{}\mSigma{}(x\mmember{}[x\mmember{}b|\mneg{}\msubb{}(eq  x  z)]).  f[x]  =  zero\mkleeneclose{}  (-1)\mcdot{}
  THEN  Auto)




Home Index