| sk ∈ statfields(class) ⊦ is_fskey(sk) ∧ sk ∈ statfields(sk .fs .class) ∧ tdname∃(str, sk .fs .class) ∧ (initdone(sk .fs .class, st) → validfield(str, jvmref, sk, st[_mode, val])) ↔ validstatfield(str, sk, st) |
sk .fs = mkfs(class0, ty, fieldvar), sk ∈ statfields(class) ⊦ is_fskey(sk) ∧ sk ∈ statfields(class0) ∧ tdname∃(str, class0) ∧ (initdone(class0, st) → validfield(str, jvmref, sk, st[_mode, val])) ↔ validstatfield(str, sk, st)
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ class = fs .class ∧ ty = fs .type ∧ fieldvar = fs .field ↔ fs = mkfs(class, ty, fieldvar)])], [EXTRATERMS : (sk .fs, class0, ty, fieldvar)]]