| ⊦ addarrays(r ' + r0 ' + r1 ', ty, 2 ' + 2 ', 0, st) = addarray(r, mkarraytype(ty), refval(r0) ' + refval(r1) ', addarray(r0, ty, 2, addarray(r1, ty, 2, st))), 3 = countrefs(2 ' + 2 ') |
⊦ # ints > 1 ∧ ints .first > 0 → countrefs(ints) = 1 + ints .first * countrefs(ints .rest)
⊦ countrefs(i ') = 1
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (i ' + ints) .rest = ints], [CSIMPSEQ : ⊦ # (ints + ints0) = # ints + # ints0], [CSIMPSEQ : ⊦ # i ' = 0 +1], [CSIMPSEQ : ⊦ (ints + ints0) + ints1 = ints + ints0 + ints1], [CSIMPSEQ : ⊦ (i ' + ints) .first = i])], [EXTRATERMS : (2 ' + 2 ')]]