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