| ¬ ( ¬ is_referencevalue(val) ∧ validstatfield(str, sk, st) ∧ is_fskey(mkfs(class, ty, fieldvar) ') ∧ oktype(val, mkfs(class, ty, fieldvar) ' .fs .type, st) ∧ mkfs(class, ty, fieldvar) ' .fs .type ≠ void_type ∧ mkfs(class, ty, fieldvar) ' ≠ _length), sk ∈ statfields(class0), validstatfields(str, st), okval(val, ty), tdname∃(str, class0), initdone(class0, st) ⊦ mkfs(class, ty, fieldvar) ' = _type, mkfs(class, ty, fieldvar) ' = _length, r = jvmref, is_referencevalue(val), validstatfield(str, sk, st[r -- mkfs(class, ty, fieldvar) ', val]) |
sk ∈ statfields(class0), validstatfields(str, st), okval(val, ty), tdname∃(str, class0), initdone(class0, st) ⊦ mkfs(class, ty, fieldvar) ' = _type, mkfs(class, ty, fieldvar) ' = _length, r = jvmref, is_referencevalue(val), validstatfield(str, sk, st[r -- mkfs(class, ty, fieldvar) ', val]), validstatfield(str, sk, st) ∧ ty ≠ void_type
[[CONCRETESIMPRULES : ([CSIMPNAMEDSEQ : okfuns, , oktype-okval, ⊦ oktype(val, ty, st) ↔ okval(val, ty)], [CSIMPNAMEDSEQ : fieldspec, , sel-03, ⊦ mkfs(class, ty, fieldvar) .type = ty], [CSIMPNAMEDSEQ : storekey, , sel-05, ⊦ fs ' .fs = fs], [CSIMPNAMEDSEQ : storekey, , test-05, ⊦ is_fskey(fs ')])]]