Exercise 4.3.4 solution