| ⊦ r2 ∈ st0 ∧ 0 < i3 ∧ okarray(r2, int_type, st0) ∧ 0 ≤ i ∧ i < i3 ∧ 0 ≤ i2 ∧ i2 + i3 ≤ st0[r2 -- _length] .intval → r2 = jvmref ∨ r1 = r2 ∨ (r -- sk ∈ arraycopy(r1, i1, r2, i2, i3, st0[r2 -- (i2 + i) ', val]) ↔ r -- sk ∈ arraycopy(r1, i1, r2, i2, i3, st0)) ∧ (arraycopy(r1, i1, r2, i2, i3, st0[r2 -- (i2 + i) ', val])[r -- sk]) = (arraycopy(r1, i1, r2, i2, i3, st0)[r -- sk]) |
i2 + i3 ≤ st0[r2 -- _length] .intval, 0 ≤ i2, i < i3, 0 ≤ i, okarray(r2, int_type, st0), 0 < i3, r2 ∈ st0 ⊦ r1 = r2, r2 = jvmref, (r -- sk ∈ arraycopy(r1, i1, r2, i2, i3, st0[r2 -- (i2 + i) ', val]) ↔ r -- sk ∈ arraycopy(r1, i1, r2, i2, i3, st0)) ∧ (arraycopy(r1, i1, r2, i2, i3, st0[r2 -- (i2 + i) ', val])[r -- sk]) = (arraycopy(r1, i1, r2, i2, i3, st0)[r -- sk])
[[CONCRETESIMPRULES : ()]]