Step
*
2
of Lemma
append-segment
1. T : Type
2. u : T
3. v : T List
4. ∀i:{0...||v||}. ∀j:{i...||v||}. ∀k:{j...||v||}.
     ((firstn(j - i;nth_tl(i;v)) @ firstn(k - j;nth_tl(j;v))) = firstn(k - i;nth_tl(i;v)) ∈ (T List))
5. i : {0...||[u / v]||}
6. j : {i...||[u / v]||}
7. k : {j...||[u / v]||}
⊢ (firstn(j - i;nth_tl(i;[u / v])) @ firstn(k - j;nth_tl(j;[u / v]))) = firstn(k - i;nth_tl(i;[u / v])) ∈ (T List)
BY
{ (RecUnfold `nth_tl` 0 THEN AutoSplit) }
1
1. T : Type
2. u : T
3. v : T List
4. ∀i:{0...||v||}. ∀j:{i...||v||}. ∀k:{j...||v||}.
     ((firstn(j - i;nth_tl(i;v)) @ firstn(k - j;nth_tl(j;v))) = firstn(k - i;nth_tl(i;v)) ∈ (T List))
5. i : {0...||[u / v]||}
6. j : {i...||[u / v]||}
7. k : {j...||[u / v]||}
8. i ≤ 0
⊢ (firstn(j - i;[u / v]) @ firstn(k - j;if j ≤z 0 then [u / v] else nth_tl(j - 1;v) fi ))
= firstn(k - i;[u / v])
∈ (T List)
2
1. T : Type
2. u : T
3. v : T List
4. ∀i:{0...||v||}. ∀j:{i...||v||}. ∀k:{j...||v||}.
     ((firstn(j - i;nth_tl(i;v)) @ firstn(k - j;nth_tl(j;v))) = firstn(k - i;nth_tl(i;v)) ∈ (T List))
5. i : {0...||[u / v]||}
6. ¬(i ≤ 0)
7. j : {i...||[u / v]||}
8. k : {j...||[u / v]||}
⊢ (firstn(j - i;nth_tl(i - 1;v)) @ firstn(k - j;nth_tl(j - 1;v))) = firstn(k - i;nth_tl(i - 1;v)) ∈ (T List)
Latex:
Latex:
1.  T  :  Type
2.  u  :  T
3.  v  :  T  List
4.  \mforall{}i:\{0...||v||\}.  \mforall{}j:\{i...||v||\}.  \mforall{}k:\{j...||v||\}.
          ((firstn(j  -  i;nth\_tl(i;v))  @  firstn(k  -  j;nth\_tl(j;v)))  =  firstn(k  -  i;nth\_tl(i;v)))
5.  i  :  \{0...||[u  /  v]||\}
6.  j  :  \{i...||[u  /  v]||\}
7.  k  :  \{j...||[u  /  v]||\}
\mvdash{}  (firstn(j  -  i;nth\_tl(i;[u  /  v]))  @  firstn(k  -  j;nth\_tl(j;[u  /  v])))
=  firstn(k  -  i;nth\_tl(i;[u  /  v]))
By
Latex:
(RecUnfold  `nth\_tl`  0  THEN  AutoSplit)
Home
Index