| r -- fs ' ∈ st, okval(st[r -- fs '], fs .type), okval(val, fs .type), r ∈ st ⊦ junkrefs(str, refs + r ', ty, st[r -- fs ', val]) ↔ junkrefs(str, refs + r ', ty, st), fs ' = _type, fs ' = _length, r ∈ refs |
r -- fs ' ∈ st, okval(st[r -- fs '], fs .type), okval(val, fs .type), r ∈ st ⊦ junkrefs(str, [] + r ', ty, st[r -- fs ', val]) ↔ junkrefs(str, [] + r ', ty, st), fs ' = _type, fs ' = _length, r ∈ []
∀ r, fs, st, val, str, ty. r -- fs ' ∈ st ∧ okval(st[r -- fs '], fs .type) ∧ okval(val, fs .type) ∧ r ∈ st → (junkrefs(str, acc + r ', ty, st[r -- fs ', val]) ↔ junkrefs(str, acc + r ', ty, st)) ∨ fs ' = _type ∨ fs ' = _length ∨ r ∈ acc, r -- fs ' ∈ st, okval(st[r -- fs '], fs .type), okval(val, fs .type), r ∈ st ⊦ junkrefs(str, (r0 + acc) + r ', ty, st[r -- fs ', val]) ↔ junkrefs(str, (r0 + acc) + r ', ty, st), fs ' = _type, fs ' = _length, r ∈ r0 + acc
[[CONCRETESIMPRULES : ([CSIMPGEN : references generated by [], +;])]]