A spaceship (also referred to as a glider or less commonly a fish, and commonly shortened to "ship") is a finite pattern that returns to its initial state after a number of generations (known as its period) but in a different location.
- Main article: Speed
The speed of a spaceship is the number of cells that the pattern moves during its period divided by the period length. This is expressed in terms of c (the metaphorical "speed of light") which is one cell per generation; thus, a spaceship with a period of five that moves two cells to the left during its period travels at the speed of 2c/5.
Until the construction of Gemini in May 2010, all known spaceships in Life traveled either orthogonally (only horizontal or vertical displacement) or diagonally (equal horizontal and vertical displacement); other oblique spaceships have been constructed since then, e.g. waterbear and the Parallel HBK. It is known that Life has spaceships that travel in all rational directions at arbitrarily slow speeds (see universal constructor).
Spaceships traveling in other directions and at different speeds have also been constructed in other two dimensional cellular automata.
The maximum speed for Life is c/2 orthogonal and c/4 diagonal (and continually, c/6 for slope 2, c/8 for slope 3, etc.); however, certain agar crawlers such as lightspeed wire can break this speed in their respective medium. Spaceships in the traditional Moore neighbourhood of range 1 have a maximum speed of c, although Larger than Life neighbourhoods can increase this limit depending on the interactable distance between cells. For Life, no spaceship can move at speed (m,n)c/x where (m+n)/x > 0.5; for other outer-totalistic and non-totalistic rules, the limit is at most 1. Certain range-1 non-isotropic rules can harbour c/1 diagonal spaceships, giving a limit of 2.
- Main article: Types of spaceships
Spaceships are most commonly sorted by their speed and direction, and sometimes their period. They can be separated into three fundamental categories:
Elementary spaceships are the smallest classification of spaceships. This class consists of naturally-occurring ships, as well as those found by direct computer search, such as the weekender. Despite their generally small size, only a few of them have been known to have emerged from soups. Constructing guns for these spaceships is usually difficult, as only a few elementary spaceships have known glider syntheses; those that do generally require a lot of gliders in awkward positions.
|Speed||Direction||Smallest known||Minimum # of cells|
|(2,1)c/6||slope 2 (knightwise)||Sir Robin||282|
|Speed||Direction||Smallest known||Minimum # of cells|
|6c/12||orthogonal||lightweight Schick engine||39|
|3c/15||orthogonal||p15 pre-pulsar spaceship||494|
|12c/28||orthogonal||3c/7 wave stabilization||1434|
|2c/8||diagonal||p8 swan tagalong||117|
Engineered spaceships are defined as spaceships consisting of small interacting components. Some engineered spaceships are composed of hundreds of thousands or even millions of active cells; these are also sometimes referred to as caterpillars after the first engineered macro-spaceship. Other simpler mechanisms like the Corderships might need a relatively small number of components, down to a minimum of just two for the 2-engine Cordership. Such spaceships have occurred naturally in other rules, but not yet in Conway Life.
Engineered spaceships have fixed speeds, because their mechanisms depend on supporting a specific active reaction that travels at one particular speed. Some rely on "crawlers", reactions in which a pattern reacts with another pattern, producing both the patterns in different positions as in the pi crawler. Others, like the Corderships and pufferfish spaceships, rely on stabilised puffer engines.
|Speed||Direction||Smallest known||Minimum # of cells||Classification|
|c/2||orthogonal||pufferfish spaceship||235||Stabilized puffer engine|
|c/12||diagonal||2-engine Cordership||100||Stabilized puffer engine|
Traveling signal loops
A traveling signal loop is a subcategory somewhat similar to an engineered spaceship, but with key differences. The usual reason for constructing a traveling signal loop is to extract an extra output glider at some point in each cycle, producing an engineless rake. Suppressing a rake's output glider will trivially produce a high-period spaceship.
One main difference between engineered spaceships and traveling signal loops is that the "specific active reactions that travel at one particular speed" are spaceships themselves, and don't need any additional support. The signals traveling in the signal loops can generally be removed without having any effect on the fleet of spaceships supporting the loop.
|2c/7||orthogonal||weekender distaff||High-period signal loop|
|c/3||orthogonal||c/3 orthogonal rake||High-period signal loop|
|c/4||orthogonal||p388 c/4 forward rake, David Bell's adjustable-period backrake||High-period signal loop|
|c/5||orthogonal||c/5 orthogonal rake||High-period signal loop|
|2c/5||orthogonal||2c/5 orthogonal rake||High-period signal loop|
|c/4||diagonal||c/4 diagonal rake||High-period signal loop|
|c/5||diagonal||c/5 diagonal rake||High-period signal loop|
|c/12||diagonal||c/12 diagonal rake||High-period signal loop|
Adjustable spaceships (formerly engineerable spaceships) are the third class of spaceships. On average smaller than the engineered spaceships in terms of population, but much larger in bounding box, their magic comes from having (to an extent) adjustable features, usually speed. With some almost always trivial modifications, these spaceships can be made to travel at different velocities and even directions. Rather than being searched for, programs exist that explicitly construct the spaceships. Adjustable spaceships can be based on variable-speed reactions such as the half-bakery and glider reaction or the freezing/reanimation cycle of the Caterloopillar, or by reading instruction tapes as in the Gemini. Families of adjustable spaceships include the Geminoids, Demonoids, Orthogonoids, loopships, half-baked knightships and Caterloopillars.
|Speed||Direction||Smallest known||Minimum # of cells|
|All speeds slower than c/4||orthogonal||other caterloopillars||Varies|
|(5120,1024)c/16849793||slope 5 (ibiswise)||Gemini||846,278|
|(3,1)c/3948264||slope 3 (camelwise)||camelship||239,822|
|(4096,2048)c/17783745||slope 2 (knightwise)||Gemini 2||<=872,252|
|(6,3)c/245912||slope 2 (knightwise)||Parallel HBK||132,945|
|(6,3)c/2621440||slope 2 (knightwise)||Half-baked knightship||1,049,395|
- Main article: Spaceship types
Although spaceships are most commonly categorized by their speed and direction, other categorizations have been applied to spaceships based on their appearances, components, or other properties. One such categorization is the symmetry of spaceships: spaceships can be bilaterally symmetric (e.g. copperhead), exhibit glide symmetry (e.g. glider), or simply be asymmetric (e.g. loafer). Other somewhat subjective categorizations have also been made, such as greyships, spaceships filled with large amounts of static, live cells in the form of an agar, or smoking ships, which produce large sparks, a notable example being the Schick engine. A spaceship may also support other components which would not function as spaceships on their own. Given a freestanding spaceship, such additional components are often referred to as tagalongs; however they can be attached to any side of a spaceship, such as pushalong 1 and sidecar. Unstable spaceships immersed in a sustaining cloud are known as flotillae. A well known example is that of the overweight spaceships, which are unstable alone but may be 'escorted' by two or more smaller spaceships.
The four smallest spaceships in life, the glider, lightweight spaceship, middleweight spaceship and heavyweight spaceship, were all found by hand in 1970. For almost twenty years spaceship development was limited to adding tagalongs to the known c/2 spaceships, such as the Schick engine.
Significant advances in spaceship technology came in 1989, when Dean Hickerson began using automated searches based on a depth-first backtracking algorithm. These searches found orthogonal spaceships with speeds of c/3 and c/4, new c/2 ships, and the first spaceship other than the glider to travel at the speed of c/4 diagonally, dubbed the big glider.
Hickerson continued to find new spaceship speeds, the first of this decade being 2c/5 orthogonal, plus several ways to combine switch engines to create the first c/12 diagonal spaceships, named Corderships in honour of Charles Corderman.
The next spaceship speed to be discovered was that of the orthogonal c/5 snail, found by Tim Coe in 1996, with a program he had designed using breadth-first searching, and which could split tasks between multiple CPUs. In the following year, David Bell found the much smaller c/5 spider using lifesrc, a program based on Hickerson's search algorithm.
Eppstein put his search program to good use in 2000, discovering the first spaceship that travels at the speed of 2c/7 orthogonally, the weekender. A search by Paul Tooke using the same program found the first c/6 orthogonal spaceship, the dragon, later that year. Also in 2000, Jason Summers found the first c/5 diagonal spaceship using David Bell's lifesrc program.
In May 2010 Andrew J. Wade created a universal constructor-based spaceship, Gemini, which travels at a speed of (5120,1024)c/33699586. This was the first explicitly constructed spaceship in Life to travel in an oblique direction, and also yielded the first explicit method of constructing arbitrarily slow spaceships.
In Febuary 2013, the first c/7 orthogonal spaceship, loafer, was discovered by Josh Ball.
2014 provided a handful of new engineered spaceships, using various new technologies. In July, several half-bakery-based knightships were constructed with a new technique not requiring universal-constructor circuitry. These produced spaceships that were both much slower and much smaller than the Gemini variants. In September, Dave Greene and Chris Cain completed two 31c/240 orthogonal spaceships, along the same general lines as the original Caterpillar but using a number of new mechanisms. Finally, in December, an oblique caterpillar dubbed the Waterbear was completed by Brett Berger, traveling at (23,5)c/79. Richard Schank discovered pufferfish, a c/2 puffer, and Ivan Fomichev found a c/2 fuse for its exhaust and combined two pufferfish with fuses to assemble the first wholly high-period c/2 spaceship.
In December 2015, Chris Cain completed a diagonal self-constructing spaceship -- a "0hd Demonoid" -- based on Geminoid technology, adapted from a larger 10hd version constructed in November in collaboration with Dave Greene.
In March 2016, forum user 'zdr' discovered copperhead, an extremely small c/10 spaceship. A pseudo-tagalong for this spaceship, alongside many other c/10 technologies, were constructed within two months after the discovery of the ship.
In April 2016, Michael Simkin finished the adjustable caterloopillar project, making it possible to build spaceships of arbitrary orthogonal speeds slower than c/4.
In June 2016, Tim Coe found a large elementary 3c/7 orthogonal spaceship, the spaghetti monster.
|Speed||Direction||First discovered||Discoverer||Year of discovery|
|c/2||orthogonal||lightweight spaceship||John Conway||1970|
|c/12||diagonal||13-engine Cordership||Dean Hickerson||1991|
|17c/45||orthogonal||caterpillar||Gabriel Nivasch, Jason Summers, and David Bell||2004|
|(5120,1024)c/16849793||slope 5 (ibiswise)||Gemini||Andrew J. Wade||2010|
|(4096,2048)c/17783745||slope 2 (knightwise)||Gemini 2||Dave Greene||2010|
|(3072,1024)c/36000001||slope 3 (camelwise)||Gemini 3||Dave Greene||2010|
|(6,3)c/2621440||slope 2 (knightwise)||Half-baked knightship||Adam P. Goucher||2014|
|(6,3)c/245912||slope 2 (knightwise)||Parallel HBK||Chris Cain||2014|
|31c/240||orthogonal||shield bug||Dave Greene||2014|
|(23,5)c/79||slope 23/5||waterbear||Brett Berger||2014|
|130c/(1636712+16N)||diagonal||10hd Demonoid||Chris Cain and Dave Greene||2015|
|65c/(438852+16N)||diagonal||0hd Demonoid||Chris Cain||2015|
|All speeds slower than c/4||orthogonal||caterloopillar||Michael Simkin||2016|
|3c/7||orthogonal||Spaghetti monster||Tim Coe||2016|
|(2,1)c/6||slope 2 (knightwise)||Sir Robin||Adam P. Goucher and Tomas Rokicki||2018|
In other rules
Many Life-like cellular automata afford spaceships, as do their generalizations; this includes both outer-totalistic and isotropic non-totalistic rules, as well as non-isotropic, Generations and Larger than Life rules.
Various segments of the Life-like rulespace cannot contain spaceships, however. For instance, assuming B0 is not active:
- In any rule with B1, any pattern expands in all directions.
- In non-totalistic rules, this applies to any rule with B1c.
- In any rule with S01234a, the trailing edge of a pattern cannot die.
- It appears that in some rules patterns cannot escape the bounding box of the bounding diamond. This is likely the case for LongLife.
- In any rule with B23/S0, the trailing edge of a pattern cannot die.
- In any rule without B1, B2 or B3, no pattern can escape its initial bounding box.
- In non-totalistic rules, this applies to any rule without at least one of B1ce, B2ac or B3i.
- In any rule with none of B123, no pattern can escape its initial bounding diamond.
- In non-totalistic rules, this applies to any rule with none of B1e, B1c, B2a, B2e or B3a.
The slowest known orthogonal elementary non-adjustable spaceship in any range-1 Life-like rule is a c/5648 orthogonal spaceship in the rule Gems, followed by a c/2068 orthogonal spaceship in Gems Minor.
Currently known speeds
There is currently an ongoing tabulation at the 5s project cataloging the smallest known spaceships for each speed across different rules.
Alongside these, certain "series" of speeds can be proved to all exist:
- All true-period orthogonal spaceships of the form c/n are known to exist in range-1 Life-like cellular automata; true-period c/1, c/2 and c/3 spaceships are known, all c/n speeds where n is even and greater than 3 can be constructed using the rule B2c3ae4ai56c/S2-kn3-enq4, and all c/n speeds where n is odd and greater than 4 can be constructed using the rule B2c3aj4nrt5i6c78/S1c23enr4aet5-iq67. It is not currently known if there exists a rule with a family of spaceships that simulate an infinite range of speeds of form 2c/n where n is odd, 3c/n where n is not divisible by 3, and so on, and it is also not known if similar technology can be applied to other directions.
- All orthogonal spaceships of the form 2c/n, where n is double an odd number greater than 4, are known, and can be constructed using the rule B2ik3aijn4ant5r6i7e/S02a4i.
- All period-1 orthogonal spaceships of the form nc/1 where n is an integer greater than 0 are known to exist, using a trick detailed here.
- "Glider". The Life Lexicon. Stephen Silver. Retrieved on April 18, 2009.
- "Fish". The Life Lexicon. Stephen Silver. Retrieved on April 18, 2009.
- "Gliders in Life-Like Cellular Automata". David Eppstein. Retrieved on April 18, 2009.
- Nathaniel Johnston (October 30, 2009). "Spaceship Speed Limits in "B3" Life-Like Cellular Automata". Retrieved on December 12, 2016.
- Jason Summers' jslife pattern collection. Retrieved on January 17, 2019.
- Alexey Nigin (7 Mar 2016). "New Spaceship Speed in Conway’s Game of Life". Retrieved on 11 Jun 2016.
- Tim Coe. "c/5 Orthogonal spaceship". Paul's Page of Conway's Life Miscellany. Retrieved on April 18, 2009.
- David Bell. "New c/5 spaceship". Paul's Page of Conway's Life Miscellany. Retrieved on April 18, 2009.
- David Eppstein. "Searching for Spaceships (PDF)". Retrieved on April 18, 2009.
- Adam P. Goucher (May 19, 2010). "Oblique Life spaceship created". Game of Life News. Retrieved on May 21, 2010.
- gameoflifeboy (June 30, 2017). Re: Larger than Life (discussion thread) at the ConwayLife.com forums
- AforAmpere (August 3, 2017). Re: Larger than Life (discussion thread) at the ConwayLife.com forums