| st .refs ∩ st1 .refs = ∅, jvmref -- fs ' ∈ st, validrefvalnotnull(str, st[jvmref -- fs '], ty, st), jvmref ∈ st1, jvmref ∈ st ⊦ |
⊦ validrefvalnotnull(str, val, ty, st) ↔ is_referencevalue(val) ∧ validrefnotnull(str, val .refval, ty, st)
st .refs ∩ st1 .refs = ∅, jvmref -- fs ' ∈ st, is_referencevalue(st[jvmref -- fs ']) ∧ validrefnotnull(str, st[jvmref -- fs '] .refval, ty, st), jvmref ∈ st1, jvmref ∈ st ⊦
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, ty, st[jvmref -- fs '], str)]]