| ∀ class1, st. (addclass(class1, fis0, st)[jvmref -- mkfs(class1, void_type, `initstate' .field) ']) = initval(done) ∨ mkfs(class1, void_type, `initstate' .field) ' ∈ fis0 ⊦ (addclass(class1, fv ' + fis0, st)[jvmref -- mkfs(class1, void_type, `initstate' .field) ']) = initval(done), mkfs(class1, void_type, `initstate' .field) ' ∈ fv ' + fis0 |
⊦ is_indexkey(fv .1) → addclass(class, fv ' + fis, st) = addclass(class, fis, st)
¬ is_indexkey(fv .1), ∀ class1, st. (addclass(class1, fis0, st)[jvmref -- mkfs(class1, void_type, `initstate' .field) ']) = initval(done) ∨ mkfs(class1, void_type, `initstate' .field) ' ∈ fis0 ⊦ (addclass(class1, fv ' + fis0, st)[jvmref -- mkfs(class1, void_type, `initstate' .field) ']) = initval(done), mkfs(class1, void_type, `initstate' .field) ' ∈ fv ' + fis0
is_indexkey(fv .1), ∀ class1, st. (addclass(class1, fis0, st)[jvmref -- mkfs(class1, void_type, `initstate' .field) ']) = initval(done) ∨ mkfs(class1, void_type, `initstate' .field) ' ∈ fis0 ⊦ (addclass(class1, fis0, st)[jvmref -- mkfs(class1, void_type, `initstate' .field) ']) = initval(done), mkfs(class1, void_type, `initstate' .field) ' ∈ fv ' + fis0
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, fis0, fv, class1)]]