calcyman wrote:Bullet51 wrote:Another one:
Very nice! It would be nicer to have one that's transparent in the sense that there are no debris blocking the MWSS lane.
Transparent and Chainable
Another important detail is that the faster-than-c/2 fuse has to restart at the far side of each *WSS-producing island. In the samples so far, the ash created by the death of the fuse seems to be needed for the spaceship-building reaction. Without some way to restart the faster-than-c/2 fuse, there won't be any opposing *WSSes (or even ash objects) for the generated *WSSes to hit.
A search for workable reactions will only have to continue until it finds one transparent eastward *WSS generator, and one transparent westward *WSS generator that can collide with the eastward *WSSess and produce gliders. It might be worth setting up an exhaustive enumeration instead of a randomized search, to keep from re-searching the same configurations thousands of times without knowing it.
Can It Be Done Without A Tape?
calcyman wrote:codeholic wrote:Besides the universal constructor itself, one would need a tape to run it on.
The tape can be taken to be part of the universal constructor.
Ow! That's a bigger mental leap than I can make from a standing start. So the tape might just be a series of west *WSS-making islands, with construction or reconstruction information somehow encoded in the timing between the *WSSes?
That's doable, I suppose, but I don't really see why a tape is necessary. Seems like it would be simpler to use east-*WSS/west-*WSS collisions to build a WIRC and an EIRC (Westward Island Rebuilder Circuit and an Eastward Island Rebuilder Circuit). They'll inevitably be built in the middle of the spaceship, between the east-*WSS islands and the west-*WSS islands. They have to do completely different things to test the ash and rebuild the islands in each direction, so it seems like they might as well be separate mechanisms.
The WIRC and EIRC would run through open-ended test and rebuild cycles until the entire line of blinkers has been rebuilt at the correct offset. When the WIRC and EIRC both report that they've completed the reconstruction, their self-destruct mechanisms can be triggered, and the tail end of the self-destruction sends a signal out to the far edge of the spaceship, where the fuse has to be restarted.
Any small fixed-length part of the blinker line that can't be reconstructed (because the WIRC and EIRC circuitry gets in the way) could be restored by a freeze-dried slow salvo constructed at the same time as the WIRC and EIRC.
Isn't This Project About As Easy To Complete As Poundstone's Replicator?
I can see that this design is not entirely impossible, but as a self-construction project it looks like it will be easily several orders of magnitude harder than anything that's been done so far.
It's going to take a fairly large pile of constructible circuitry to successfully test the various types of burned out ash, and respond correctly to each possibility by rebuilding whatever was there at the correct offset. There are at least two kinds of burned out-ash for each [W|E]IRC to deal with -- *WSS island and clean blinker fuse -- and probably more.
Unless it turns out that monoparity collisions are sufficient for universal construction, it seems as if some kind of alternate fuse will have to be included, whenever the spacing between colliding *WSSes has to shift from odd to even or vice versa.
Then there will probably have to be another type of ash at each end of the blinker line, to tell the [W|E]IRC that the end of the line has been reached. Those markers will need different cleanup and reconstruction recipes -- which means even more complex logic circuitry.
I suppose an alternative would be to encode, let's say, a counting mechanism that runs the WIRC and EIRC for exactly 2^N cycles, and then stops... then pick the first N for which 2^N is slightly too big, and find NOP recipes to use up any extra cycles (e.g., *WSSes colliding to produce nothing). That would get rid of the end-of-line markers at the cost of a big 2^N counter... the trade might or might not be worth it.
Or, With Some Handwaving, We Could Find An Incredibly Amazing *WSS Salvo
The only way I can see to get rid of the O(n^2) test-and-response slowdown during the rebuild process, would be to build an improbably clever *WSS salvo, that rebuilds an *WSS island if it hits ash from and *WSS island, but otherwise just moves an elbow by four cells and adds another blinker to a clean blinker fuse... Then there wouldn't be any test-and-response slowdown -- could just send one test salvo after another, and arrange it so there are 2^N structures to absorb them all.
No doubt it can be proven that salvos like this exist, as a corollary to the old "... because universal replicators. Q.E.D." But I'm seriously skeptical that anyone could find such a salvo, that's small enough to make this 1xN spaceship problem any easier to solve in practice.
Summary: This Thing Would Not Be Small
I wouldn't expect that an actual 1xN spaceship pattern could be run through a full cycle in Golly, any time soon -- at least, not unless Golly adds a special custom algorithm for simulating 1xN spaceships. The rebuild stage will probably take at least O(n^2) time, where n is the number of *WSS pairs generating the slow salvo to construct the WIRC/EIRC.
Building a WIRC/EIRC/freeze-dried salvo for patching/self-destruct circuit combination is going to need a
lot of *WSS pairs.