Very simple fix for issue #8235

In solve_poly_inequality, the real roots of a polynomial are sorted. When the
roots are instances of RootOf, this will invoke bool() on an instance of
Relational, which raises a TypeError. One fix is to cast all the roots as
floats for comparison.

Fixes #8235
OK, we are at a stalemate. Let's see if I can lay out the positions clearly:

Your position: we should sort numerical roots consistently
My position: all polyroots functions sort consistently with default_sort_key

Your position: different functions still sort roots differently. Poly.all_roots vs roots_quadratic.
My position: all_roots is a rootoftools function and roots_quadratic is a polyroots function. We should not expect them to behave the same, especially when RootOf instances can't be sorted according to an expression. RootOf instances are sorted according to their interval

Your position:  all_roots() and all_roots(radicals=False) should not give different results
My position: agreed. Solution: fix the sorting of polyroots roots that are received from roots_quadratic in the RootOf function (_roots_trivial) that receives them so their ordering is consistent with other RootOf functions