'Return a canonical form of the relational by putting a
Number on the rhs else ordering the args. No other
simplification is attempted.
Examples
>>> from sympy.abc import x, y
>>> x < 2
x < 2
>>> _.reversed.canonical
x < 2
>>> (-y < x).canonical
x > -y
>>> (-y > x).canonical
x < -y'

@property
def canonical(self):

    args = self.args
    r = self
    if r.rhs.is_Number:
        if (r.lhs.is_Number and (r.lhs > r.rhs)):
            r = r.reversed
    elif r.lhs.is_Number:
        r = r.reversed
    elif (tuple(ordered(args)) != args):
        r = r.reversed
    return r
