Difference between revisions of "Universal computer"
Revision as of 14:53, 22 August 2012
A universal computer in a cellular automaton is a system that can compute anything that a Turing machine can compute. A cellular automaton in which such a system exists is called universal. A universal computer may be either infinite or finite, but when combined with a universal constructor, it is assumed to be finite.
Universal computers in Life
In 1982, John Conway proved in Winning Ways that the Game of Life has a (finite) universal computer, as well as a universal constructor. Proving the universality of a cellular automaton with simple rules was in fact Conway's aim in Life right from the start. The universal computer uses glider logic and a sliding block memory, and the proof of its existence is also outlined in The Recursive Universe.
In 2002, using Dean Hickerson's sliding block memory, Paul Chapman constructed an implementation of a Minsky Register Machine (a machine of the same capability as a Turing Machine), which he extended to a Universal Register Machine, a finite universal computer.
In 2009, Adam P. Goucher built a Spartan universal computer-constructor, which has three infinite binary memory tapes (program tape, data tape and marker tape). This allows data to be stored in linear space, rather than the exponential space that a Register Machine uses.
Universal computers in other cellular automata
Tim Hutton has implemented Codd's design for a universal computer in Codd's 8-state cellular automaton.
- Paul Rendell (April 2, 2000). "A Turing Machine in Conway's Game of Life".
- Paul Chapman (November 11, 2002). "Life Universal Computer".
- D. Eppstein. "B35/S236".
- Tim Hutton. "Rule Table Repository".
- Universal computer at the Life Lexicon