| 0 ≤ i1, i + i1 < i0 ∨ i0 < i, ∀ j0, i0, i, r, st, val. i→n(j0) < i→n(i1 + 1) → (i0 < i ∨ i + j0 ≤ i0 → getarray(r, i, j0, st[r -- i0 ', val]) = getarray(r, i, j0, st)) ⊦ i = i0, st[r -- i '] ' + getarray(r, i + 1, i1, st[r -- i0 ', val]) = getarray(r, i, i1 + 1, st) |
0 < j ⊦ getarray(r, i, j, st) = st[r -- i '] ' + getarray(r, i + 1, j - 1, st)
0 < i1 + 1, 0 ≤ i1, i + i1 < i0 ∨ i0 < i, ∀ j0, i0, i, r, st, val. i→n(j0) < i→n(i1 + 1) → (i0 < i ∨ i + j0 ≤ i0 → getarray(r, i, j0, st[r -- i0 ', val]) = getarray(r, i, j0, st)) ⊦ i = i0, st[r -- i '] ' + getarray(r, i + 1, i1, st[r -- i0 ', val]) = st[r -- i '] ' + getarray(r, i + 1, i1 + 1 - 1, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ ((* j)) < i0 + ((* j0)) ↔ j - j0 < i0], [CSIMPSEQ : ⊦ (~1) < i ↔ 0 ≤ i], [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, i1 + 1, i, r)]]