| ((sk0 × val) ' + fis0)[sk] = refval(r), sk ∈ (sk0 × val) ' + fis0, ∀ sk, r. fis0[sk] = refval(r) ∧ sk ∈ fis0 → r = jvmref ∨ r ∈ fis0 .vals .nonnullrefs ⊦ r = jvmref, r ∈ (val ' + fis0 .vals) .nonnullrefs |
⊦ sk ≠ sk0 → ((sk0 × val) ' + fis)[sk] = fis[sk]
¬ sk ≠ sk0, ((sk0 × val) ' + fis0)[sk] = refval(r), sk ∈ (sk0 × val) ' + fis0, ∀ sk, r. fis0[sk] = refval(r) ∧ sk ∈ fis0 → r = jvmref ∨ r ∈ fis0 .vals .nonnullrefs ⊦ r = jvmref, r ∈ (val ' + fis0 .vals) .nonnullrefs
sk ≠ sk0, fis0[sk] = refval(r), sk ∈ (sk0 × val) ' + fis0, ∀ sk, r. fis0[sk] = refval(r) ∧ sk ∈ fis0 → r = jvmref ∨ r ∈ fis0 .vals .nonnullrefs ⊦ r = jvmref, r ∈ (val ' + fis0 .vals) .nonnullrefs
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (sk, fis0, val, sk0)]]