| ⊦ okstore(st[r -- sk, val]) ∧ r ≠ jvmref → r -- _type ∈ st[r -- sk, val] ∧ is_typevalue(st[r -- sk, val][r -- _type]) |
⊦ okstore(st) → jvmref ∈ st
okstore(st[r -- sk, val]), jvmref ∈ st ⊦ r = jvmref, (r -- _type ∈ st ∨ _type = sk) ∧ is_typevalue((_type = sk ⊃ val; st[r -- _type]))
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ r ∈ st[r0 -- sk, val] ↔ r = r0 ∨ r ∈ st], [CSIMPSEQ : ⊦ (st[rk0, val][rk]) = ((rk = rk0 ⊃ val; st[rk]))], [CSIMPSEQ : ⊦ r -- sk = r0 -- sk0 ↔ ¬ ¬ (r = r0 ∧ sk = sk0)], [CSIMPSEQ : ⊦ rk ∈ st[rk0, val] ↔ rk = rk0 ∨ rk ∈ st])]]