| ⊦ sk ≠ _type ∧ goodfieldandtype(r, sk, st) ∧ oktype(val, sk .fs .type, st) → (goodfieldandtype(r0, sk0, st[r -- sk, val]) ↔ goodfieldandtype(r0, sk0, st)) |
⊦ oktype(val, ty, st) ↔ okval(val, ty)
goodfieldandtype(r, sk, st), okval(val, sk .fs .type) ⊦ goodfieldandtype(r0, sk0, st[r -- sk, val]) ↔ goodfieldandtype(r0, sk0, st), sk = _type
[[CONCRETESIMPRULES : ()]]