| st[r0 -- _type] = st0[r0 -- _type], path∃(str, r, r0, st), path∃(str, r, r0, st0) ⊦ r0 = jvmref, st[r0 -- sk] = st0[r0 -- sk], is_classtype(st0[r0 -- _type] .type), is_arraytype(st0[r0 -- _type] .type) |
⊦ ¬ is_valid_ref(r1, st) ∧ r1 ≠ jvmref → ¬ path∃(str, r, r1, st)
¬ (¬ is_valid_ref(r0, st0) ∧ r0 ≠ jvmref), st[r0 -- _type] = st0[r0 -- _type], path∃(str, r, r0, st), path∃(str, r, r0, st0) ⊦ r0 = jvmref, st[r0 -- sk] = st0[r0 -- sk], is_classtype(st0[r0 -- _type] .type), is_arraytype(st0[r0 -- _type] .type)
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st0, r0, r, str)]]