Jump to content

Rule 110: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
m Changing image to something that doesn't just look like a uniform gray triangle.
 
(44 intermediate revisions by 27 users not shown)
Line 1: Line 1:
{{short description|elementary cellular automaton}}
{{short description|Elementary cellular automaton}}
{{more footnotes|date=November 2012}}
{{more footnotes|date=November 2012}}


The '''Rule 110 cellular automaton''' (often simply '''Rule 110''') is an [[elementary cellular automaton]] with interesting behavior on the boundary between stability and chaos. In this respect, it is similar to [[Conway's Game of Life]]. Like Life, Rule 110 is known to be [[Turing completeness|Turing complete]]. This implies that, in principle, any calculation or computer program can be simulated using this automaton.
The '''Rule 110 cellular automaton''' (often called simply '''Rule 110'''){{efn|'''110''' is the [[number 110]], written in conventional decimal notation, and thus is pronounced [[english numeral | as one pronounces]] [[nominal numbers]] ordinarily. For example, [[Stephen Wolfram]] pronounces the name "rule one-ten".<ref>{{cite AV media |people=Stephen Wolfram |publisher=University of California Television (UCTV) |title=A New Kind of Science - Stephen Wolfram |url=https://www.youtube.com/watch?v=_eC14GonZnU&t=9m51s |access-date=2023-06-19 |language=en |year=2003 |time=9:51}}</ref>}} is an [[elementary cellular automaton]] with interesting behavior on the boundary between stability and chaos. In this respect, it is similar to [[Conway's Game of Life]]. Like Life, Rule 110 with a particular repeating background pattern is known to be [[Turing completeness|Turing complete]].{{sfnp|Cook|2004}} This implies that, in principle, any calculation or computer program can be simulated using this automaton.
[[File:CA rule110s.png|thumb|An example run of a rule 110 cellular automaton]]
[[File:Sample run of Rule 110 elementary cellular automaton, starting from single cell.png|thumb|An example run of the rule 110 cellular automaton over 256 iterations, starting from a single cell.]]


==Definition==
==Definition==
Line 35: Line 35:
|}
|}


The name "Rule 110" derives from the fact that this rule can be summarized in the binary sequence 01101110; interpreted as a [[binary number]], this corresponds to the decimal value 110.
The name "Rule 110" derives from the fact that this rule can be summarized in the binary sequence 01101110; interpreted as a [[binary number]], this corresponds to the decimal value 110. This is the [[Wolfram code]] naming scheme.


==History==
==History==
In 2004, [[Matthew Cook]] published a proof that Rule 110 is [[Turing completeness|Turing complete]], i.e., capable of [[universal computation]], which [[Stephen Wolfram]] had conjectured in 1985.{{sfnp|Cook|2004}} Cook presented his proof at the [[Santa Fe Institute]] conference CA98 before publication of Wolfram's book ''[[A New Kind of Science]]''. This resulted in a legal affair based on a non-disclosure agreement with [[Wolfram Research]]. Wolfram Research blocked publication of Cook's proof for several years.{{sfnp|Giles|2002}}
In 2004, [[Matthew Cook]] published a proof that Rule 110 with a particular repeating background pattern is [[Turing completeness|Turing complete]], i.e., capable of [[universal computation]], which [[Stephen Wolfram]] had conjectured in 1985.{{sfnp|Cook|2004}} Cook presented his proof at the [[Santa Fe Institute]] conference CA98 before publication of Wolfram's book ''[[A New Kind of Science]]''. This resulted in a legal affair based on a non-disclosure agreement with [[Wolfram Research]].<ref>[https://www.courtlistener.com/docket/4155086/wolfram-research-inc-v-cook/ Wolfram Research Inc v. Cook (2:00-cv-09357)] (sometimes cited as "Wolfram Research Inc. v. Matthew Cook. 8/31 CV00-9357 CBM")</ref> Wolfram Research blocked publication of Cook's proof for several years.{{sfnp|Giles|2002}}


==Interesting properties==
==Interesting properties==
Among the 88 possible unique elementary cellular automata, Rule 110 is the only one for which Turing completeness has been proven, although proofs for several similar rules should follow as simple corollaries (e.g. Rule 124, which is the horizontal reflection of Rule 110). Rule 110 is arguably the simplest known Turing complete system.{{sfnp|Cook|2004}}<ref>{{harvnb|Wolfram|2002|pp=169, 675–691}}</ref>
Among the [[Elementary cellular automaton#Reflections and complements|88 possible unique elementary cellular automata]], Rule 110 is the only one for which Turing completeness has been directly proven, although proofs for several similar rules follow as simple corollaries (e.g. Rule 124, which is the horizontal reflection of Rule 110). Rule 110 is arguably the simplest known Turing complete system.{{sfnp|Cook|2004}}<ref>{{harvp|Wolfram|2002|pp=169, 675–691}}</ref>


Rule 110, like the [[Conway's Game of Life|Game of Life]], exhibits what [[Stephen Wolfram|Wolfram]] calls "[[Cellular automaton#Classification|Class 4]] behavior", which is neither completely stable nor completely chaotic. Localized structures appear and interact in complex ways.<ref>{{harvnb|Wolfram|2002|p=229}}</ref>
Rule 110, like the [[Conway's Game of Life|Game of Life]], exhibits what [[Stephen Wolfram|Wolfram]] calls "[[Cellular automaton#Classification|Class 4]] behavior", which is neither completely stable nor completely chaotic. Localized structures appear and interact in complex ways.<ref>{{harvp|Wolfram|2002|p=229}}</ref>


[[Matthew Cook]] proved Rule 110 capable of supporting universal computation by successively emulating [[Tag system#Cyclic tag systems|cyclic tag systems]], then 2-[[Tag system#Cyclic tag systems|tag system]], and then [[Turing machine]]s. The final stage has [[Time complexity#Exponential time|exponential time]] overhead because the Turing machine's tape is encoded with a [[unary numeral system]]. Neary and Woods (2006) presented a different construction that replaces 2-tag systems with clockwise Turing machines and has [[polynomial complexity|polynomial]] overhead.{{sfnp|Neary|Woods|2006}}
[[Matthew Cook]] proved Rule 110 capable of supporting universal computation. Rule 110 is a simple enough system to suggest that naturally occurring physical systems may also be capable of universality, meaning that many of their properties will be undecidable, and not amenable to closed-form mathematical solutions.<ref>[http://www.wolframalpha.com/input/?i=rule+110 Rule 110 – Wolfram Alpha]</ref>

===Turing machine simulation overhead===
The original emulation of a [[Turing machine]] used the following simulation strategy: Turing machine 2-[[Tag system#Cyclic tag systems|tag system]] [[Tag system#Cyclic tag systems|cyclic tag system]] Rule 110, but the 2-tag system contained an [[exponential time]] overhead due to the encoding of the Turing machine's tape using a [[unary numeral system]]. Neary and Woods (2006) modified the construction to perform the simulation as Turing machine → clockwise Turing machine cyclic tag system → Rule 110, which requires only [[polynomial]] overhead.{{sfnp|Neary|Woods|2006}}


==The proof of universality==
==The proof of universality==
Matthew Cook presented his proof of the universality of Rule 110 at a Santa Fe Institute conference, held before the publication of ''[[A New Kind of Science|NKS]]''. Wolfram Research claimed that this presentation violated Cook's nondisclosure agreement with his employer, and obtained a court order excluding Cook's paper from the published conference proceedings. The existence of Cook's proof nevertheless became known. Interest in his proof stemmed not so much from its result as from its methods, specifically from the technical details of its construction {{Citation needed|date=August 2007}}. The character of Cook's proof differs considerably from the discussion of Rule 110 in ''A New Kind of Science''. Cook has since written a paper setting out his complete proof.{{sfnp|Cook|2004}}
[[Matthew Cook]] presented his proof of the universality of Rule 110 at a Santa Fe Institute conference, held before the publication of ''[[A New Kind of Science]]''. Wolfram Research claimed that this presentation violated Cook's nondisclosure agreement with his employer, and obtained a court order excluding Cook's paper from the published conference proceedings. The existence of Cook's proof nevertheless became known. Interest in his proof stemmed not so much from its result as from its methods, specifically from the technical details of its construction.<ref>{{Cite journal
| last1 = Martinez
| first1 = Genaro J.
| last2 = Seck Tuoh Mora
| first2 = Juan
| last3 = Chapa
| first3 = Sergio
| last4 = Lemaitre
| first4 = Christian
| date = April 2019
| pages = 185–192
| title = Brief notes and history computing in Mexico during 50 years
| journal = International Journal of Parallel, Emergent and Distributed Systems
| doi = 10.1080/17445760.2019.1608990
| access-date = 2020-04-15
| url = https://www.researchgate.net/publication/332634058
| arxiv = 1905.07527
| volume = 35
| issue = 2
| s2cid = 150262966
}}</ref> The character of Cook's proof differs considerably from the discussion of Rule 110 in ''A New Kind of Science''. Cook has since written a paper setting out his complete proof.{{sfnp|Cook|2004}}


Cook proved that Rule 110 was universal (or Turing complete) by showing it was possible to use the rule to emulate another computational model, the [[cyclic tag system]], which is known to be universal. He first isolated a number of [[Spaceship (CA)|spaceships]], self-perpetuating localized patterns, that could be constructed on an infinitely repeating pattern in a Rule 110 universe. He then devised a way for combinations of these structures to interact in a manner that could be exploited for computation.
Cook proved that Rule 110 was universal (or Turing complete) by showing it was possible to use the rule to emulate another computational model, the [[cyclic tag system]], which is known to be universal. He first isolated a number of [[Spaceship (CA)|spaceships]], self-perpetuating localized patterns, that could be constructed on an infinitely repeating pattern in a Rule 110 universe. He then devised a way for combinations of these structures to interact in a manner that could be exploited for computation.
Line 100: Line 117:
* [[Rule 90]]
* [[Rule 90]]
* [[Rule 184]]
* [[Rule 184]]

== Notes ==
{{notelist}}


== References ==
== References ==
<references/>
{{Reflist}}

=== Works cited ===
{{refbegin|colwidth=30em}}
* {{cite journal |last=Cook |first=Matthew |title=Universality in Elementary Cellular Automata |journal=Complex Systems |volume=15 |pages=1–40 |year=2004 |url=http://www.complex-systems.com/pdf/15-1-1.pdf}}
* {{cite journal|journal=[[Nature (journal)|Nature]]|title=What kind of science is this?|first=Jim|last=Giles|volume=417|issue=6886|pages=216–218|year=2002|doi=10.1038/417216a|pmid=12015565|bibcode=2002Natur.417..216G|s2cid=10636328|doi-access=free}}
* {{cite conference |last1=Neary |first1=Turlough |last2=Woods |first2=Damien |contribution=P-completeness of cellular automaton Rule 110 |series=Lecture Notes in Computer Science |volume=4051 |title=Automata, Languages and Programming: 33rd International Colloquium, ICALP 2006, Venice, Italy, July 10-14, 2006, Proceedings, Part I |pages=132–143 |year=2006 |doi= 10.1007/11786986_13|editor1-first=Michele|editor1-last=Bugliesi|editor2-first=Bart|editor2-last=Preneel|editor3-first=Vladimiro|editor3-last=Sassone|editor4-first=Ingo|editor4-last=Wegener|publisher=Springer}}
* {{cite book |author-link=Stephen Wolfram |first=Stephen |last=Wolfram |title=A New Kind of Science |publisher=Wolfram Media |year=2002 |isbn=1-57955-008-8 |url=https://www.wolframscience.com/nks/ }}
{{refend}}


== Further reading ==
==Bibliography==
{{refbegin}}
{{refbegin|colwidth=30em}}
* {{cite book |first=Matthew |last=Cook |chapter=A Concrete View of Rule 110 Computation |arxiv=0906.3248v1 |title=The Complexity of Simple Programs |series=Electronic Proceedings in Theoretical Computer Science |volume=1 |editor-first=T. |editor-last=Neary |editor2-first=D.|editor2-last=Woods |editor3-first=A. K. |editor3-last=Seda |editor4-first=N. |editor4-last=Murphy |year=2008 |pages=31–55 |doi=10.4204/EPTCS.1.4 |s2cid=10266058 }}
*{{cite journal |last=Cook |first=Matthew |title=Universality in Elementary Cellular Automata |journal=Complex Systems |volume=15 |issue= |pages=1–40 |year=2004 |doi= |url=https://web.archive.org/web/20160528014857/http://www.complex-systems.com/pdf/15-1-1.pdf|ref=harv}}
* {{cite journal |last1=Martínez |first1=Genaro J. |last2=Adamatzky |first2=A. |last3=Chen |first3=Fangyue |last4=Chua |first4=Leon |title=On Soliton Collisions between Localizations in Complex Elementary Cellular Automata: Rules 54 and 110 and Beyond |journal=Complex Systems |volume=21 |issue=2 |pages=117–142 |year=2012 |doi= 10.25088/ComplexSystems.21.2.117|arxiv=1301.6258 |s2cid=10165042 }}
*{{cite book |first=Matthew |last=Cook |chapter=A Concrete View of Rule 110 Computation |arxiv=0906.3248v1 |chapterurl= |title=The Complexity of Simple Programs |journal=Electronic Proceedings in Theoretical Computer Science |volume=1 |editor-first=T. |editor-last=Neary |editor2-first=D.|editor2-last=Woods |editor3-first=A. K. |editor3-last=Seda |editor4-first=N. |editor4-last=Murphy |year=2008 |isbn= |pages=31–55 |doi=10.4204/EPTCS.1.4 }}
* {{cite journal |last1=Martínez |first1=Genaro J. |last2=Adamatzky |first2=A. |last3=Stephens |first3=Christopher R. |last4=Hoeflich |first4=Alejandro F. |title=Cellular automaton supercolliders |journal=Int. J. Mod. Phys. C |volume=22 |issue=4 |pages=419–439 |year=2011 |doi=10.1142/S0129183111016348 |url=http://www.technologyreview.com/view/424096/computer-scientists-build-cellular-automaton-supercollider/|bibcode=2011IJMPC..22..419M |arxiv=1105.4332 |s2cid=7508070 }}
*{{cite journal|journal=[[Nature (journal)|Nature]]|title=What kind of science is this?|first=Jim|last=Giles|volume=417|issue=6886|pages=216–218|year=2002|doi=10.1038/417216a|ref=harv}}
*{{cite journal |last=Martínez |first=Genaro J. |last2=Adamatzky |first2=A. |last3=Chen |first3=Fangyue |last4=Chua |first4=Leon |title=On Soliton Collisions between Localizations in Complex Elementary Cellular Automata: Rules 54 and 110 and Beyond |journal=Complex Systems |volume=21 |issue=2 |pages=117–142 |year=2012 |doi= 10.25088/ComplexSystems.21.2.117}}
* {{cite journal |last1=Martínez |first1=Genaro J. |last2=McIntosh |first2=Harold V. | author2-link = Harold V. McIntosh |last3=Mora |first3=Juan C.S.T. |last4=Vergara |first4=Sergio V.C. |title=Reproducing the cyclic tag systems developed by Matthew Cook with Rule 110 using the phases fi_1 |journal=Journal of Cellular Automata |volume=6 |issue=2–3 |pages=121–161 |year=2003–2008 |url=http://www.comunidad.escom.ipn.mx/genaro/Papers/Papers_on_CA_files/repCTSR110.pdf}}
*{{cite journal |last=Martínez |first=Genaro J. |last2=Adamatzky |first2=A. |last3=Stephens |first3=Christopher R. |last4=Hoeflich |first4=Alejandro F. |title=Cellular automaton supercolliders |journal=Int. J. Mod. Phys. C |volume=22 |issue=4 |pages=419–439 |year=2011 |doi=10.1142/S0129183111016348 |url=http://www.technologyreview.com/view/424096/computer-scientists-build-cellular-automaton-supercollider/|bibcode=2011IJMPC..22..419M |arxiv=1105.4332 }}
* {{cite journal |last1=Martínez |first1=Genaro J. |last2=McIntosh |first2=Harold V. | author2-link = Harold V. McIntosh |last3=Mora |first3=Juan C.S.T. |last4=Vergara |first4=Sergio V.C. |title=Determining a regular language by glider-based structures called phases fi_1 in Rule 110 |journal=Journal of Cellular Automata |volume=3 |issue=3 |pages=231–270 |year=2008 |arxiv=0706.3348v1|bibcode=2007arXiv0706.3348J }}
*{{cite journal |last=Martínez |first=Genaro J. |last2=McIntosh |first2=Harold V. |last3=Mora |first3=Juan C.S.T. |last4=Vergara |first4=Sergio V.C. |title=Reproducing the cyclic tag systems developed by Matthew Cook with Rule 110 using the phases fi_1 |journal=Journal of Cellular Automata |volume=6 |issue=2–3 |pages=121–161 |year=2003–2008 |doi= |url=http://www.comunidad.escom.ipn.mx/genaro/Papers/Papers_on_CA_files/repCTSR110.pdf}}
* {{cite journal |last1=Martínez |first1=Genaro J. |last2=McIntosh |first2=Harold V. | author2-link = Harold V. McIntosh |last3=Mora |first3=Juan C.S.T. |last4=Vergara |first4=Sergio V.C. |title=Rule 110 objects and other constructions based-collisions |journal=Journal of Cellular Automata |volume=2 |issue=3 |pages=219–242 |year=2007 |url=http://www.comunidad.escom.ipn.mx/genaro/Papers/Papers_on_CA_files/objectsR110.pdf}}
*{{cite journal |last=Martínez |first=Genaro J. |last2=McIntosh |first2=Harold V. |last3=Mora |first3=Juan C.S.T. |last4=Vergara |first4=Sergio V.C. |title=Determining a regular language by glider-based structures called phases fi_1 in Rule 110 |journal=Journal of Cellular Automata |volume=3 |issue=3 |pages=231–270 |year=2008 |doi= |arxiv=0706.3348v1|bibcode=2007arXiv0706.3348J }}
* {{cite journal |last1=Martínez |first1=Genaro J. |last2=McIntosh |first2=Harold V. | author2-link = Harold V. McIntosh |last3=Mora |first3=Juan C.S.T. |title=Gliders in Rule 110 |journal=Int. J. Of Unconventional Computing |volume=2 |pages=1–49 |year=2006 |url=http://www.comunidad.escom.ipn.mx/genaro/Papers/Papers_on_CA_files/MARTINEZ.pdf}}
*{{cite journal |last=Martínez |first=Genaro J. |last2=McIntosh |first2=Harold V. |last3=Mora |first3=Juan C.S.T. |last4=Vergara |first4=Sergio V.C. |title=Rule 110 objects and other constructions based-collisions |journal=Journal of Cellular Automata |volume=2 |issue=3 |pages=219–242 |year=2007 |doi= |url=http://www.comunidad.escom.ipn.mx/genaro/Papers/Papers_on_CA_files/objectsR110.pdf}}
* {{cite book |last1=Martínez |first1=Genaro J. |last2=McIntosh |first2=Harold V. | author2-link = Harold V. McIntosh |last3=Mora |first3=Juan C.S.T. |title=Advances in Artificial Life |chapter=Production of Gliders by Collisions in Rule 110 |series=Lecture Notes in Computer Science |volume=2801 |pages=175–182 |year=2003 |doi= 10.1007/978-3-540-39432-7_19|chapter-url=http://eprints.uwe.ac.uk/7897/1/prodGliders_LNCS.pdf|isbn=978-3-540-20057-4 }}
*{{cite journal |last=Martínez |first=Genaro J. |last2=McIntosh |first2=Harold V. |last3=Mora |first3=Juan C.S.T. |title=Gliders in Rule 110 |journal=Int. J. Of Unconventional Computing |volume=2 |issue= |pages=1–49 |year=2006 |doi= |url=http://www.comunidad.escom.ipn.mx/genaro/Papers/Papers_on_CA_files/MARTINEZ.pdf}}
* {{cite web |last1=Martínez |first1=Genaro J. |last2=McIntosh |first2=Harold V. | author2-link = Harold V. McIntosh |title=ATLAS: Collisions of gliders as phases of ether in rule 110 |date=2001 |url=http://www.comunidad.escom.ipn.mx/genaro/Papers/Papers_on_CA_files/ATLAS/bookcollisions.html}}
*{{cite journal |last=Martínez |first=Genaro J. |last2=McIntosh |first2=Harold V. |last3=Mora |first3=Juan C.S.T. |title=Production of gliders by collisions in Rule 110 |journal=Lecture Notes in Computer Science |volume=2801 |issue= |pages=175–182 |year=2003 |doi= 10.1007/978-3-540-39432-7_19|url=http://uncomp.uwe.ac.uk/genaro/Papers/Papers_on_CA_files/prodGliders_LNCS.pdf|isbn=978-3-540-20057-4 }}
* {{cite web |first=Harold V. |last=McIntosh | author-link = Harold V. McIntosh |title=Rule 110 as it relates to the presence of gliders |date=1999 |url=http://delta.cs.cinvestav.mx/~mcintosh/comun/RULE110W/rule110.pdf}}
*{{cite web |last=Martínez |first=Genaro J. |last2=McIntosh |first2=Harold V. |title=ATLAS: Collisions of gliders as phases of ether in rule 110 |date=2001 |website= |url=http://www.comunidad.escom.ipn.mx/genaro/Papers/Papers_on_CA_files/ATLAS/bookcollisions.html}}
* {{cite web |first=Harold V. |last=McIntosh | author-link = Harold V. McIntosh |title=Rule 110 Is Universal! |date=2002 |url=http://delta.cs.cinvestav.mx/~mcintosh/comun/texlet/texlet.pdf}}
*{{cite web |first=Harold V. |last=McIntosh |title=Rule 110 as it relates to the presence of gliders |date=1999 |website= |url=http://delta.cs.cinvestav.mx/~mcintosh/comun/RULE110W/rule110.pdf}}
*{{cite web |first=Harold V. |last=McIntosh |title=Rule 110 Is Universal! |date=2002 |website= |url=http://delta.cs.cinvestav.mx/~mcintosh/comun/texlet/texlet.pdf}}
*{{cite conference |last=Neary |first=Turlough |last2=Woods |first2=Damien |contribution=P-completeness of cellular automaton Rule 110 |series=Lecture Notes in Computer Science |volume=4051 |title=Automata, Languages and Programming: 33rd International Colloquium, ICALP 2006, Venice, Italy, July 10-14, 2006, Proceedings, Part I |pages=132–143 |year=2006 |doi= 10.1007/11786986_13|editor1-first=Michele|editor1-last=Bugliesi|editor2-first=Bart|editor2-last=Preneel|editor3-first=Vladimiro|editor3-last=Sassone|editor4-first=Ingo|editor4-last=Wegener|publisher=Springer|ref=harv }}
*{{cite book |authorlink=Stephen Wolfram |first=Stephen |last=Wolfram |title=A New Kind of Science |publisher=Wolfram Media |location= |year=2002 |isbn=1-57955-008-8 |pages= |url=https://archive.org/details/newkindofscience00wolf |ref=harv |url-access=registration }}
{{refend}}
{{refend}}


==External links==
==External links==
{{Commons category}}
{{Commons category}}
*[http://mathworld.wolfram.com/Rule110.html Rule 110 — from Wolfram MathWorld]
* [http://mathworld.wolfram.com/Rule110.html Rule 110 — from Wolfram MathWorld]
*[http://atlas.wolfram.com/01/01/110/ Rule 110 in Wolfram's atlas of cellular automata]
* [http://atlas.wolfram.com/01/01/110/ Rule 110 in Wolfram's atlas of cellular automata]
*[http://www.comunidad.escom.ipn.mx/genaro/Rule110.html Rule 110 repository]
* [http://www.comunidad.escom.ipn.mx/genaro/Rule110.html Rule 110 repository]
* [https://www.youtube.com/watch?v=QKnSRw_X2w4 Marble-based mechanical implementation of a 4-bit Rule 110 computer]


[[Category:Cellular automaton rules]]
[[Category:Cellular automaton rules]]

Latest revision as of 10:47, 8 January 2024

The Rule 110 cellular automaton (often called simply Rule 110)[a] is an elementary cellular automaton with interesting behavior on the boundary between stability and chaos. In this respect, it is similar to Conway's Game of Life. Like Life, Rule 110 with a particular repeating background pattern is known to be Turing complete.[2] This implies that, in principle, any calculation or computer program can be simulated using this automaton.

An example run of the rule 110 cellular automaton over 256 iterations, starting from a single cell.

Definition

[edit]

In an elementary cellular automaton, a one-dimensional pattern of 0s and 1s evolves according to a simple set of rules. Whether a point in the pattern will be 0 or 1 in the new generation depends on its current value, as well as on those of its two neighbors.

An animation of the way the rules of a 1D cellular automaton determine the next generation, using Rule 110.

The Rule 110 automaton has the following set of rules:

Current pattern 111 110 101 100 011 010 001 000
New state for center cell 0 1 1 0 1 1 1 0

The name "Rule 110" derives from the fact that this rule can be summarized in the binary sequence 01101110; interpreted as a binary number, this corresponds to the decimal value 110. This is the Wolfram code naming scheme.

History

[edit]

In 2004, Matthew Cook published a proof that Rule 110 with a particular repeating background pattern is Turing complete, i.e., capable of universal computation, which Stephen Wolfram had conjectured in 1985.[2] Cook presented his proof at the Santa Fe Institute conference CA98 before publication of Wolfram's book A New Kind of Science. This resulted in a legal affair based on a non-disclosure agreement with Wolfram Research.[3] Wolfram Research blocked publication of Cook's proof for several years.[4]

Interesting properties

[edit]

Among the 88 possible unique elementary cellular automata, Rule 110 is the only one for which Turing completeness has been directly proven, although proofs for several similar rules follow as simple corollaries (e.g. Rule 124, which is the horizontal reflection of Rule 110). Rule 110 is arguably the simplest known Turing complete system.[2][5]

Rule 110, like the Game of Life, exhibits what Wolfram calls "Class 4 behavior", which is neither completely stable nor completely chaotic. Localized structures appear and interact in complex ways.[6]

Matthew Cook proved Rule 110 capable of supporting universal computation by successively emulating cyclic tag systems, then 2-tag system, and then Turing machines. The final stage has exponential time overhead because the Turing machine's tape is encoded with a unary numeral system. Neary and Woods (2006) presented a different construction that replaces 2-tag systems with clockwise Turing machines and has polynomial overhead.[7]

The proof of universality

[edit]

Matthew Cook presented his proof of the universality of Rule 110 at a Santa Fe Institute conference, held before the publication of A New Kind of Science. Wolfram Research claimed that this presentation violated Cook's nondisclosure agreement with his employer, and obtained a court order excluding Cook's paper from the published conference proceedings. The existence of Cook's proof nevertheless became known. Interest in his proof stemmed not so much from its result as from its methods, specifically from the technical details of its construction.[8] The character of Cook's proof differs considerably from the discussion of Rule 110 in A New Kind of Science. Cook has since written a paper setting out his complete proof.[2]

Cook proved that Rule 110 was universal (or Turing complete) by showing it was possible to use the rule to emulate another computational model, the cyclic tag system, which is known to be universal. He first isolated a number of spaceships, self-perpetuating localized patterns, that could be constructed on an infinitely repeating pattern in a Rule 110 universe. He then devised a way for combinations of these structures to interact in a manner that could be exploited for computation.

Spaceships in Rule 110

[edit]

The function of the universal machine in Rule 110 requires a finite number of localized patterns to be embedded within an infinitely repeating background pattern. The background pattern is fourteen cells wide and repeats itself exactly every seven iterations. The pattern is 00010011011111.

Three localized patterns are of particular importance in the Rule 110 universal machine. They are shown in the image below, surrounded by the repeating background pattern. The leftmost structure shifts to the right two cells and repeats every three generations. It comprises the sequence 0001110111 surrounded by the background pattern given above, as well as two different evolutions of this sequence.

In the figures, time elapses from top to bottom: the top line represents the initial state, and each following line the state at the next time.

The center structure shifts left eight cells and repeats every thirty generations. It comprises the sequence 1001111 surrounded by the background pattern given above, as well as twenty-nine different evolutions of this sequence.

The rightmost structure remains stationary and repeats every seven generations. It comprises the sequence 111 surrounded by the background pattern given above, as well as five different evolutions of this sequence.

Below is an image showing the first two structures passing through each other without interacting other than by translation (left), and interacting to form the third structure (right).

There are numerous other spaceships in Rule 110, but they do not feature as prominently in the universality proof.

Constructing the cyclic tag system

[edit]

The cyclic tag system machinery has three main components:

  • A data string which is stationary;
  • An infinitely repeating series of finite production rules which start on the right and move leftward;
  • An infinitely repeating series of clock pulses which start on the left and move rightward.

The initial spacing between these components is of utmost importance. In order for the cellular automaton to implement the cyclic tag system, the automaton's initial conditions must be carefully selected so that the various localized structures contained therein interact in a highly ordered way.

The data string in the cyclic tag system is represented by a series of stationary repeating structures of the type shown above. Varying amounts of horizontal space between these structures serve to differentiate 1 symbols from 0 symbols. These symbols represent the word on which the cyclic tag system is operating, and the first such symbol is destroyed upon consideration of every production rule. When this leading symbol is a 1, new symbols are added to the end of the string; when it is 0, no new symbols are added. The mechanism for achieving this is described below.

Entering from the right are a series of left-moving structures of the type shown above, separated by varying amounts of horizontal space. Large numbers of these structures are combined with different spacings to represent 0s and 1s in the cyclic tag system's production rules. Because the tag system's production rules are known at the time of creation of the program, and infinitely repeating, the patterns of 0s and 1s at the initial condition can be represented by an infinitely repeating string. Each production rule is separated from the next by another structure known as a rule separator (or block separator), which moves towards the left at the same rate as the encoding of the production rules.

When a left-moving rule separator encounters a stationary symbol in the cyclic tag system's data string, it causes the first symbol it encounters to be destroyed. However, its subsequent behavior varies depending on whether the symbol encoded by the string had been a 0 or a 1. If a 0, the rule separator changes into a new structure which blocks the incoming production rule. This new structure is destroyed when it encounters the next rule separator.

If, on the other hand, the symbol in the string was a 1, the rule separator changes into a new structure which admits the incoming production rule. Although the new structure is again destroyed when it encounters the next rule separator, it first allows a series of structures to pass through towards the left. These structures are then made to append themselves to the end of the cyclic tag system's data string. This final transformation is accomplished by means of a series of infinitely repeating, right-moving clock pulses in the right-moving pattern shown above. The clock pulses transform incoming left-moving 1 symbols from a production rule into stationary 1 symbols of the data string, and incoming 0 symbols from a production rule into stationary 0 symbols of the data string.

Cyclic tag system working

[edit]

The figure above is the schematic diagram of the reconstruction of a cyclic tag system in Rule 110.

See also

[edit]

Notes

[edit]
  1. ^ 110 is the number 110, written in conventional decimal notation, and thus is pronounced as one pronounces nominal numbers ordinarily. For example, Stephen Wolfram pronounces the name "rule one-ten".[1]

References

[edit]
  1. ^ Stephen Wolfram (2003). A New Kind of Science - Stephen Wolfram. University of California Television (UCTV). Event occurs at 9:51. Retrieved 2023-06-19.
  2. ^ a b c d Cook (2004).
  3. ^ Wolfram Research Inc v. Cook (2:00-cv-09357) (sometimes cited as "Wolfram Research Inc. v. Matthew Cook. 8/31 CV00-9357 CBM")
  4. ^ Giles (2002).
  5. ^ Wolfram (2002), pp. 169, 675–691
  6. ^ Wolfram (2002), p. 229
  7. ^ Neary & Woods (2006).
  8. ^ Martinez, Genaro J.; Seck Tuoh Mora, Juan; Chapa, Sergio; Lemaitre, Christian (April 2019). "Brief notes and history computing in Mexico during 50 years". International Journal of Parallel, Emergent and Distributed Systems. 35 (2): 185–192. arXiv:1905.07527. doi:10.1080/17445760.2019.1608990. S2CID 150262966. Retrieved 2020-04-15.

Works cited

[edit]

Further reading

[edit]
[edit]