On the complexity of universal programs

  • Authors:
  • Alain Colmerauer

  • Affiliations:
  • Laboratoire d'Informatique Fondamentale de Marseille, CNRS et Universités de Provence et de la Méditerranée

  • Venue:
  • MCU'04 Proceedings of the 4th international conference on Machines, Computations, and Universality
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.