Problem [B2 from IMO 1972] f and g are real-valued functions defined on the real line. For all x and y,

f(x + y) + f(x − y) = 2f(x)g(y).

f is not identically zero and |f(x)| ≤ 1 for all x. Prove that |g(x)| ≤ 1 for all x.

Solution Let k be the least upper bound for |f(x)|. Suppose |g(y)| > 1. Then

2k ≥ |f(x + y)| + |f(x − y)| ≥ |f(x + y) + f(x − y)| = 2|g(y)||f(x)|, so |f(x)| ≤ k/|g(y)|. In other words, k/|g(y)| is an upper bound for |f(x)| which is less than k. Contradiction.