| 0 ≤ i1, i1 ≤ n→i(# vals0), ∀ j0, i0, r0, st0. ¬ i0 < j0 ∧ ¬ j0 + n→i(# vals0) ≤ i0 → (addarray(r0, vals0, j0, st0)[r0 -- i0 ']) = vals0[i→n(i0 - j0)] ⊦ ((i1 = 0 ⊃ val; addarray(r, vals0, j + 1, st)[r -- (i1 + j) '])) = (val ' + vals0)[i→n(i1)] |
i1 ≠ 0, 0 ≤ i1, i1 ≤ n→i(# vals0), ∀ j0, i0, r0, st0. ¬ i0 < j0 ∧ ¬ j0 + n→i(# vals0) ≤ i0 → (addarray(r0, vals0, j0, st0)[r0 -- i0 ']) = vals0[i→n(i0 - j0)] ⊦ (addarray(r, vals0, j + 1, st)[r -- (i1 + j) ']) = (val ' + vals0)[i→n(i1)]
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (val ' + vals)[0] = val], [CSIMPSEQ : ⊦ (vals + vals0) + vals1 = vals + vals0 + vals1])]]