EuroGP 2006: Genetic Programming pp 310-319

# Invariance of Function Complexity Under Primitive Recursive Functions

• John R. Woodward
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3905)

## Abstract

Genetic Programming (GP) [1] often uses a tree form of a graph to represent solutions. An extension to this representation, Automatically Defined Functions (ADFs) [1] is to allow the ability to express modules. In [2] we proved that the complexity of a function is independent of the primitive set (function set and terminal set) if the representation has the ability to express modules. This is essentially due to the fact that if a representation can express modules, then it can effectively define its own primitives at a constant cost. This is reminiscent of the result that the complexity of a bit string is independent of the choice of Universal Turing Machine (UTM) (within an additive constant) [3], the constant depending on the UTM but not on the function.

The representations typically used in GP are not capable of expressing recursion, however a few researchers have introduced recursion into their representations. These representations are then capable of expressing a wider classes of functions, for example the primitive recursive functions (PRFs). We prove that given two representations which express the PRFs (and only the PRFs), the complexity of a function with respect to either of these representations is invariant within an additive constant. This is in the same vein as the proof of the invariants of Kolmogorov complexity [3] and the proof in [2].

## Keywords

Genetic Programming Recursive Function Additive Constant Minimum Description Length Total Function
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

## References

1. 1.
Banzhaf, W., Nordin, P., Keller, R.E., Francone, F.D.: Genetic Programming – An Introduction. In: On the Automatic Evolution of Computer Programs and its Applications, dpunkt.verlag, Morgan Kaufmann, San Francisco (1998)Google Scholar
2. 2.
Woodward, J.R.: Modularity in genetic programming. In: Ryan, C., Soule, T., Keijzer, M., Tsang, E.P.K., Poli, R., Costa, E. (eds.) EuroGP 2003. LNCS, vol. 2610, Springer, Heidelberg (2003)Google Scholar
3. 3.
Li, M., Vitanyi, P.M.B.: An Introduction to Kolmogorov Complexity and Its Applications. Springer, Berlin (1993)
4. 4.
Grnwald, P.D., Myung, I.J., Pitt, M.A.: Advances in Minimum Description Length Theory and Applications. MIT Press, Cambridge (2005)Google Scholar
5. 5.
Bishop, C.M.: Neural networks for pattern recognition. Oxford University Press, Oxford (1996)
6. 6.
Cramer, N.L.: A representation for the adaptive generation of simple programs. In: International Conference on Genetic Algorithms and Their Applications, pp. 183–187 (1985)Google Scholar
7. 7.
Brave, S.: Evolving recursive programs for tree search. In: Angeline, P.J., Kinnear Jr., K.E. (eds.) Advances in Genetic Programming, vol. 2, pp. 203–220. MIT Press, Cambridge (1996)Google Scholar
8. 8.
Koza, J.R.: Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press, Cambridge (1992)
9. 9.
Yu, T.: Hierachical processing for evolving recursive and modular programs using higher order functions and lambda abstractions. Genetic Programming and Evolvable Machines 2(4), 345–380 (2001)
10. 10.
Spector, L.: Simultaneous evolution of programs and their control structures. In: Angeline, P.J., Kinnear Jr., K.E. (eds.) Advances in Genetic Programming, vol. 2, pp. 137–154. MIT Press, Cambridge (1996)Google Scholar
11. 11.
Wong, M.L., Leung, K.S.: Evolving recursive functions for the even-parity problem using genetic programming. In: Angeline, P.J., Kinnear Jr., K.E. (eds.) Advances in Genetic Programming, vol. 2, pp. 221–240. MIT Press, Cambridge (1996)Google Scholar
12. 12.
Huelsbergen, L.: Learning recursive sequences via evolution of machine-language programs. In: Koza, J.R., Deb, K., Dorigo, M., Fogel, D.B., Garzon, M., Iba, H., Riolo, R.L. (eds.) Genetic Programming 1997: Proceedings of the Second Annual Conference, Stanford University, CA, USA, pp. 186–194. Morgan Kaufmann, San Francisco (1997)Google Scholar
13. 13.
Vallejo, E.E., Ramos, F.: Evolving turing machines for biosequence recognition and analysis. In: Miller, J., Tomassini, M., Lanzi, P.L., Ryan, C., Tetamanzi, A.G.B., Langdon, W.B. (eds.) EuroGP 2001. LNCS, vol. 2038, pp. 192–203. Springer, Heidelberg (2001)
14. 14.
Woodward, J.R.W.: Algorithm Induction,Modularity and Complexity. PhD thesis, The School of Computer Science, The University of Birmingham (2005) Google Scholar
15. 15.
Cutland, N.J.: Computability, An introduction to recursive function theory. Cambridge University Press, Cambridge (1997)
16. 16.
Teller, A.: Algorithm Evolution with Internal Reinforcement for Signal Understanding. PhD thesis, School of Computer Science, Carnegie Mellon University, Pittsburgh, USA (1998) Google Scholar
17. 17.
Hartley Rogers, J.: Theory of recursive functions and effective computability. MIT Press, Cambridge (1987)Google Scholar