| ⊦ r = jvmref, (∀ rk. (rk = r -- sk ∨ rk ∈ st) ∧ rk .ref = jvmref ∧ ¬ is_indexkey(rk .key) ∧ rk .key .fs .type = void_type ∧ rk .key .fs .field = `initstate' .field → ((rk = r -- sk ⊃ val; st[rk])) ≠ initval(undone) ∧ ((rk = r -- sk ⊃ val; st[rk])) ≠ initval(error)) ↔ (∀ rk. rk ∈ st ∧ rk .ref = jvmref ∧ is_fskey(rk .key) ∧ rk .key .fs .type = void_type ∧ rk .key .fs .field = `initstate' .field → st[rk] ≠ initval(undone) ∧ st[rk] ≠ initval(error)), _uninit ∈ st |
∀ rk. (rk = r -- sk ∨ rk ∈ st) ∧ rk .ref = jvmref ∧ ¬ is_indexkey(rk .key) ∧ rk .key .fs .type = void_type ∧ rk .key .fs .field = `initstate' .field → ((rk = r -- sk ⊃ val; st[rk])) ≠ initval(undone) ∧ ((rk = r -- sk ⊃ val; st[rk])) ≠ initval(error) ⊦ ∀ rk. rk ∈ st ∧ rk .ref = jvmref ∧ is_fskey(rk .key) ∧ rk .key .fs .type = void_type ∧ rk .key .fs .field = `initstate' .field → st[rk] ≠ initval(undone) ∧ st[rk] ≠ initval(error), r = jvmref, _uninit ∈ st
∀ rk. rk ∈ st ∧ rk .ref = jvmref ∧ is_fskey(rk .key) ∧ rk .key .fs .type = void_type ∧ rk .key .fs .field = `initstate' .field → st[rk] ≠ initval(undone) ∧ st[rk] ≠ initval(error) ⊦ ∀ rk. (rk = r -- sk ∨ rk ∈ st) ∧ rk .ref = jvmref ∧ ¬ is_indexkey(rk .key) ∧ rk .key .fs .type = void_type ∧ rk .key .fs .field = `initstate' .field → ((rk = r -- sk ⊃ val; st[rk])) ≠ initval(undone) ∧ ((rk = r -- sk ⊃ val; st[rk])) ≠ initval(error), r = jvmref, _uninit ∈ st
[[CONCRETESIMPRULES : ()]]