Putnam Puzzler 2010

Question:
Consider a set S and a binary operation *, i.e. for each a, b in S, a*b is also in S. Assume that (a*b)*a = b for all a, b in S. Prove that a*(b*a) = b for all a, b in S.

Solution:
The hypothesis implies that ((b*a)*b)*(b*a) = b for all a, b in S by replacing a with b*a. Hence, a*(b*a) = b for all a,b in S using (b*a)*b = a.