| validFields(r0, fis, st), is_valid_ref(str, r0, st), junkrefs(str, r ', st[r -- _type] .type, st) ⊦ junkref(str, r, update(r0, fis, st)), path∃(str, r, r0, st), _type ∈ fis |
⊦ junkrefs(str, r ', ty, st) ↔ r ≠ jvmref ∧ (¬ is_valid_ref(str, r, st) ∨ ¬ st[r -- _type] .type ≤ ty)
validFields(r0, fis, st), is_valid_ref(str, r0, st), r ≠ jvmref ∧ (¬ is_valid_ref(str, r, st) ∨ ¬ st[r -- _type] .type ≤ st[r -- _type] .type) ⊦ junkref(str, r, update(r0, fis, st)), path∃(str, r, r0, st), _type ∈ fis
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, st[r -- _type] .type, r, str)]]