| ¬ r ≠ r1, st[r -- _type] = typeval(mkarraytype(ty0)), r ∈ st, okval(val, ty), okarray(r, ty0, st), r -- _type ∈ st ⊦ r = jvmref, ty = void_type, mkfs(class, ty, fieldvar) ' = _length, okarray(r, ty0, st[r1 -- mkfs(class, ty, fieldvar) ', val]) |
⊦ okarray(r, ty, st) → r ≠ jvmref ∧ r ∈ st
st[r1 -- _type] = typeval(mkarraytype(ty0)), okval(val, ty), okarray(r1, ty0, st), r1 -- _type ∈ st, r1 ∈ st ⊦ r1 = jvmref, ty = void_type, mkfs(class, ty, fieldvar) ' = _length, okarray(r1, ty0, st[r1 -- mkfs(class, ty, fieldvar) ', val])
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ r -- sk ∈ st → r ∈ st])]]