| is_fskey(mkfs(class, ty0, fieldvar) ') ⊦ r = r0, r0 -- mkfs(class, ty0, fieldvar) ' ∈ st ∧ oktype(st[r0 -- mkfs(class, ty0, fieldvar) '], ty0, addarray(r, ty, vals, st)) ↔ r0 -- mkfs(class, ty0, fieldvar) ' ∈ st ∧ oktype(st[r0 -- mkfs(class, ty0, fieldvar) '], mkfs(class, ty0, fieldvar) ' .fs .type, st) |
⊦ r = r0, r0 -- mkfs(class, ty0, fieldvar) ' ∈ st ∧ oktype(st[r0 -- mkfs(class, ty0, fieldvar) '], ty0, addarray(r, ty, vals, st)) ↔ r0 -- mkfs(class, ty0, fieldvar) ' ∈ st ∧ oktype(st[r0 -- mkfs(class, ty0, fieldvar) '], ty0, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ is_fskey(fs ')], [CSIMPSEQ : ⊦ mkfs(class, ty, fieldvar) .type = ty], [CSIMPSEQ : ⊦ fs ' .fs = fs])]]