| ⊦ class1 = class2, addclass(class1, fis + (mkfs(class2, ty, fieldvar) ' × val) ', st) = addclass(class1, fis, st) |
class1 ≠ class2 ⊦ addclass(class1, (mkfs(class2, ty, fieldvar) ' × val) ', st) = st[jvmref -- mkfs(class1, void_type, `initstate' .field) ', initval(done)]
⊦ addclass(class1, [], st) = st[jvmref -- mkfs(class1, void_type, `initstate' .field) ', initval(done)]
∀ class1, class2, ty, fieldvar, val, st. class1 = class2 ∨ addclass(class1, fis0 + (mkfs(class2, ty, fieldvar) ' × val) ', st) = addclass(class1, fis0, st) ⊦ class1 = class2 ∨ addclass(class1, (fv + fis0) + (mkfs(class2, ty, fieldvar) ' × val) ', st) = addclass(class1, fv + fis0, st)
[[CONCRETESIMPRULES : ([CSIMPGEN : fieldinits generated by [], +;], [CSIMPSEQ : ⊦ [] + fis = fis], [CSIMPSEQ : ⊦ (fis + fis0) + fis1 = fis + fis0 + fis1])]]