| n→i(# refs) = countrefs(ints), posints(ints), rk ∈ st ⊦ ints = [], rk ∈ addmultiarrays(refs, ints .first, [], mktype_from_dims(ty, countdims(ints, i)), getdims(ints), st) |
ints = i0 + ints0, n→i(# refs) = countrefs(ints), posints(ints), rk ∈ st ⊦ ints = [], rk ∈ addmultiarrays(refs, i0, [], mktype_from_dims(ty, countdims(ints, i)), getdims(ints), st)
[[CONCRETESIMPRULES : ([CSIMPELIM : ints ≠ [] ⊦ i = ints .first ∧ ints0 = ints .rest ↔ ints = i + ints0])], [EXTRATERMS : (ints, i0, ints0)]]