| ⊦ mkfs(class, void_type, `initstate' .field) ' = _type, (st[jvmref -- mkfs(class, void_type, `initstate' .field) '] ≠ initval(error) ∨ ¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st) ∧ (st[jvmref -- mkfs(class, void_type, `initstate' .field) '] ≠ initval(undone) ∨ ¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st) ∧ (jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st ∨ ¬ _uninit ∈ addarrays(refs, ty, ints, i, st)) ↔ (¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st ∨ st[jvmref -- mkfs(class, void_type, `initstate' .field) '] ≠ initval(error)) ∧ ¬ initundone(class, st) |
⊦ initundone(class1, st) ↔ (jvmref -- mkfs(class1, void_type, `initstate' .field) ') × initval(undone) ∈ st ∨ ¬ jvmref -- mkfs(class1, void_type, `initstate' .field) ' ∈ st ∧ _uninit ∈ st
⊦ mkfs(class, void_type, `initstate' .field) ' = _type, (st[jvmref -- mkfs(class, void_type, `initstate' .field) '] ≠ initval(error) ∨ ¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st) ∧ (st[jvmref -- mkfs(class, void_type, `initstate' .field) '] ≠ initval(undone) ∨ ¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st) ∧ (jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st ∨ ¬ _uninit ∈ addarrays(refs, ty, ints, i, st)) ↔ (¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st ∨ st[jvmref -- mkfs(class, void_type, `initstate' .field) '] ≠ initval(error)) ∧ ¬ ( (jvmref -- mkfs(class, void_type, `initstate' .field) ') × initval(undone) ∈ st ∨ ¬ jvmref -- mkfs(class, void_type, `initstate' .field) ' ∈ st ∧ _uninit ∈ st)
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, class)]]