The aim of `dim_simplify` is to bring all dimensions next to each other in order to perform their specific operations. Thus if you have a general expression you will get in return a new expression but with dimensions simplified as much as possible. You get at the end just a dimension only if the computations contain only dimensions.
THe same is true for `qsimplify`.