A formal theory cannot describe its own evolution into a more advances formal theory. Anything that is derivable inside it is so right from the start and that does not change. Some fact or formula or expression or piece of data either can be derived inside a given formal theory or it cannot. In this sense, formal systems do not have a history. In a way, they are timeless.

Algorithms can be described by corresponding formal theories. As a result, a system that can be described or implemented in terms of an algorithm cannot evolve. It has a fixed structure.

Looking at this the other way around, we can say: if a system can evolve from a state describable by one algorithm or formal system into one describable by another algorithm or formal system, and the new formal description was not already contained in the old one, i.e. if there is any kind of evolution in the system, then the system in its entirety cannot be described by any algorithm or formal system whatsoever. Any formal description of an evolving system must necessarily be incomplete. A system that is truly capable of evolving – be it a biological/genetic evolution, a learning process in a nervous system or a learning process in an artificial, technical system – would not be describable completely in terms of any single formal theory.

One can say that a formal system cannot contain a true reference to itself in its entirety. It cannot look at itself from a meta-level and then make some change to itself. If you try to put the meta-level inside the system, making the process that changes the system part of the formal system or algorithm itself, it stops being the meta-level. The result is another formal system that only can do a limited range of things (although this might be more than what the original system could do), and you get a new meta-viewpoint that is outside of the system again. We have seen such a situation in mathematics with the concept of a productive function. Applying a productive function to a formal system can generate something new that was not derivable inside the system. From the original formal system and this new item, we can then construct a new formal system that is “more advanced”. We can try to build the productive function into the formal system, but this does not yield a complete system or a system capable of unlimited self-evolution but just another limited formal system (to which the productive function can – again –be applied from the outside. There is no way to design a formal system or algorithm in such a way that it can self-develop (evolve) into some other formal system or algorithm.

This does not mean that such development is impossible but just that a system capable of doing it cannot be described completely by any formal theory. Development is an **informal process**.

[…] evolution is an example of an informal process of development, showing that such processes are actually possible in the physical world. There is […]

[…] intelligent system would not be limited to algorithms. The way it works could change (while algorithms are unable to evolve themselves), leading to a “fluid” structure of thinking that cannot be described completely in terms of […]

[…] formal structure, everything it can develop into is already fixed from the beginning. In fact, an algorithm cannot describe its own extension in principle. It cannot even describe itself completely. A formal system cannot contain a complete […]