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