| 0 ≤ i, onlyModified(str, r, st, st0), okbytearray(r1, st), okbytearray(r, st), 0 ≤ i1, ∀ i0, st1, str0, r0, st2, r2, j. ¬ i1 < j → ( okbytearray(r2, st2) ∧ okbytearray(r0, st2) ∧ onlyModified(str0, r2, st2, st1) ∧ ¬ i0 < 0 ∧ ¬ j < 0 → getbytearray(r0, i0, j, st2) = getbytearray(r0, i0, j, st1) ∨ r2 = r0), ∀ r1, st0, st, r, str, i, j0. i→n(j0) < i→n(i1 + 1) → ( 0 ≤ j0 ∧ 0 ≤ i ∧ onlyModified(str, r, st, st0) ∧ okbytearray(r1, st) ∧ okbytearray(r, st) ∧ (∀ i, st0, str, r1, st, r, j1. i→n(j1) < i→n(j0) → ( okbytearray(r, st) ∧ okbytearray(r1, st) ∧ onlyModified(str, r, st, st0) ∧ 0 ≤ i ∧ 0 ≤ j1 → getbytearray(r1, i, j1, st) = getbytearray(r1, i, j1, st0) ∨ r = r1)) → r = r1 ∨ getbytearray(r1, i, j0, st) = getbytearray(r1, i, j0, st0)) ⊦ r = r1, st[r1 -- i '] .byteval ' + getbytearray(r1, i + 1, i1, st) = st0[r1 -- i '] .byteval ' + getbytearray(r1, i + 1, i1, st0) |
0 ≤ i, onlyModified(str, r, st, st0), okbytearray(r1, st), okbytearray(r, st), 0 ≤ i1, ¬ i1 < i1 → ( okbytearray(r, st) ∧ okbytearray(r1, st) ∧ onlyModified(str, r, st, st0) ∧ ¬ i + 1 < 0 ∧ ¬ i1 < 0 → getbytearray(r1, i + 1, i1, st) = getbytearray(r1, i + 1, i1, st0) ∨ r = r1), ∀ i0, st1, str0, r0, st2, r2, j. ¬ i1 < j → ( okbytearray(r2, st2) ∧ okbytearray(r0, st2) ∧ onlyModified(str0, r2, st2, st1) ∧ ¬ i0 < 0 ∧ ¬ j < 0 → getbytearray(r0, i0, j, st2) = getbytearray(r0, i0, j, st1) ∨ r2 = r0), ∀ r1, st0, st, r, str, i, j0. i→n(j0) < i→n(i1 + 1) → ( 0 ≤ j0 ∧ 0 ≤ i ∧ onlyModified(str, r, st, st0) ∧ okbytearray(r1, st) ∧ okbytearray(r, st) ∧ (∀ i, st0, str, r1, st, r, j1. i→n(j1) < i→n(j0) → ( okbytearray(r, st) ∧ okbytearray(r1, st) ∧ onlyModified(str, r, st, st0) ∧ 0 ≤ i ∧ 0 ≤ j1 → getbytearray(r1, i, j1, st) = getbytearray(r1, i, j1, st0) ∨ r = r1)) → r = r1 ∨ getbytearray(r1, i, j0, st) = getbytearray(r1, i, j0, st0)) ⊦ r = r1, st[r1 -- i '] .byteval ' + getbytearray(r1, i + 1, i1, st) = st0[r1 -- i '] .byteval ' + getbytearray(r1, i + 1, i1, st0)
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (i + 1, st0, str, r1, st, r, i1)]]