Calling a subclass method is just wrong wrt. OOP principles. Besides, I believe that it will fail whenever it's executed: it requires self to be an instance of TensMul, but when that's the case, `TensMul.__mul__` is called directly instead of `TensExpr.__mul__`.