This evening I patched up the Gemini recipe, due to being too tired to do anything else. Ended up with 175183 gliders when I was done, so it's not exactly clear what was wrong with my math yesterday... Haven't re-tested since the final fix, but I think this is a working glider synthesis:dvgrn wrote:That brings the recipe down within spitting distance of 175K gliders -- 175172 to be precise (if not necessarily exact).
EDIT: All right, 175167 gliders, with plenty of potential for further reductions but it's not going to be me doing any more arbitrary silly patching.... The Gemini builds its initial elbow blocks in a convoluted way to avoid having to move its construction arms long distances, but there was no need for the initial construction to do it that way.
[Just by the way, this nonstandard way that the three elbow blocks are created makes it a little tricky to build guns for the original Gemini spaceship. In point of fact, a true Gemini gun has never been built: all the known "Gemini guns" really build Geminoid spaceships with exactly the same circuitry but slightly longer recipe glider streams.]
Thanks for the really elegant idea, Chris. Destructor-arm suppression in a mere 14 gliders made the problem into an insurmountable opportunity.
EDIT: Notice that the synthesis can easily be simulated at a step size of 2^20 or above for a good fraction of the construction, but then Golly slows to a relative crawl after 64 million ticks thanks to the opposing glider streams, and seems to be most efficient at step sizes between 2^12 and 2^15 from then on.
You know that Escher print where a dragon sticks its head through little folded gaps in the paper it's drawn on? I keep getting that image stuck in my head, as an illustration of a way that Golly could simulate the Gemini and other similar boustrophedonic-glider devices, at really breakneck speed. There would just have to be a way to define hashtile adjacency in a very nonstandard way just in a few key locations near each replicator unit, such that all of the gliders heading southeast get stored on completely separate hashtiles from all of the gliders heading northwest.
If I had a few years of free time, I'd be tempted to attempt a generalization of Golly's Hashlife algorithm along these lines -- along with proper support for bounded grids and infinite non-empty universes (where the default tile is something other than vacuum). And efficient Hashlife representations of non-2^N spatial periodicity: arrange to leave off rows and/or columns of certain sized hashtiles, to get say 63x63 periodicity instead of 64x64.
Luckily I think I'm safe: too much else to think about in Real Life these days...!
EDIT on Talk Like A Pirate Day 2019: Arrrr, shiver me timbers, calcyman implemented something like the above idea last year, for simulating the 0E0P metacell. It's called StreamLife.