Step
*
2
of Lemma
lastn-as-accum
1. A : Type
2. n : ℤ
3. L : A List
4. ¬(n ≤ 0)
⊢ lastn(n;L) ~ accumulate (with value b and list item x):
                if ||b|| <z n then b @ [x] else tl(b @ [x]) fi 
               over list:
                 L
               with starting value:
                [])
BY
{ xxx(DVar `L' THEN Reduce 0)xxx }
1
1. A : Type
2. n : ℤ
3. ¬(n ≤ 0)
⊢ lastn(n;[]) ~ []
2
1. A : Type
2. n : ℤ
3. u : A
4. v : A List
5. ¬(n ≤ 0)
⊢ lastn(n;[u / v]) ~ accumulate (with value b and list item x):
                      if ||b|| <z n then b @ [x] else tl(b @ [x]) fi 
                     over list:
                       v
                     with starting value:
                      if 0 <z n then [u] else [] fi )
Latex:
Latex:
1.  A  :  Type
2.  n  :  \mBbbZ{}
3.  L  :  A  List
4.  \mneg{}(n  \mleq{}  0)
\mvdash{}  lastn(n;L)  \msim{}  accumulate  (with  value  b  and  list  item  x):
                                if  ||b||  <z  n  then  b  @  [x]  else  tl(b  @  [x])  fi 
                              over  list:
                                  L
                              with  starting  value:
                                [])
By
Latex:
xxx(DVar  `L'  THEN  Reduce  0)xxx
Home
Index