| ∀ j0, r, r0, i, st, sk, val. i→n(j0) < i→n(j) → (true → r = r0 ∨ getarray(r, i, j0, st[r0 -- sk, val]) = getarray(r, i, j0, st)) ⊦ getarray(r, i, j, st[r0 -- sk, val]) = getarray(r, i, j, st), r = r0 |
⊦ 1 < j → getarray(r, i, j, st) = getarray(r, i, j - 1, st) + st[r -- (i + j - 1) ']
¬ 1 < j, ∀ j0, r, r0, i, st, sk, val. i→n(j0) < i→n(j) → (true → r = r0 ∨ getarray(r, i, j0, st[r0 -- sk, val]) = getarray(r, i, j0, st)) ⊦ getarray(r, i, j, st[r0 -- sk, val]) = getarray(r, i, j, st), r = r0
1 < j, ∀ j0, r, r0, i, st, sk, val. i→n(j0) < i→n(j) → (true → r = r0 ∨ getarray(r, i, j0, st[r0 -- sk, val]) = getarray(r, i, j0, st)) ⊦ getarray(r, i, j - 1, st[r0 -- sk, val]) + (st[r0 -- sk, val][r -- (i + j - 1) ']) = getarray(r, i, j, st), r = r0
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st[r0 -- sk, val], j, i, r)]]