| st1[r -- sks0] = refval(r0), st1[r -- sks] = refval(r0), fits(r, sks, st1), fits(r, sks0, st1), st ⊆ st1 ⊦ sks0 = sks, sks0 = [], sks = [], r0 = jvmref, junkref(str, r, st), r -- sks ∈ st, st[r -- sks] .refval ≠ jvmref ∧ st[r -- sks] = st[r -- sks0] |
⊦ sks ≠ [] ∧ ¬ junkref(str, r, st) ∧ fits(r, sks, st) → r -- sks ∈ st
¬ (sks ≠ [] ∧ ¬ junkref(str, r, st) ∧ fits(r, sks, st)), st1[r -- sks0] = refval(r0), st1[r -- sks] = refval(r0), fits(r, sks, st1), fits(r, sks0, st1), st ⊆ st1 ⊦ sks0 = sks, sks0 = [], sks = [], r0 = jvmref, junkref(str, r, st), r -- sks ∈ st, st[r -- sks] .refval ≠ jvmref ∧ st[r -- sks] = st[r -- sks0]
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (sks, str, r, st)]]