| sk × val ∈ fis, ∀ sk0, val0. sk0 × val0 ∈ fis → is_integervalue(val0) ∧ is_fskey(sk0) ∧ is_arraytype(sk0 .fs .type) ∧ okarray(st[r -- sk0], sk0 .fs .type .type, val0 .intval, st) ⊦ r = jvmref, is_integervalue(val) ∧ ¬ is_indexkey(sk) ∧ is_arraytype(sk .fs .type) ∧ okarray(st[r -- sk], sk .fs .type .type, val .intval, addclass(class, fis0, st)) |
sk .fs = mkfs(class0, ty, fieldvar), sk × val ∈ fis, ∀ sk0, val0. sk0 × val0 ∈ fis → is_integervalue(val0) ∧ is_fskey(sk0) ∧ is_arraytype(sk0 .fs .type) ∧ okarray(st[r -- sk0], sk0 .fs .type .type, val0 .intval, st) ⊦ r = jvmref, is_integervalue(val) ∧ ¬ is_indexkey(sk) ∧ is_arraytype(ty) ∧ okarray(st[r -- sk], ty .type, val .intval, addclass(class, fis0, st))
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ class = fs .class ∧ ty = fs .type ∧ fieldvar = fs .field ↔ fs = mkfs(class, ty, fieldvar)])], [EXTRATERMS : (sk .fs, class0, ty, fieldvar)]]