1) Assuming f finite everywhere, (*) ==> x<>y ==> f(x)<>f(y)

2) Exchanging x and y in (*) we see that f(-x) = -f(x).

3) a <> 0 ==> f((a-a)/(a+a)) = (f(a)-f(a))/(f(a)+f(a)) ==> f(0) = 0.

4) a <> 0 ==> f((a+0)/(a-0)) = f(a)/f(a) ==> f(1) = 1.

5) x<>y, y<>0 ==> f(x/y) = f( ((x+y)/(x-y) + (x-y)/(x-y)) / ((x+y)/(x-y) - (x-y)/(x-y)) = f(x)/f(y) ==> f(xy) = f(x)f(y) by replacing x with xy and by noting that f(x*1) = f(x)*1 and f(x*0) = f(x)*f(0).

6) f(x*x) = f(x)*f(x) ==> f(x) > 0 if x>0.

7) Let a=1+\/2, b=1-\/2; a,b satisfy (x+1)/(x-1) = x ==> f(x) = (f(x)+1)/(f(x)-1) ==> f(a)=a, f(b)=b. f(1/\/2) = f((a+b)/(a-b))= (a+b)/(a-b) = 1/\/2 ==> f(2) = 2.

8) By induction and the relation f((n+1)/(n-1)) = (f(n)+1)/(f(n)-1)

we get that f(n)=n for all integer n. #5 now implies that f fixes the rationals.

9) If x>y>0 (*) ==> f(x) - f(y) = f(x+y)/f((x+y)/(x-y)) > 0 by #6.

Thus f is order-preserving.

Since f fixes the rationals **and** f is order-preserving, f must be the
identity function.

This was E2176 in "The American Mathematical Monthly" (the proposer was R. S. Luthar).