Step
*
2
1
1
of Lemma
add-remove-nth
1. T : Type
2. u : T
3. v : T List
4. ∀[n:ℕ||v||]. (let x,L' = remove-nth(n;v) in add-nth(n;x;L') ~ v)
5. n : ℕ||v|| + 1
6. 0 < n
⊢ [u / 
   (firstn(n - 1;firstn(n - 1;v) @ nth_tl((n + 1) - 1;v))
   @ [[u / v][n] / nth_tl(n - 1;firstn(n - 1;v) @ nth_tl((n + 1) - 1;v))])] ~ [u / v]
BY
{ EqCD }
1
1. T : Type
2. u : T
3. v : T List
4. ∀[n:ℕ||v||]. (let x,L' = remove-nth(n;v) in add-nth(n;x;L') ~ v)
5. n : ℕ||v|| + 1
6. 0 < n
⊢ u ~ u
2
1. T : Type
2. u : T
3. v : T List
4. ∀[n:ℕ||v||]. (let x,L' = remove-nth(n;v) in add-nth(n;x;L') ~ v)
5. n : ℕ||v|| + 1
6. 0 < n
⊢ firstn(n - 1;firstn(n - 1;v) @ nth_tl((n + 1) - 1;v))
@ [[u / v][n] / nth_tl(n - 1;firstn(n - 1;v) @ nth_tl((n + 1) - 1;v))] ~ v
Latex:
Latex:
1.  T  :  Type
2.  u  :  T
3.  v  :  T  List
4.  \mforall{}[n:\mBbbN{}||v||].  (let  x,L'  =  remove-nth(n;v)  in  add-nth(n;x;L')  \msim{}  v)
5.  n  :  \mBbbN{}||v||  +  1
6.  0  <  n
\mvdash{}  [u  / 
      (firstn(n  -  1;firstn(n  -  1;v)  @  nth\_tl((n  +  1)  -  1;v))
      @  [[u  /  v][n]  /  nth\_tl(n  -  1;firstn(n  -  1;v)  @  nth\_tl((n  +  1)  -  1;v))])]  \msim{}  [u  /  v]
By
Latex:
EqCD
Home
Index