| fs ' .fs = mkfs(class, ty0, fieldvar), is_fskey(fs '), r0 -- fs ' ∈ st, okval(st[r0 -- fs '], ty0), okval(val0, ty0), r0 ∈ st ⊦ exactarray(val, ty, i, st[r0 -- fs ', val0]) ↔ exactarray(val, ty, i, st), fs ' = _length, fs ' = _type |
r0 ∈ st, okval(val0, ty0), okval(st[r0 -- mkfs(class, ty0, fieldvar) '], ty0), r0 -- mkfs(class, ty0, fieldvar) ' ∈ st ⊦ mkfs(class, ty0, fieldvar) ' = _type, mkfs(class, ty0, fieldvar) ' = _length, exactarray(val, ty, i, st[r0 -- mkfs(class, ty0, fieldvar) ', val0]) ↔ exactarray(val, ty, i, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ is_fskey(fs ')], [CSIMPSEQ : ⊦ fs ' .fs = fs])]]