| mkfs(str2 .class, mkclasstype(str0 .class), str1 .field) ' ∈ instfields(st[r -- _type] .type .class) ⊦ is_obj(str, r, st) → refval(st[r -- mkfs(str2 .class, mkclasstype(str0 .class), str1 .field) '] .refval) = st[r -- mkfs(str2 .class, mkclasstype(str0 .class), str1 .field) '] |
⊦ is_referencevalue(val) → refval(val .refval) = val
¬ is_referencevalue(st[r -- mkfs(str2 .class, mkclasstype(str0 .class), str1 .field) ']), mkfs(str2 .class, mkclasstype(str0 .class), str1 .field) ' ∈ instfields(st[r -- _type] .type .class) ⊦ is_obj(str, r, st) → refval(st[r -- mkfs(str2 .class, mkclasstype(str0 .class), str1 .field) '] .refval) = st[r -- mkfs(str2 .class, mkclasstype(str0 .class), str1 .field) ']
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st[ r -- mkfs (str2 .class, mkclasstype(str0 .class), str1 .field) '])]]