| ¬ 1 < i1 + 1, 0 ≤ i1, ∀ st, val, r, i0. i→n(i0) < i→n(i1 + 1) → (0 ≤ i0 → getarray(r, 0, i0, addarray(r, val, i0, st)) = mklist(val, i→n(i0))) ⊦ getarray(r, 0, i1 + 1, addarray(r, val, i1, st)[r -- i1 ', val]) = mklist(val, i→n(i1)) + val ' |
⊦ addarray(r, val, 0, st) = st
∀ st, val, r, i0. i→n(i0) < i→n(0 + 1) → (0 ≤ i0 → getarray(r, 0, i0, addarray(r, val, i0, st)) = mklist(val, i→n(i0))) ⊦ getarray(r, 0, 1, st[r -- 0 ', val]) = val '
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (vals + vals0) + vals1 = vals + vals0 + vals1], [CSIMPSEQ : ⊦ [] + vals = vals], [CSIMPSEQ : ⊦ mklist(val, 0) = []], [CSIMPSEQ : ⊦ i + j = j + i], [CSIMPSEQ : ⊦ i + j + i0 = (i + j) + i0], [CSIMPSEQ : ⊦ i ≤ j → (j ≤ i ↔ i = j)], [CSIMPSEQ : ⊦ ¬ i < j ↔ j ≤ i], [CSIMPSEQ : ⊦ ((* j)) < i0 + ((* j0)) ↔ j - j0 < i0])]]