| sk0 .fs .field = `initstate' .field, sk0 .fs .type = void_type, is_fskey(sk0), jvmref -- sk0 ∈ st, jvmref ∈ 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) ⊦ r = jvmref, _uninit ∈ st, st[jvmref -- sk0] ≠ initval(undone) ∧ st[jvmref -- sk0] ≠ initval(error) |
sk0 = fs ', fs .field = `initstate' .field, fs .type = void_type, is_fskey(sk0), jvmref -- sk0 ∈ st, jvmref ∈ 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) ⊦ r = jvmref, _uninit ∈ st, st[jvmref -- sk0] ≠ initval(undone) ∧ st[jvmref -- sk0] ≠ initval(error)
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ is_fskey(sk) → (fs = sk .fs ↔ sk = fs ')])], [EXTRATERMS : (sk0, fs)]]