| is_obj(str, r, st), fs ' ∈ instfields(st[r -- _type] .type .class), unchanged(str, r, st, st1) ⊦ r = jvmref, st[r -- fs '] = st1[r -- fs '] |
⊦ unchangedNorec(r, st, st0) ∧ fs ' ∈ instfields(st[r -- _type] .type .class) ∧ is_classtype(st[r -- _type] .type) ∧ r ≠ jvmref → st[r -- fs '] = st0[r -- fs ']
¬ (unchangedNorec(r, st, st1) ∧ fs ' ∈ instfields(st[r -- _type] .type .class) ∧ is_classtype(st[r -- _type] .type) ∧ r ≠ jvmref), is_obj(str, r, st), fs ' ∈ instfields(st[r -- _type] .type .class), unchanged(str, r, st, st1) ⊦ r = jvmref, st[r -- fs '] = st1[r -- fs ']
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (r, st, st1, fs)]]