| ∀ sks, sks0. ¬ fits(r0, sks, st) ∨ ¬ fits(r0, sks0, st) ∨ sks = sks0 ∨ sks = [] ∨ sks0 = [] ∨ st[r0 -- sks] .refval = jvmref ∨ st[r0 -- sks] ≠ st[r0 -- sks0], is_shortvalue(st[r -- mkfs(class, short_type, fieldvar) ']) ⊦ ∀ sks, sks0. ¬ fits(r0, sks, st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)]) ∨ ¬ fits(r0, sks0, st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)]) ∨ sks = sks0 ∨ sks = [] ∨ sks0 = [] ∨ (st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)][r0 -- sks]) .refval = jvmref ∨ (st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)][r0 -- sks]) ≠ (st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)][r0 -- sks0]), r = jvmref, junkref(str, r0, st) |
(st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)][r0 -- sks0]) = (st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)][r0 -- sks]), fits(r0, sks0, st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)]), fits(r0, sks, st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)]), is_shortvalue(st[r -- mkfs(class, short_type, fieldvar) ']), ∀ sks, sks0. ¬ fits(r0, sks, st) ∨ ¬ fits(r0, sks0, st) ∨ sks = sks0 ∨ sks = [] ∨ sks0 = [] ∨ st[r0 -- sks] .refval = jvmref ∨ st[r0 -- sks] ≠ st[r0 -- sks0] ⊦ sks0 = sks, sks0 = [], sks = [], (st[r -- mkfs(class, short_type, fieldvar) ', shortval(sho)][r0 -- sks]) .refval = jvmref, r = jvmref, junkref(str, r0, st)
[[CONCRETESIMPRULES : ()]]