| ⊦ (jvmref -- mkfs(class1, void_type, `initstate' .field) ') × initval(undone) ∈ addarray(r, val, i, st) ∨ ¬ jvmref -- mkfs(class1, void_type, `initstate' .field) ' ∈ addarray(r, val, i, st) ∧ _uninit ∈ addarray(r, val, i, st) ↔ initundone(class1, st) |
⊦ r -- fs ' ∈ addarray(r0, val, i, st) ↔ r -- fs ' ∈ st
⊦ (addarray(r0, val, i, st)[r -- fs ']) = st[r -- fs ']
⊦ jvmref -- mkfs(class1, void_type, `initstate' .field) ' ∈ st ∧ st[jvmref -- mkfs(class1, void_type, `initstate' .field) '] = initval(undone) ∨ ¬ jvmref -- mkfs(class1, void_type, `initstate' .field) ' ∈ st ∧ _uninit ∈ addarray(r, val, i, st) ↔ initundone(class1, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ rk × val ∈ st ↔ rk ∈ st ∧ st[rk] = val])]]