Catagolue is an online database of objects in Conway's Game of Life and similar cellular automata. It gathers data from a distributed search of random initial configurations and records the eventual decay products.
Where are the results?
In three different places, in increasing order of verbosity:
How can I contribute to the search?
You can run the search program on your computer, which will rapidly search random initial 'soups' and periodically upload the results to Catagolue. The recommended version of the search program is a highly-optimised C++ program available here. An alternative is the older Python version, but this is considerably (20 times) slower than the C++ version.
There is an accessible tutorial on deciding which version is appropriate and how to use it.
Catagolue was founded in 2015 by Adam P. Goucher to aggregate results from soup search programs. A previous effort along similar lines was Nathaniel Johnston's TOLLCASS, which ran from 2009 to 2011 and collected information from 6 billion 20x20 soups.
The methodology of using a cryptographic hash to determine the pseudorandom seed gives Catagolue the advantage of results being reproducible, verifiable, and immune to reverse-engineering. The principle behind Catagolue could be used as the proof-of-work of a blockchain.
Since 2018, the server hosting costs have been covered by Hatsya Limited, allowing it to continue indefinitely without requiring community donations or advertisements.
The source code of Catagolue was written by Adam P. Goucher in 2015, with further contributions by Apple Bottom, Ian07, and Connor Steppie.
In addition to the main source code, there are additional components that have proved very helpful in improving the usability of the site:
- Chris Rowett's LifeViewer plugin for viewing patterns in-browser;
- David Eppstein's Fano database of outer-totalistic cellular automata;
- Chris Cain's script for displaying glider syntheses;
- Ivan Fomichev's Twitter bot for reporting discoveries;
- Torstein Honsi's Highcharts for interactive plotting;
- Stuart Langridge's sorttable.