Predicative Recursion, Constructive Diagonalization and the Elementary Functions