(a, b, x)
Returns "<" if a<b, "=" for a == b, ">" for a>b
Returns "<" if a<b, "=" for a == b, ">" for a>b
Returns < if a<b = for a == b > for a > b
def compare(a, b, x):
    """Returns "<" if a<b, "=" for a == b, ">" for a>b"""
    # log(exp(...)) must always be simplified here for termination
    la, lb = log(a), log(b)
    if isinstance(a, Basic) and a.func is exp:
        la = a.args[0]
    if isinstance(b, Basic) and b.func is exp:
        lb = b.args[0]

    c = limitinf(la/lb, x)
    if c == 0:
        return "<"
    elif c.is_unbounded:
        return ">"
    else:
        return "="
def compare ( a , b , x ) : # log(exp(...)) must always be simplified here for termination la , lb = log ( a ) , log ( b ) if isinstance ( a , Basic ) and a . func is exp : la = a . args [ 0 ] if isinstance ( b , Basic ) and b . func is exp : lb = b . args [ 0 ] c = limitinf ( la / lb , x ) if c == 0 : return "<" elif c . is_unbounded : return ">" else : return "="