| j = i0 + 1, 0 < j, i < 0 ∨ j ≤ i, ∀ st, val, r, i, j0. i→n(j0) < i→n(j) → (i < 0 ∨ j0 ≤ i → (addarray(r, val, j0, st)[r -- i ']) = st[r -- i ']) ⊦ (addarray(r, val, i0, st)[r -- i0 ', val][r -- i ']) = st[r -- i '] |
0 ≤ i0, i < 0 ∨ i0 < i, ∀ st, val, r, i, j0. i→n(j0) < i→n(i0 + 1) → (i < 0 ∨ j0 ≤ i → (addarray(r, val, j0, st)[r -- i ']) = st[r -- i ']) ⊦ (addarray(r, val, i0, st)[r -- i0 ', val][r -- i ']) = st[r -- i ']
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j], [CSIMPSEQ : ⊦ i + 1 ≤ j ↔ i < j], [CSIMPSEQ : ⊦ i + j = j + i], [CSIMPSEQ : ⊦ i + j + i0 = (i + j) + i0], [CSIMPSEQ : ⊦ (~1) < i ↔ 0 ≤ i], [CSIMPSEQ : ⊦ ((* j)) < i0 + ((* j0)) ↔ j - j0 < i0])]]