|Conducted by||Adam P. Goucher|
|Year(s)||2015 – 2017|
|Initial soup density||0.5[note 2]|
Catagolue[note 3] is an ongoing distributed census of naturally occurring ash objects conducted by Adam P. Goucher, started in late February 2015. The census is primarily focused on asymmetric soups in Conway's Life, but supports arbitrary outer-totalistic and non-totalistic rules and a variety of symmetries.[endpoint 1] Over 100 users have contributed to the census.
The results are obtained by evolving random soups of size 16×16 with density 0.5 in an infinite planar universe; as of December 9, 2017, at least 9,740,555,545,859 soups have been investigated by the census's participants, yielding a total of at least 210,328,215,680,723 objects of 118,940 distinct types. Submissions of new results (called "hauls") are subjected to both statistical tests and peer-review by other participants before being committed to the census.
Catagolue is primarily fed by apgsearch, including apgnano (apgsearch 2.x) and apgmera (apgsearch 3.x) as well as Aidan F. Pierce's hacked version supporting arbitrary non-totalistic cellular automata. Each resulting object is identified by apgsearch by its unique apgcode; the Catagolue website gives overviews over the various classes of objects found, and provides further information as well as sample soups for each object.[endpoint 2] A simple text-based interface for querying sample soups, including their owners, also exists.[endpoint 3]
- 1 History
- 2 Results
- 3 Notable patterns
- 4 Higher symmetries
- 5 Slow salvos
- 6 Other rules
- 7 Catagolue as a generic pattern inventory
- 8 Contributor engagement
- 9 Backups
- 10 Limitations
- 11 Also see
- 12 Notes
- 13 Endpoints
- 14 References
- 15 External links
- Main article: History of Catagolue
Catagolue became operative on February 20, 2015. The B3/S23/C1 census reached a total of one trillion objects on April 24, 2015, ten trillion objects on September 2, 2015, 100 trillion objects on June 20, 2016, and 200 trillion objects on May 16, 2017.
- Also see: Most common objects on Catagolue
As of December 9, 2017, at least 9,740,555,545,859 soups have been investigated by the census's participants, yielding a total of at least 210,328,215,680,723 objects. 118,940 distinct objects were identified, including:
- Still lifes:
- All still lifes up to 13 bits.
- 618 of the 619 14-bit still lifes.
- 1,290 of the 1,353 15-bit still lifes.
- 2,681 of the 3,286 16-bit still lifes.
- 4,695 of the 7,773 17-bit still lifes.
- 7,512 of the 19,044 18-bit still lifes.
- 10,261 of the 45,759 19-bit still lifes.
- 12,738 of the 112,243 20-bit still lifes.
- 13,971 of the 273,188 21-bit still lifes.
- 14,195 of the 672,172 22-bit still lifes.
- 12,656 of the 1,646,147 23-bit still lifes.
- 11,028 of the 4,051,732 24-bit still lifes.
- 8,025 of the 9,971,377 25-bit still lifes.
- 6,008 of the 24,619,307 26-bit still lifes.
- 3,921 of the 60,823,008 27-bit still lifes.
- 2,622 of the 150,613,157 28-bit still lifes.
- 1,537 of the 373,188,952 29-bit still lifes.
- 1,032 of the 926,068,847 30-bit still lifes.
- 463 of the 2,299,616,637 31-bit still lifes.
- 276 of the 5,716,948,683 32-bit still lifes.
- 146 33-bit still lifes.
- 102 34-bit still lifes.
- 42 35-bit still lifes.
- 37 36-bit still lifes.
- 15 37-bit still lifes.
- 11 38-bit still lifes.
- 3 39-bit still lifes.
- 11 40-bit still lifes.
- 3 41-bit still lifes.
- 4 42-bit still lifes.
- 1 asymmetric 45-bit still life (Cthulhu).
- 1 D2_+1-symmetric 46-bit still life (professor).
- 1 D8_1-symmetric 56-bit still life (cloverleaf interchange).
- 2,026 period 2 oscillators.
- 357 period 3 oscillators.
- 29 period 4 oscillators.
- 11 period 5 oscillators (including Elkies' p5 and Silver's p5 above eater).
- 7 period 6 oscillators.
- 9 period 8 oscillators (including Achim's p8, Tim Coe's p8 and smiley).
- 1 period 14 oscillator (tumbler).
- 16 period 15 oscillators.
- 2 period 24 oscillators (boring p24 and uninteresting p24).
- 30 period 30 oscillators (including Berger's p30 and symmetric queen-bee-shuttle 1).
- 6 period 46 oscillators.
- Other patterns:
A variety of notable natural patterns have been submitted to Catagolue:
- The first known natural occurrence of a nonstandard spaceship was found during alpha testing of apgsearch. The soup, which produced an LWSS on HWSS 1, was submitted to the conwaylife.com forums on August 26, 2014 by Adam P. Goucher. Many other nontrivial spaceship flotillae have since been found.
- The first known natural occurrence of a puffer other than the block-laying or glider-producing switch engine, a p1152 made from two switch engines dubbed the pony express, was found in September 2015. Other objects found by apgsearch in asymmetric soups are smiley, Elkies' p5, phoenix 1, and six occurrences of the Coe ship.
- The pufferfish was discovered in the ash of a symmetric soup.
- A copperhead emerged from a D2_+2 soup in April 2016 soon after its initial discovery by zdr, followed by a second one in June 2016 and a third in August 2016; two more copperheads were found in D4_+4 and D8_4 soups in November 2016.
- 112P15 was first discovered in the ash of a symmetric soup in April 2016.
- Rich's p16 was first discovered in the ash of a symmetric soup in July 2016.
- thunk's discovery of a period 28 pre-pulsar-shuttle variant enabled the construction of smaller (in terms of minimum population) period 26 and period 28 pre-pulsar-shuttles.
In addition to asymmetric (C1) soups, Catagolue also collects census data for symmetric soups of the following types:
- C2_1, C2_2, C2_4: 180° (two-fold) rotational symmetry
- C4_1, C4_4: 90° (four-fold) rotational symmetry
- D2_+1, D2_+2: reflectional symmetry along an orthogonal line
- D2_x: reflectional symmetry along a diagonal line
- D4_+1, D4_+2, D4_+4: reflectional symmetry along two perpendicular orthogonal lines
- D4_x1, D4_x4: reflectional symmetry along two perpendicular diagonal lines
- D8_1, D8_4: reflectional symmetry along four orthogonal/diagonal through a common center
Furthermore, the following pseudo-symmetries are used for asymmetric soups of different sizes:
- 8x32, 4x64, 2x128, 1x256: for 256-cell soups of size 8×32, 4×64, 2×128 and 1×256
8x32 was one of the initial (pseudo-)symmetries the site handled; support for 4x64, 2x128 and 1x256 was added in August 2017.
All symmetries can be "inflated" using the "i" prefix, replacing each cell in the sample soup with a 2×2 alignment of cells in the same state and resulting in soups of size e.g. 32×32 for iC1 instead of 16×16 for C1. Multiple "i" prefixes can be stacked to "inflate" cells to 4×4, 8×8, etc.
The 25pct and 75pct pseudo-symmetries were used in the past to investigate soups with initial densities of 0.25 and 0.75 respectively, but they fell into disuse and are not supported by the current version of apgsearch, apgmera 3.x.[note 4] Other pseudo-symmetries such as 25p, 32x32, 1x256X2+1 etc. have been used, but are not considered standard. Catagolue encourages users to use designated "test" symmetries to test modifications to the client, and can be used to as a generic pattern inventory using arbitrary symmetries and rules (see below).
Hauls for higher symmetries are subject to statistical verification before being committed, but not (with some exceptions) to peer review.[note 5]
Results in higher symmetries
As of December 9, 2017, at least 1,278,243,630,085 soups have been investigated in higher symmetries[note 6] of B3/S23, yielding a combined total of at least 26,809,900,002,333 objects of 304,654 distinct types, including:[note 7]
- Still lifes:
- All still lifes up to 12 bits.
- 239 of the 240 13-bit still lifes.
- 594 of the 619 14-bit still lifes.
- 1,066 of the 1,353 15-bit still lifes.
- 1,879 of the 3,286 16-bit still lifes.
- 19 240-bit still lifes.
- 15 248-bit still lifes.
- 1 D8_1-symmetric 256-bit still life.
- 3 D8_1-symmetric 264-bit still life.
- 2 D8_1-symmetric 272-bit still life.
- 35,668 period 2 oscillators.
- 3,808 period 3 oscillators.
- 689 period 4 oscillators.
- 666 period 5 oscillators.
- 528 period 6 oscillators.
- 31 period 7 oscillators (including 38P7.2 and several C4_4-symmetric quadruple Burloaferimeter variants).
- 47 period 8 oscillators.
- 24 period 9 oscillators (including the worker bee and the snacker).
- 37 period 10 oscillators (including introvert, extrovert and two variants of 128P10.2).
- 18 period 11 oscillators (Achim's p11, several variants of Jason's p11, and several four-fold variants of 38P11.1).
- 2 period 12 oscillator (44P12.2 and a larger trivial oscillator).
- 1 period 13 oscillator (Beluchenko's p13).
- 1 period 14 oscillator (tumbler).
- 324 period 15 oscillators (including Karel's p15 and 112P15).
- 3 period 16 oscillators (Achim's p16, Achim's other p16 and Rich's p16).
- 1 period 18 oscillator (Four eaters hassling four bookends).
- 1 period 22 oscillator (48P22.1).
- 16 period 24 oscillators (including the p24 shuttle).
- 1 period 27 oscillator (56P27).
- 2 period 28 oscillators (Karel's p28 and a p28 pre-pulsar-shuttle variant).
- 5 period 29 oscillators (five variants of the p29 pre-pulsar-shuttle).
- 139 period 30 oscillators (including Eureka and three variants thereof).
- 1 period 31 oscillator (48P31).
- 1 period 32 oscillator (68P32.1).
- 2 period 36 oscillators.
- 2 period 37 oscillators (two variants of Beluchenko's p37).
- 4 period 40 oscillators (Beluchenko's p40, and three unnamed oscillators composed of figure eights and octagon IIs).
- 17 period 46 oscillators.
- 1 period 51 oscillator (Beluchenko's p51).
- 2 period 60 oscillators.
- 7 period 120 oscillators.
- 2 period 138 oscillators (two variants of Gabriel's p138).
- 1 period 177 oscillator (Karel's p177).[note 8]
- Other patterns:
As of January 27, 2017, slow salvos have yielded a total of at least 455,951,534,486 objects of 2,512 distinct types, including:
- Still lifes:
- All still lifes up to 10 bits.
- 43 of the 46 11-bit still lifes.
- 96 of the 121 12-bit still lifes.
- 138 of the 240 13-bit still lifes.
- 242 of the 619 14-bit still lifes.
- 274 of the 1,353 15-bit still lifes.
- 308 of the 3,286 16-bit still lifes.
- 279 of the 7,773 17-bit still lifes.
- 264 of the 19,044 18-bit still lifes.
- 207 of the 45,759 19-bit still lifes.
- 194 of the 112,243 20-bit still lifes.
- 116 of the 273,188 21-bit still lifes.
- 121 of the 672,172 22-bit still lifes.
- 53 of the 1,646,147 23-bit still lifes.
- 31 of the 4,051,732 24-bit still lifes.
- 12 of the 9,971,377 25-bit still lifes.
- 12 of the 24,619,307 26-bit still lifes.
- 5 of the 60,823,008 27-bit still lifes.
- 6 of the 150,613,157 28-bit still lifes.
- 3 of the 926,068,847 30-bit still lifes.
- 1 of the 2,299,616,637 31-bit still lifes.
- 2 of the 5,716,948,683 32-bit still lifes.
- 1 40-bit still life.
- Main article: List of rules investigated on Catagolue
Catagolue supports arbitrary outer-totalistic rules and non-totalistic rules (in Hensel notation), as well as Generations and Larger than Life rules, along with indirect support for Margolus rules (specifically block cellular automata) using inflated soups on specific rules; in practice, only non-exploding rules can reasonably be investigated unless a certain symmetry can be assured to never explode. More than 3,600 rules have been looked at as of December 9, 2017. The Moore neighbourhood is currently the only supported neighbourhood.
Rules investigated on Catagolue include multiple close Life variants:
- B3/S238 (EightLife)
- B36/S23 (HighLife)
- B368/S238 (Low Death)
- B38/S23 (Pedestrian Life)
- B38/S238 (HoneyLife)
- B3/S2-i34q (tlife)
- B36/S2-i34q (thighlife)
- B37/S2-i34q (tdrylife)
- B38/S2-i34q (tpedestrianlife)
Other notable rules investigated include:
- B3/S12 (Flock)
- B3/S13 (LowLife)
- B345/S5 (Long Life)
- B36/S125 (2x2)
- B3678/S34678 (Day & Night)
- B368/S245 (Move, aka Morley)
Catagolue as a generic pattern inventory
Although primarily used for soup-searching in practice, Catagolue can be used as a generic pattern inventory/warehouse, as shown by e.g. the slow salvo data it collected (see above). Users are encouraged come up with their own rulestrings, symmetry types, and object codes:
- [Catagolue] basically accepts anything that you choose to pass off as a rule name, symmetry type, and apgcode. If you make a search program which produces haul files for your favourite CA, then Catagolue will happily build a distributed census [...]
- The search program needn't even be a soup search: if you have a depth-first search program such as gfind or zfind, and you have a correspondence between positions in the search tree and alphanumeric strings (where prefixes correspond to ancestors), then you can conduct a distributed search for (say) width-20 c/6 spaceships using the existing Catagolue framework. If you incorporate all of zfind's command-line hyperparameters (period, offset, memory size, etc.) into the beginning of this string, then you can simply have a 'symmetry' called zfind whose tabulations will include things such as xq7, xq10, xq19 (potentially!), etc. And this will work without changing Catagolue in any way.
Contributors to Catagolue have user pages tracking their contributions to the main Conway Life census, B3/S23/C1.[endpoint 4] In addition to providing an overview of number of objects submitted recently compared to other users, user pages list important discoveries and awarded badges.
Users are credited for discoveries if they find one of the first 20 occurrences of an interesting object: any spaceship (other than the glider), any oscillator, any linear growth pattern, or any sufficiently small (14-bit) or large still life. Certain other types of still lifes, such as Eater 2 precursors, are also credited.
The following badges are currently awarded for contributions to B3/S23/C1:
- Conchita[note 9]: find a soup containing a phoenix.
- Gemini: discover a new twin bees shuttle variant.
- Gigamyriad: contribute 1013 objects.
- Hitchhiker: find a soup containing a Kok's galaxy.
- Limitless: observe a new natural infinite-growth pattern.
- Monarchist: discover a new queen bee shuttle variant.
- Sprotsmanship[note 10]: contribute one third of a trillion objects to a different rule or symmetry.
- Trillionaire: contribute one trillion objects.
- Voyager: find one of the first twenty occurrences of a spaceship.
Interesting new objects are additionally announced on Twitter by an unofficial Twitter bot.
Catagolue census data for the main Conway Life census, B3/S23/C1, is backed up remotely every day at 17:29;[note 11] the first such backup was made on September 24, 2015. For other symmetries or rules, a remote backup may be instigated manually by calling the backupcron endpoint,[endpoint 5] with the desired rule and symmetry. Remote backups can be viewed by appending the date to the main census URL.[endpoint 6]
Local backups of Catagolue census data may be made by calling the textcensus endpoint for the desired rule and symmetry.[endpoint 7] The list of objects returned can be sorted by object frequency[endpoint 8], but this should be avoided when possible to reduce server load. It is also possible to restrict objects returned to a certain prefix,[endpoint 9], or to query the number of objects, grouped by prefix and including a total.[endpoint 10]
Catagolue does not accept hauls exceeding 1 MiB; additionally, hauls must contains a minimum of 10,000 soups or 250,000 objects.
Although the apgsearch family of programs has bespoke support for flotillae composed of two standard spaceships in Conway's Life, it can fail to properly separate larger non-interacting groups, or groups of any size in non-Life rules. Pseudo still lifes composed of many constituent parts may also fail to be separated properly.
The maximum period for spaceships and oscillators is 1,000 in apgsearch 1.x, 4,000 in apgnano (apgsearch 2.x), 1,280 in apgmera (apgsearch 3.x), and 1,048,576 in apgluxe (apgsearch 4.x); higher-period objects are classified as PATHOLOGICAL. The maximum bounding box for any spaceship, oscillator or still life is 40×40; larger objects are classified as ov_ (oversized). High-period linear-growth patterns may not be identified and instead reported as zz_LINEAR.
Although Catagolue verifies that an object in a given rule behaves as specified by its code, the site makes no attempt to reject non-canonical codes (e.g. xp2_222 rather than xp2_7 for the blinker); furthermore, the site accepts various anomalous prefixes (e.g. xp0 and xq0). No attempt is made to normalize or reject anomalous rules (e.g. "b33s23"), although a feature is planned to clear out censuses which do not adhere to the Catagolue naming conventions.
- Other censuses:
- Related topics:
- All users who contributed to any rule/symmetry.
- Soups with density 0.25 and 0.75 were also investigated to a minor extent; see the "Higher Symmetries" section.
- The name "Catagolue" is an amalgam of "Catalogue" and "GoL" (Game of Life).
- The 25% pseudo-symmetry was also briefly used but abandoned due to conflicts with percent-encoding for URIs/URLs.
- As of June 23, 2016, only B3/S23/C1, B3/S23/D2_+1, B3/S23/D2_+2 and B3/S238/C1 have peer review enabled.
- I.e. all symmetries except C1, SS, and any symmetry suffixed "_Test".
- This list excludes oversized patterns (ov_), unusual-growth patterns (zz_), and pathological patterns (PATHOLOGICAL); see Limitations.
- Not properly recognized by apgsearch < 4.0; see Limitations.
- The "Conchita" badge is named after Conchita Wurst, the Austrian singer who won the 2014 Eurovision Song Contest with the song "Rise Like a Phoenix".
- Ramanujan time, after the Hardy–Ramanujan number (1729) of G. H. Hardy's and Srinivasa Ramanujan's.
- https://catagolue.appspot.com/user/<user name>
- Adam P. Goucher (February 20, 2015). "apgsearch 1.0". ConwayLife.com forums. Retrieved on June 23, 2016.
- Billabob (April 24, 2015). "Re: Soup search results". ConwayLife.com forums. Retrieved on June 23, 2016.
- Adam P. Goucher (September 2, 2015). "Re: Soup search results". ConwayLife.com forums. Retrieved on June 23, 2016.
- Adam P. Goucher (June 28, 2016). "Statistics". Catagolue. Retrieved on June 28, 2016.
- Adam P. Goucher (August 26, 2014). "Re: Thread For Your Accidental Discoveries". ConwayLife.com forums. Retrieved on June 12, 2016.
- gameoflifeboy (September 28, 2015). "Re: Soup search results". ConwayLife.com forums. Retrieved on June 12, 2016.
- Re: Hacking apgsearch (discussion thread) at the ConwayLife.com forums
- Adam P. Goucher. Re: apgsearch v4.0 (discussion thread) at the ConwayLife.com forums
- "Census results for B3/S23/"Saka_Test"". Catagolue. Retrieved on December 21, 2016.
- thunk (November 12, 2016). "Re: Soup search results". ConwayLife.com forums. Retrieved on November 12, 2016.
- Re: Extending apgcodes to larger patterns (discussion thread) at the ConwayLife.com forums
- Re: Hacking apgsearch (discussion thread) at the ConwayLife.com forums
- Adam P. Goucher (January 29, 2017). "Re: Catagolue Oddities". ConwayLife.com forums. Retrieved on January 29, 2017.
- Adam P. Goucher (June 30, 2016). "Re: B3/S12-ae34ceit". ConwayLife.com forums. Retrieved on July 5, 2016.
- Bag Sinhwan (박신환) (November 28, 2016). "Re: Soup search results". ConwayLife.com forums. Retrieved on November 28, 2016.
- Catagolue Discussion Thread (discussion thread) at the ConwayLife.com forums
- Soup search results (discussion thread) at the ConwayLife.com forums
- Soup search results in rules other than Conway's Life (discussion thread) at the ConwayLife.com forums
- apgsearch v4.0 (discussion thread) at the ConwayLife.com forums
- apgsearch 3.1 (discussion thread) at the ConwayLife.com forums
- apgnano (apgsearch 2.x) code repository
- apgsearch 2.2 (discussion thread) at the ConwayLife.com forums
- apgsearch v1.0 (discussion thread) at the ConwayLife.com forums
- Hacking apgsearch (discussion thread) at the ConwayLife.com forums
Unofficial browser extension
- Catagolue Reloaded browser extension (Opera)
- Catagolue browser extension (discussion thread) at the ConwayLife.com forums
Unofficial Twitter bot
- Twitter bot (discussion thread) at the ConwayLife.com forums