Step * of Lemma list_accum-triangle-inequality

[T:Type]. ∀[L:T List]. ∀[x,y:ℤ]. ∀[f,g:T ⟶ ℤ].
  (|accumulate (with value and list item a):
     f[a]
    over list:
      L
    with starting value:
     x) accumulate (with value and list item a):
           g[a]
          over list:
            L
          with starting value:
           y)| ≤ accumulate (with value and list item a):
                  |f[a] g[a]|
                 over list:
                   L
                 with starting value:
                  |x y|))
BY
(InductionOnList
   THEN Reduce 0
   THEN Auto
   THEN (RWO "4" THENA Auto)
   THEN (Assert ∀[L:T List]. ∀[x,y:ℤ].
                  ((x ≤ y)
                   (∀[f:T ⟶ ℤ]
                        (accumulate (with value and list item a):
                          f[a]
                         over list:
                           L
                         with starting value:
                          x) ≤ accumulate (with value and list item a):
                                f[a]
                               over list:
                                 L
                               with starting value:
                                y)))) BY
               (All Thin THEN InductionOnList THEN Reduce THEN Auto))
   THEN BHyp (-1)
   THEN Auto
   THEN RWO "int-triangle-inequality<0
   THEN Auto) }


Latex:


Latex:
\mforall{}[T:Type].  \mforall{}[L:T  List].  \mforall{}[x,y:\mBbbZ{}].  \mforall{}[f,g:T  {}\mrightarrow{}  \mBbbZ{}].
    (|accumulate  (with  value  s  and  list  item  a):
          s  +  f[a]
        over  list:
            L
        with  starting  value:
          x)  -  accumulate  (with  value  s  and  list  item  a):
                      s  +  g[a]
                    over  list:
                        L
                    with  starting  value:
                      y)|  \mleq{}  accumulate  (with  value  s  and  list  item  a):
                                    s  +  |f[a]  -  g[a]|
                                  over  list:
                                      L
                                  with  starting  value:
                                    |x  -  y|))


By


Latex:
(InductionOnList
  THEN  Reduce  0
  THEN  Auto
  THEN  (RWO  "4"  0  THENA  Auto)
  THEN  (Assert  \mforall{}[L:T  List].  \mforall{}[x,y:\mBbbZ{}].
                                ((x  \mleq{}  y)
                                {}\mRightarrow{}  (\mforall{}[f:T  {}\mrightarrow{}  \mBbbZ{}]
                                            (accumulate  (with  value  s  and  list  item  a):
                                                s  +  f[a]
                                              over  list:
                                                  L
                                              with  starting  value:
                                                x)  \mleq{}  accumulate  (with  value  s  and  list  item  a):
                                                            s  +  f[a]
                                                          over  list:
                                                              L
                                                          with  starting  value:
                                                            y))))  BY
                          (All  Thin  THEN  InductionOnList  THEN  Reduce  0  THEN  Auto))
  THEN  BHyp  (-1)
  THEN  Auto
  THEN  RWO  "int-triangle-inequality<"  0
  THEN  Auto)




Home Index