| validrefs(str, refs + r0 ', ty, st), okval(val, ty0) ⊦ mkfs(class, ty0, fieldvar) ' = _length, mkfs(class, ty0, fieldvar) ' = _type, validrefs(str, refs + r0 ', ty, st[r -- mkfs(class, ty0, fieldvar) ', val]), r ∈ refs |
validrefs(str, [] + r0 ', ty, st), okval(val, ty0) ⊦ mkfs(class, ty0, fieldvar) ' = _length, mkfs(class, ty0, fieldvar) ' = _type, validrefs(str, [] + r0 ', ty, st[r -- mkfs(class, ty0, fieldvar) ', val]), r ∈ []
∀ str, r0, ty, st, val, ty0, class, fieldvar, r. validrefs(str, acc + r0 ', ty, st) ∧ okval(val, ty0) → mkfs(class, ty0, fieldvar) ' = _length ∨ mkfs(class, ty0, fieldvar) ' = _type ∨ validrefs(str, acc + r0 ', ty, st[r -- mkfs(class, ty0, fieldvar) ', val]) ∨ r ∈ acc, validrefs(str, (r1 + acc) + r0 ', ty, st), okval(val, ty0) ⊦ mkfs(class, ty0, fieldvar) ' = _length, mkfs(class, ty0, fieldvar) ' = _type, validrefs(str, (r1 + acc) + r0 ', ty, st[r -- mkfs(class, ty0, fieldvar) ', val]), r ∈ r1 + acc
[[CONCRETESIMPRULES : ([CSIMPGEN : references generated by [], +;])]]