| 0 < i0, ∀ i. ¬ i0 < i ∧ ¬ i < 0 → st[r1 -- (i1 + i) '] = st[r2 -- (i2 + i) '], ∀ j0, st, r1, i1, r2, i2. i→n(j0) < i→n(i0 + 1) → ((∀ i. ¬ i < 0 ∧ ¬ j0 ≤ i → st[r1 -- (i1 + i) '] = st[r2 -- (i2 + i) ']) → getarray(r1, i1, j0, st) = getarray(r2, i2, j0, st)) ⊦ getarray(r1, i1, i0, st) + st[r1 -- (i1 + i0) '] ' = getarray(r2, i2, i0 + 1, st) |
⊦ 1 < j → getarray(r, i, j, st) = getarray(r, i, j - 1, st) + st[r -- (i + j - 1) ']
1 < i0 + 1, 0 < i0, ∀ i. ¬ i0 < i ∧ ¬ i < 0 → st[r1 -- (i1 + i) '] = st[r2 -- (i2 + i) '], ∀ j0, st, r1, i1, r2, i2. i→n(j0) < i→n(i0 + 1) → ((∀ i. ¬ i < 0 ∧ ¬ j0 ≤ i → st[r1 -- (i1 + i) '] = st[r2 -- (i2 + i) ']) → getarray(r1, i1, j0, st) = getarray(r2, i2, j0, st)) ⊦ getarray(r1, i1, i0, st) + st[r1 -- (i1 + i0) '] ' = getarray(r2, i2, i0 + 1 - 1, st) + st[r2 -- (i2 + i0 + 1 - 1) ']
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ ((* j)) < i0 + ((* j0)) ↔ j - j0 < i0], [CSIMPSEQ : ⊦ ¬ i < j ↔ j ≤ i], [CSIMPSEQ : ⊦ i < j → (¬ ¬ j ≤ i ↔ false)], [CSIMPSEQ : ⊦ i + j + i0 = (i + j) + i0], [CSIMPSEQ : ⊦ i + j = j + i])], [EXTRATERMS : (st, i0 + 1, i2, r2)]]