sympy/sympy — pull request #1621 by jrioux (2012-10-29 15:24:31+00:00)
Title: Piecewise canocalization

Remove consecutive identical conditions:
```
>>> Piecewise((x, x < 1), (0, x < 1), (0, True))
Piecewise((x, x < 1), (0, True))
```

Try to solve conditions upon substitution:
```
>>> Piecewise((1, Eq(x, y)), (0, True)).subs(x, y)
1
>>> Piecewise((1, Eq(x, y)), (0, True)).subs(x, -y)
Piecewise((1, Eq(y, 0)), (0, True))
```