Step * of Lemma list_accum-remove-repeats

[T:Type]. ∀[eq:EqDecider(T)]. ∀[A:Type]. ∀[g:T ⟶ A]. ∀[f:A ⟶ A ⟶ A].
  (∀[as:T List]. ∀[n:A].
     (accumulate (with value and list item z):
       f[a;g[z]]
      over list:
        as
      with starting value:
       n)
     accumulate (with value and list item z):
        f[a;g[z]]
       over list:
         remove-repeats(eq;as)
       with starting value:
        n)
     ∈ A)) supposing 
     ((∀x:A. (f[x;x] x ∈ A)) and 
     Assoc(A;λx,y. f[x;y]) and 
     Comm(A;λx,y. f[x;y]))
BY
(InductionOnList⋅ THEN Auto) }

1
1. Type
2. eq EqDecider(T)
3. Type
4. T ⟶ A
5. A ⟶ A ⟶ A
6. Comm(A;λx,y. f[x;y])
7. Assoc(A;λx,y. f[x;y])
8. ∀x:A. (f[x;x] x ∈ A)
9. T
10. List
11. ∀[n:A]
      (accumulate (with value and list item z):
        f[a;g[z]]
       over list:
         v
       with starting value:
        n)
      accumulate (with value and list item z):
         f[a;g[z]]
        over list:
          remove-repeats(eq;v)
        with starting value:
         n)
      ∈ A)
12. A
⊢ accumulate (with value and list item z):
   f[a;g[z]]
  over list:
    [u v]
  with starting value:
   n)
accumulate (with value and list item z):
   f[a;g[z]]
  over list:
    remove-repeats(eq;[u v])
  with starting value:
   n)
∈ A


Latex:


Latex:
\mforall{}[T:Type].  \mforall{}[eq:EqDecider(T)].  \mforall{}[A:Type].  \mforall{}[g:T  {}\mrightarrow{}  A].  \mforall{}[f:A  {}\mrightarrow{}  A  {}\mrightarrow{}  A].
    (\mforall{}[as:T  List].  \mforall{}[n:A].
          (accumulate  (with  value  a  and  list  item  z):
              f[a;g[z]]
            over  list:
                as
            with  starting  value:
              n)
          =  accumulate  (with  value  a  and  list  item  z):
                f[a;g[z]]
              over  list:
                  remove-repeats(eq;as)
              with  starting  value:
                n)))  supposing 
          ((\mforall{}x:A.  (f[x;x]  =  x))  and 
          Assoc(A;\mlambda{}x,y.  f[x;y])  and 
          Comm(A;\mlambda{}x,y.  f[x;y]))


By


Latex:
(InductionOnList\mcdot{}  THEN  Auto)




Home Index