| fits(r, [], st) ⊦ junkref(str, r, st), ∃ refs. validrefs(str, r ' + refs, st[r -- _type] .type, st) ∧ # refs = # [] ∧ (∀ sks0. sks0 ⊑ [] ∧ sks0 ≠ [] → st[r -- sks0] .refval = (r ' + refs)[# sks0]) |
⊦ fits(r, [], st)
⊦ junkref(str, r, st), validrefs(str, r ', st[r -- _type] .type, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (refs + refs0) + refs1 = refs + refs0 + refs1], [CSIMPSEQ : ⊦ refs + [] = refs], [CSIMPSEQ : ⊦ sks ⊑ [] ↔ sks = []], [CSIMPSEQ : ⊦ # refs = 0 ↔ refs = []], [CSIMPSEQ : ⊦ # [] = 0])]]