| newref(r, st), newref(r, st0) ⊦ addarray(r, ty, vals, st ∪ st0) = st ∪ addarray(r, ty, vals, st0), r = jvmref |
⊦ st1 = st2 ↔ (∀ rk. (rk ∈ st1 ↔ rk ∈ st2) ∧ st1[rk] = st2[rk])
newref(r, st), newref(r, st0) ⊦ ∀ rk. (rk ∈ addarray(r, ty, vals, st ∪ st0) ↔ rk ∈ st ∪ addarray(r, ty, vals, st0)) ∧ (addarray(r, ty, vals, st ∪ st0)[rk]) = (st ∪ addarray(r, ty, vals, st0))[rk], r = jvmref
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st ∪ addarray(r, ty, vals, st0), addarray(r, ty, vals, st ∪ st0))]]