Step
*
of Lemma
bag-summation_functionality_wrt_le_1
∀[T:Type]. ∀[b:bag(T)]. ∀[f,g:T ⟶ ℤ].  Σ(x∈b). f[x] ≤ Σ(x∈b). g[x] supposing ∀x:T. (f[x] ≤ g[x])
BY
{ ((Assert Assoc(ℤ;λx,y. (x + y)) ∧ Comm(ℤ;λx,y. (x + y)) BY
          (RepeatFor 2 (D 0) THEN Reduce 0 THEN Auto))
   THEN Auto
   THEN BagToList 4
   THEN Auto
   THEN RepUR ``bag-summation bag-accum`` 0) }
1
1. Assoc(ℤ;λx,y. (x + y))
2. Comm(ℤ;λx,y. (x + y))
3. T : Type
4. b : T List
5. f : T ⟶ ℤ
6. g : T ⟶ ℤ
7. ∀x:T. (f[x] ≤ g[x])
⊢ accumulate (with value c and list item x):
   f[x] + c
  over list:
    b
  with starting value:
   0) ≤ accumulate (with value c and list item x):
         g[x] + c
        over list:
          b
        with starting value:
         0)
Latex:
Latex:
\mforall{}[T:Type].  \mforall{}[b:bag(T)].  \mforall{}[f,g:T  {}\mrightarrow{}  \mBbbZ{}].    \mSigma{}(x\mmember{}b).  f[x]  \mleq{}  \mSigma{}(x\mmember{}b).  g[x]  supposing  \mforall{}x:T.  (f[x]  \mleq{}  g[x])
By
Latex:
((Assert  Assoc(\mBbbZ{};\mlambda{}x,y.  (x  +  y))  \mwedge{}  Comm(\mBbbZ{};\mlambda{}x,y.  (x  +  y))  BY
                (RepeatFor  2  (D  0)  THEN  Reduce  0  THEN  Auto))
  THEN  Auto
  THEN  BagToList  4
  THEN  Auto
  THEN  RepUR  ``bag-summation  bag-accum``  0)
Home
Index