| initundone(class, addobj(jvmref, class0, fis, st[jvmref -- mkfs(class, void_type, `initstate' .field) ', initval(error)])) ⊦ mkfs(class, void_type, `initstate' .field) ' ∈ fis |
⊦ ¬ sk ∈ fis ∧ sk ≠ _type → (addobj(r, class1, fis, st)[r -- sk, val]) = addobj(r, class1, fis, st[r -- sk, val])
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ stringvar .field = stringvar0 .field ↔ stringvar = stringvar0], [CSIMPFORWARD : ⊦ _type = mkfs(class1, ty, fieldvar) ' → class1 = `java.lang.Object' .class ∧ ty = void_type ∧ fieldvar = `type' .field], [CSIMPSEQ : ⊦ initundone (class1, st[ jvmref -- mkfs (class1, void_type, `initstate' .field) ', val]) ↔ val = initval(undone)], [CSIMPSEQ : ⊦ initval(istate) = initval(istate0) ↔ istate = istate0], [CSIMPSEQ : ⊦ error ≠ undone])], [EXTRATERMS : (initval(error), mkfs(class, void_type, `initstate' .field) ', st, fis, class0, jvmref)]]