Step
*
1
of Lemma
reduce-as-combine-list
1. A : Type
2. f : A ⟶ A ⟶ A
3. ∀[x,y,z:A].  ((f x (f y z)) = (f (f x y) z) ∈ A)
4. ∀[x,y:A].  ((f x y) = (f y x) ∈ A)
5. u : A
6. v : A List
7. ∀[z:A]. (reduce(f;z;v) = accumulate (with value x and list item y): f x yover list:  vwith starting value: z) ∈ A)
8. z : A
⊢ (f u reduce(f;z;v)) = reduce(f;f z u;v) ∈ A
BY
{ (Thin (-2) THEN ListInd (-2) THEN Reduce 0 THEN Auto) }
1
1. A : Type
2. f : A ⟶ A ⟶ A
3. ∀[x,y,z:A].  ((f x (f y z)) = (f (f x y) z) ∈ A)
4. ∀[x,y:A].  ((f x y) = (f y x) ∈ A)
5. u : A
6. z : A
7. u1 : A
8. v : A List
9. (f u reduce(f;z;v)) = reduce(f;f z u;v) ∈ A
⊢ (f u (f u1 reduce(f;z;v))) = (f u1 reduce(f;f z u;v)) ∈ A
Latex:
Latex:
1.  A  :  Type
2.  f  :  A  {}\mrightarrow{}  A  {}\mrightarrow{}  A
3.  \mforall{}[x,y,z:A].    ((f  x  (f  y  z))  =  (f  (f  x  y)  z))
4.  \mforall{}[x,y:A].    ((f  x  y)  =  (f  y  x))
5.  u  :  A
6.  v  :  A  List
7.  \mforall{}[z:A]
          (reduce(f;z;v)
          =  accumulate  (with  value  x  and  list  item  y):
                f  x  y
              over  list:
                  v
              with  starting  value:
                z))
8.  z  :  A
\mvdash{}  (f  u  reduce(f;z;v))  =  reduce(f;f  z  u;v)
By
Latex:
(Thin  (-2)  THEN  ListInd  (-2)  THEN  Reduce  0  THEN  Auto)
Home
Index