Our novel Gödel machine1derives its name and its power from exploiting provably useful changes of any part of its own code in self-referential fashion. Its theoretical advantages over the previous approaches can be traced back to the fact that its notion of optimality is less restricted and that it has no unmodifiable software at all.
Its bootstrap mechanism is based on a simple idea. Its initial software or program includes an axiomatic description of (possibly stochastic) environmental properties and of the Gödel machine's goals and means. The latter not only include some initial -encoded problem soving strategy but also a -encoded systematic proof searcher seeking some program switchprog for modifying the current together with a formal proof that the execution of switchprog will improve , according to some -encoded utility function or optimality criterion represented as part of the -encoded goals. Any utility function (such as some robot's expected or worst-case future reward in its remaining lifetime) can be plugged in as an axiom stored in the initial . In particular, utility may take into account expected computational costs of proof searching and other actions, to be derived from the -encoded axioms. During runtime, systematically makes pairs (switchprog, proof) until it finds a proof of: `the immediate rewrite of p through current program switchprog implies higher utility than leaving p as is'. Then it executes switchprog, which may completely overwrite . The Global Optimality Theorem (Theorem 2.1) shows that this self-improvement strategy is not greedy: since the utility of `leaving as is' implicitly evaluates all possible alternative switchprogs which an unmodified might find later, we obtain a globally optimal self-change--the current switchprog represents the best of all possible relevant self-improvements, relative to the given resource limitations and the initial proof search strategy.
Unlike HSEARCH, the Gödel machine does not waste time on finding programs that provably compute for all when the current is the only object of interest. It is neither limited to AIXI(t,l)'s assumption of an enumerable environmental distribution nor to its particular expected reward utility function, since we may plug in worst-case or other types of utility functions as well.