Again, there are three reasons why SymPy does not do automatic simplification:

1. It might not be mathematically correct.
2. It might be expensive.
3. One might want to be able to express the unsimplified form.

You are focusing only on 1, which is important, but might lead the the wrong impression that if it is mathematically OK that SymPy will do it automatically.  An example of 2 and 3 is `(x + 1)**2 - (x**2 + 2*x + 1)`.