| 0 ≤ i, i→n(i) < # vals0, # vals + i→n(i) ≤ # vals0, # vals + i→n(i) + n0 < # vals0, 0 ≤ (n→i(n0) + n→i(# vals)) + i, # vals + i→n(i) + n0 < # vals0, 0 ≤ i + n→i(# vals) ⊦ vals0 = [], vals0[# vals + i→n(i) + n0] = (restn(# vals + i→n(i), vals0)[n0]) |
⊦ m + n < # vals → (restn(m, vals)[n]) = vals[m + n]
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (m + n0) + n1 = m + n0 + n1], [CSIMPSEQ : ⊦ m + n = n + m])], [EXTRATERMS : (n0, vals0, # vals + i→n(i))]]