| init⊆(str, st, st0) ⊦ init⊆(str, st, st0[jvmref -- mkfs(class, int_type, fieldvar) ', intval(i)]) |
⊦ validstatfield(str, rk .key, st0[rk, val]) ∧ init⊆(str, st, st0) ∧ rk .ref = jvmref ∧ (¬ is_fskey(rk .key) ∨ rk .key .fs .type ≠ void_type ∨ rk .key .fs .field ≠ `initstate' .field ∧ rk ≠ _uninit) → init⊆(str, st, st0[rk, val])
¬ ( validstatfield(str, (jvmref -- mkfs(class, int_type, fieldvar) ') .key, st0[jvmref -- mkfs(class, int_type, fieldvar) ', intval(i)]) ∧ init⊆(str, st, st0) ∧ (jvmref -- mkfs(class, int_type, fieldvar) ') .ref = jvmref ∧ ( ¬ is_fskey((jvmref -- mkfs(class, int_type, fieldvar) ') .key) ∨ (jvmref -- mkfs(class, int_type, fieldvar) ') .key .fs .type ≠ void_type ∨ (jvmref -- mkfs(class, int_type, fieldvar) ') .key .fs .field ≠ `initstate' .field ∧ jvmref -- mkfs(class, int_type, fieldvar) ' ≠ _uninit)), init⊆(str, st, st0) ⊦ init⊆(str, st, st0[jvmref -- mkfs(class, int_type, fieldvar) ', intval(i)])
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (intval(i), jvmref -- mkfs(class, int_type, fieldvar) ', st0, st, str)]]