I don't agree with your statement *"60 is not the reverse of 6"*. Of course it is. Lets start from your last sentence. 6=06. If they are equal, reversing 6 is the same as reversing 06 -- which is 60.

I know it's silly nitpicking, but for the sake of argument, I have to agree with Mike H that the age reversal either works only in one direction, or else not at all. If we agree that the "reverse of x" is the result of writing the digits of x in the opposite order, then wouldn't it make sense that, given any input, there's only one correct way to reverse it? If so, then we can define reversal as a function, f(x) = r, where r is the reverse of x. The expected outcome then, is "of course":

f(60) = 06 ... i.e., the son's age is the reverse of the father's age

f(6) = 6 ... i.e., the father's age is NOT the reverse of the son's age

But you say that if we can accept "06 = 6" we can therefore substitute 06 for 6 as the input to the function, f(06) = 60. So the son's age is now "06"? This logic seems faulty. Removing the leading zero is a reasonable simplification, but adding them at will to the input completely breaks down the idea that reversal is a function. For example:

f(0060) = 0600 = 600 ... so the reverse of the father's age is

*of course* 600. Does that make any sense?

I understand the statement was in there for misdirection, and it worked in my case, because I immediately ruled out any single digit possibilities, but I think that basing the misdirection on logic like this actually makes the problem less satisfying.

**Edited by Duh Puck, 22 March 2008 - 05:14 PM.**