| contains(str, mkarraytype(ty) ' + tys) ⊦ tys = [], contains(str, ty ' + tys .rest) |
tys = ty0 + tys0, contains(str, mkarraytype(ty) ' + tys) ⊦ tys = [], contains(str, ty ' + tys0)
[[CONCRETESIMPRULES : ([CSIMPELIM : tys ≠ [] ⊦ ty = tys .first ∧ tys0 = tys .rest ↔ tys = ty + tys0])], [EXTRATERMS : (tys, ty0, tys0)]]