Small universal Turing machines
Theoretical Computer Science - Special issue on universal machines and computations
Introduction to the Theory of Computation
Introduction to the Theory of Computation
Computation: finite and infinite machines
Computation: finite and infinite machines
Back to the Complexity of Universal Programs
CP '08 Proceedings of the 14th international conference on Principles and Practice of Constraint Programming
CATS '11 Proceedings of the Seventeenth Computing: The Australasian Theory Symposium - Volume 119
CATS 2011 Proceedings of the Seventeenth Computing on The Australasian Theory Symposium - Volume 119
Hi-index | 0.00 |
This paper provides a framework enabling to define and determine the complexity of various universal programs U for various machines. The approach consists of first defining the complexity as the average number of instructions to be executed by U, when simulating the execution of one instruction of a program P with input x. To obtain a complexity that does not depend on P or x, we then introduce the concept of an introspection coefficient expressing the average number of instructions executed by U, for simulating the execution of one of its own instructions. We show how to obtain this coefficient by computing a square matrix whose elements are numbers of executed instructions when running selected parts of U on selected data. The coefficient then becomes the greatest eigenvalue of the matrix. We illustrate the approach using two examples of particularly efficient universal programs: one for a three-symbol Turing Machine (blank symbol not included) with an introspection coefficient of 3 672.98, the other for an indirect addressing arithmetic machine with an introspection coefficient of 26.27.