| newref(r0, st) ⊦ (∀ rk. rk ∈ st → rk ∈ arraycopy(r, i, r0, i0, j, st0) ∧ st[rk] = (arraycopy(r, i, r0, i0, j, st0)[rk])) ↔ (∀ rk. rk ∈ st → rk ∈ st0 ∧ st[rk] = st0[rk]), r0 = jvmref |
∀ rk. rk ∈ st → rk ∈ arraycopy(r, i, r0, i0, j, st0) ∧ st[rk] = (arraycopy(r, i, r0, i0, j, st0)[rk]), newref(r0, st) ⊦ ∀ rk. rk ∈ st → rk ∈ st0 ∧ st[rk] = st0[rk], r0 = jvmref
∀ rk. rk ∈ st → rk ∈ st0 ∧ st[rk] = st0[rk], newref(r0, st) ⊦ ∀ rk. rk ∈ st → rk ∈ arraycopy(r, i, r0, i0, j, st0) ∧ st[rk] = (arraycopy(r, i, r0, i0, j, st0)[rk]), r0 = jvmref
[[CONCRETESIMPRULES : ()]]