| 2 ≤ i0, 0 ≤ i0, 0 < i0, ∀ i, ints0, refs, st, ty, r, ints1. ints#(ints1) < ints#(i0 + ints2) → (true → (addarraymultlist(r, ty, st, refs, ints1, ints0, i)[_mode]) = st[_mode]) ⊦ ints2 = [], (addarraymultlist (refs .first, ty, addarraymultlist (r, ty, st[r -- (i0 - 1) ', refval(refs .first)][r -- _type, typeval(mktype_from_dims(ty, (1 + n→i(# ints2)) + i))][r -- _length, intval(ints0 .first)], refs .rest, (i0 - 1) ' + ints2, ints0, i), restn(i→n(countrefs2((i0 - 1) ' + ints2)), refs .rest), ints2, ints0 .rest, i) [_mode ] ) = st[_mode] |
i0 = i1 + 1, 2 ≤ i0, 0 ≤ i0, 0 < i0, ∀ i, ints0, refs, st, ty, r, ints1. ints#(ints1) < ints#(i0 + ints2) → (true → (addarraymultlist(r, ty, st, refs, ints1, ints0, i)[_mode]) = st[_mode]) ⊦ ints2 = [], (addarraymultlist (refs .first, ty, addarraymultlist (r, ty, st[r -- i1 ', refval(refs .first)][r -- _type, typeval(mktype_from_dims(ty, (1 + n→i(# ints2)) + i))][r -- _length, intval(ints0 .first)], refs .rest, i1 ' + ints2, ints0, i), restn(i→n(countrefs2(i1 ' + ints2)), refs .rest), ints2, ints0 .rest, i) [_mode ] ) = st[_mode]
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ i0 = i - j ↔ i = i0 + j])], [EXTRATERMS : (i0, 1, i1)]]