| ⊦ r -- fs ' ∈ st ∧ oktype(st[r -- fs '], fs .type, st) ∧ oktype(val, fs .type, st) ∧ fs ' ≠ _type ∧ fs ' ≠ _length → (okarray(r, ty, st[r -- fs ', val]) ↔ okarray(r, ty, st)) |
⊦ okarray(r, ty, st) ∧ oktype(val, fs .type, st) ∧ fs ' ≠ _type ∧ fs ' ≠ _length → okarray(r, ty, st[r -- fs ', val])
⊦ oktype(val, ty, st) ↔ okval(val, ty)
⊦ okarray(r, ty, st) → r ≠ jvmref ∧ r ∈ st
r ∈ st, okval(val, fs .type), okval(st[r -- fs '], fs .type), r -- fs ' ∈ st, okarray(r, ty, st[r -- fs ', val]) ⊦ r = jvmref, fs ' = _type, fs ' = _length, okarray(r, ty, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ r ∈ st[r -- sk, val]], [CSIMPFORWARD : ⊦ r -- sk ∈ st → r ∈ st])]]