| i > 0, ∀ sk, st, val, r0, r, i0. i→n(i0) < i→n(i) → (true → r = r0 ∨ (addarray(r, val, i0, st)[r0 -- sk]) = st[r0 -- sk]) ⊦ (addarray(r, val, i - 1, st)[r -- (i - 1) ', val][r0 -- sk]) = st[r0 -- sk], r = r0 |
0 < i, ∀ sk, st, val, r0, r, i0. i→n(i0) < i→n(i) → (true → r = r0 ∨ (addarray(r, val, i0, st)[r0 -- sk]) = st[r0 -- sk]) ⊦ r = r0, (addarray(r, val, i - 1, st)[r0 -- sk]) = st[r0 -- sk]
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ i < j ∧ 0 ≤ i → 0 < j], [CSIMPSEQ : ⊦ i > j ↔ j < i], [CSIMPSEQ : ⊦ r ≠ r0 → (st[r0 -- sk0, val][r -- sk]) = st[r -- sk]])]]