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