Step * 1 2 of Lemma last_induction_accum


1. Type
2. (T List) ⟶ ℙ
3. base Q[[]]
4. step : ∀[ys:T List]. (Q[ys]  (∀y:T. Q[ys [y]]))
5. zs List
6. ¬↑null(zs)
7. ||zs|| ≥ 
8. accumulate (with value and list item x):
    step x
   over list:
     firstn(||zs|| 1;zs)
   with starting value:
    base) ∈ Q[firstn(||zs|| 1;zs)]
⊢ accumulate (with value and list item x):
   step x
  over list:
    firstn(||zs|| 1;zs) [last(zs)]
  with starting value:
   base) ∈ Q[firstn(||zs|| 1;zs) [last(zs)]]
BY
((RWO "list_accum_append" THENA Auto) THEN Reduce THEN Auto) }


Latex:


Latex:

1.  T  :  Type
2.  Q  :  (T  List)  {}\mrightarrow{}  \mBbbP{}
3.  base  :  Q[[]]
4.  step  :  \mforall{}[ys:T  List].  (Q[ys]  {}\mRightarrow{}  (\mforall{}y:T.  Q[ys  @  [y]]))
5.  zs  :  T  List
6.  \mneg{}\muparrow{}null(zs)
7.  ||zs||  \mgeq{}  1 
8.  accumulate  (with  value  a  and  list  item  x):
        step  a  x
      over  list:
          firstn(||zs||  -  1;zs)
      with  starting  value:
        base)  \mmember{}  Q[firstn(||zs||  -  1;zs)]
\mvdash{}  accumulate  (with  value  a  and  list  item  x):
      step  a  x
    over  list:
        firstn(||zs||  -  1;zs)  @  [last(zs)]
    with  starting  value:
      base)  \mmember{}  Q[firstn(||zs||  -  1;zs)  @  [last(zs)]]


By


Latex:
((RWO  "list\_accum\_append"  0  THENA  Auto)  THEN  Reduce  0  THEN  Auto)




Home Index