Wireworld
Wireworld, alternatively WireWorld, is a cellular automaton first proposed by Brian Silverman in 1987, as part of his program Phantom Fish Tank. It subsequently became more widely known as a result of an article in the "Computer Recreations" column of Scientific American.[1] Wireworld is particularly suited to simulating transistors, and is Turing-complete.
Rules
A Wireworld cell can be in one of four different states, usually numbered 0–3 in software, modeled by colors in the examples here:
- empty (black),
- electron head (blue),
- electron tail (red),
- conductor (yellow).
As in all cellular automata, time proceeds in discrete steps called generations (sometimes "gens" or "ticks"). Cells behave as follows:
- empty → empty,
- electron head → electron tail,
- electron tail → conductor,
- conductor → electron head if exactly one or two of the neighbouring cells are electron heads, otherwise remains conductor.
Wireworld uses what is called the Moore neighborhood, which means that in the rules above, neighbouring means one cell away (range value of one) in any direction, both orthogonal and diagonal.
These simple rules can be used to construct logic gates (see below).
Applications
Entities built within Wireworld universes include Langton's Ant (allowing any Langton's Ant pattern to be built within Wireworld)[2] and the Wireworld computer, a Turing-complete computer implemented as a cellular automaton.[3]
See also
References
- ↑ Dewdney, A K (January 1990). "Computer recreations: The cellular automata programs that create Wireworld, Rugworld and other diversions". Scientific American 262 (1): 146–149. https://www.scientificamerican.com/article/computer-recreations/. Retrieved 2 December 2018.
- ↑ Nyles Heise. "Wireworld". Archived from the original on 2011-02-04. https://web.archive.org/web/20110204063835/http://www.heise.ws/wireworld.html.
- ↑ Mark Owen. "The Wireworld Computer". http://www.quinapalus.com/wi-index.html.
External links
- Wireworld on Rosetta Code
- The Wireworld computer in Java
- No Wires (contains an interactive Wireworld widget)
Original source: https://en.wikipedia.org/wiki/Wireworld.
Read more |