| 0 < j, ∀ r, r0, i, j, st. r = r0 ∨ getarray(r, i, j, putArray(vals0, r0, i, st)) = getarray(r, i, j, st) ⊦ r = r0, st[r -- i '] ' + getarray(r, i + 1, j - 1, putArray(vals0, r0, i + 1, st)[r0 -- i ', val]) = getarray(r, i, j, st) |
j = i0 + 1, 0 < j, ∀ r, r0, i, j, st. r = r0 ∨ getarray(r, i, j, putArray(vals0, r0, i, st)) = getarray(r, i, j, st) ⊦ r = r0, st[r -- i '] ' + getarray(r, i + 1, i0, putArray(vals0, r0, i + 1, st)[r0 -- i ', val]) = getarray(r, i, j, st)
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ i0 = i - j ↔ i = i0 + j])], [EXTRATERMS : (j, 1, i0)]]