| instore(r, class, (sk × val) ' + [], st) ↔ (r -- sk) × val ∈ st ∧ instore(r, class, [], st) ⊦ instore(r, class, (sk × val) + [], st) ↔ r ≠ jvmref ∧ r -- _type ∈ st ∧ st[r -- _type] = typeval(mkclasstype(class)) ∧ r -- sk ∈ st ∧ st[r -- sk] = val |
instore(r, class, (sk × val) ', st) ↔ r -- sk ∈ st ∧ st[r -- sk] = val ∧ instore(r, class, [], st) ⊦ instore(r, class, (sk × val) ', st) ↔ r ≠ jvmref ∧ r -- _type ∈ st ∧ st[r -- _type] = typeval(mkclasstype(class)) ∧ r -- sk ∈ st ∧ st[r -- sk] = val
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ fv + fis = fv ' + fis], [CSIMPSEQ : ⊦ rk × val ∈ st ↔ rk ∈ st ∧ st[rk] = val], [CSIMPSEQ : ⊦ (fis + fis0) + fis1 = fis + fis0 + fis1], [CSIMPSEQ : ⊦ fis + [] = fis])]]