| _uninit ∈ st, sk .fs = mkfs(class0, ty, fieldvar), ¬ jvmref -- mkfs(class0, void_type, `initstate' .field) ' ∈ st ∧ _uninit ∈ st ∨ jvmref -- mkfs(class0, void_type, `initstate' .field) ' ∈ st ∧ st[jvmref -- mkfs(class0, void_type, `initstate' .field) '] = initval(undone), ∀ class. ¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st ∧ _uninit ∈ st ∨ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st ∧ st[jvmref -- mkfs(class, void_type, `initstate' .field) '] = initval(undone) ⊦ _uninit ∈ st ∧ (r -- sk ∈ st ∧ r = jvmref ∧ is_fskey(sk) ∧ ty = void_type ∧ fieldvar = `initstate' .field → st[jvmref -- sk] = initval(undone)) |
⊦ r -- sk ∈ st → r ∈ st
sk .fs = mkfs(class0, void_type, `initstate' .field), is_fskey(sk), jvmref -- sk ∈ st, _uninit ∈ st, jvmref ∈ st, ∀ class. ¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st ∨ st[jvmref -- mkfs(class, void_type, `initstate' .field) '] = initval(undone), ¬ jvmref -- mkfs(class0, void_type, `initstate' .field) ' ∈ st ∨ st[jvmref -- mkfs(class0, void_type, `initstate' .field) '] = initval(undone) ⊦ st[jvmref -- sk] = initval(undone)
[[CONCRETESIMPRULES : ()]]