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