| fs = mkfs(class0, ty0, fieldvar0), r -- mkfs(class, ty, fieldvar) ' ∈ st, okval(val, ty), r ∈ st, okval(st[r -- mkfs(class, ty, fieldvar) '], ty) ⊦ mkfs(class, ty, fieldvar) ' = _type, r0 -- fs ' ∈ st[r -- mkfs(class, ty, fieldvar) ', val] ∧ okval(st[r -- mkfs(class, ty, fieldvar) ', val][r0 -- fs '], ty0) ↔ r0 -- fs ' ∈ st ∧ okval(st[r0 -- fs '], ty0) |
r -- mkfs(class, ty, fieldvar) ' ∈ st, okval(val, ty), r ∈ st, okval(st[r -- mkfs(class, ty, fieldvar) '], ty) ⊦ mkfs(class, ty, fieldvar) ' = _type, r0 -- mkfs(class0, ty0, fieldvar0) ' ∈ st[r -- mkfs(class, ty, fieldvar) ', val] ∧ okval(st[r -- mkfs(class, ty, fieldvar) ', val][r0 -- mkfs(class0, ty0, fieldvar0) '], ty0) ↔ r0 -- mkfs(class0, ty0, fieldvar0) ' ∈ st ∧ okval(st[r0 -- mkfs(class0, ty0, fieldvar0) '], ty0)
[[CONCRETESIMPRULES : ()]]