Step
*
1
1
1
of Lemma
bag-val_wf
.....equality..... 
1. T : Type
2. + : T ⟶ T ⟶ T
3. zero : T
4. Comm(T;+)
5. Assoc(T;+)
6. Ident(T;+;zero)
7. as : T List
8. bs : T List
9. permutation(T;as;bs)
10. ||as|| = ||bs|| ∈ ℤ
11. 0 < ||as||
⊢ accumulate (with value v and list item x):
   v + x
  over list:
    as
  with starting value:
   zero)
= combine-list(v,x.v + x;as)
∈ T
BY
{ (DVar `as'  THEN Auto' THEN RepUR ``combine-list so_apply`` 0 THEN EqCD THEN Auto THEN Fold `infix_ap` 0 THEN Auto) }
Latex:
Latex:
.....equality..... 
1.  T  :  Type
2.  +  :  T  {}\mrightarrow{}  T  {}\mrightarrow{}  T
3.  zero  :  T
4.  Comm(T;+)
5.  Assoc(T;+)
6.  Ident(T;+;zero)
7.  as  :  T  List
8.  bs  :  T  List
9.  permutation(T;as;bs)
10.  ||as||  =  ||bs||
11.  0  <  ||as||
\mvdash{}  accumulate  (with  value  v  and  list  item  x):
      v  +  x
    over  list:
        as
    with  starting  value:
      zero)
=  combine-list(v,x.v  +  x;as)
By
Latex:
(DVar  `as' 
  THEN  Auto'
  THEN  RepUR  ``combine-list  so\_apply``  0
  THEN  EqCD
  THEN  Auto
  THEN  Fold  `infix\_ap`  0
  THEN  Auto)
Home
Index