It can be proved that any speed with the usual constraints[a] has a ship of that speed. First, it is possible to construct a front end by overlaying a sequence of replicators which are destroyed at the front (see diagram):
Code: Select all
x = 18, y = 26, rule = B2c3a6ac7e/S1e2cik3ejnr4i
2b16o$bobo3bo3bo3bo$2b15o3$6bo$5b3o$6bo4$b16o$o4bobobobo$b15o3$8bo$6bo
bo$6bobo$6bobo$6bo3$2b16o$bobobo3bo5bo$2b15o!
Next, consider the very first space where a replicator could be. If it is wrong (on when it should be off or vice versa), this can be fixed by adding a replicator in the original pattern (period) cells[b] away from where the error will be. If it is the same we do nothing. We then move to the next spot and do the same thing.
After moving far enough away from the front end[c], the next cell will always be a simple xor of certain cells within the last (period) cells. This sequence will be periodic for obvious reasons. Therefore, eventually it will loop back to the sequence at the front[c]. The back end can be placed at the new front and we will have a complete spaceship.
[a]: The speed is less than or equal to c/3 and the sum of the period and displacement is even. Also, nc/3n spaceships are impossible, but it should be possible to have, say, 2c/10 spaceships which aren't just c/5s.
[b]: This does not affect any cells beyond the wrong cell because it travels at light speed and so it takes a full cycle to move to the current spot.
[c]: While it definitely will loop back to the sequence at the front in the same phase, it is possible that it may appear earlier but phase-shifted relative to the front.