How does the RCT universal constructor work?

For discussion of specific patterns or specific families of patterns, both newly-discovered and well-known.
Post Reply
User avatar
Gustone
Posts: 744
Joined: March 6th, 2019, 2:26 am

How does the RCT universal constructor work?

Post by Gustone » July 9th, 2019, 3:14 am

I've looked on LifeWiki and the sites it listed as references, but I still don't understand how the RCT universal constructor is constructing or how its signalling processes work. Would someone here be able to give me at least a broad overview of how it functions? Details aren't necessary, but would be appreciated nevertheless.

User avatar
dvgrn
Moderator
Posts: 10713
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: How does the RCT universal constructor work?

Post by dvgrn » July 9th, 2019, 8:50 am

Gustone wrote:I've looked on LifeWiki and the sites it listed as references, but I still don't understand how the RCT universal constructor is constructing or how its signalling processes work. Would someone here be able to give me at least a broad overview of how it functions? Details aren't necessary, but would be appreciated nevertheless.
Did you find this summary, which was a response to a similar question from Dani?

There are definitely some details left out of this -- especially exactly how the northeast-traveling monochromatic P1 slow gliders produced by the 9fd/19fd crystal switching system shoot down some blocks in the BLSE track, and move others around to build one-time turners that will eventually send gliders northwest toward "target T".

This is something that we could pretty easily sort out a sample solution for, but I think so far the only post related to it is this one of calcyman's. That post doesn't show how the 9fd/19fd crystal switching system produces the NE-traveling gliders. It does show how the NE-traveling gliders will eventually produce NW-traveling gliders, in the second LifeViewer pattern (but the outputs are confusingly shown going SE instead of NW -- just reflect the sample pattern across a NE/SW diagonal line).

What other details are you missing, or is the summary just too deep in RCT jargon to be understandable? Feel free to post more specific questions here.

User avatar
calcyman
Moderator
Posts: 2938
Joined: June 1st, 2009, 4:32 pm

Re: How does the RCT universal constructor work?

Post by calcyman » July 9th, 2019, 10:38 am

dvgrn wrote:There are definitely some details left out of this -- especially exactly how the northeast-traveling monochromatic P1 slow gliders produced by the 9fd/19fd crystal switching system shoot down some blocks in the BLSE track, and move others around to build one-time turners that will eventually send gliders northwest toward "target T".

This is something that we could pretty easily sort out a sample solution for, but I think so far the only post related to it is this one of calcyman's. That post doesn't show how the 9fd/19fd crystal switching system produces the NE-traveling gliders.
That's because you're looking for the other post of mine (the one that begins Hakuna Matata): viewtopic.php?f=2&t=3347&start=150#p61632

Chris Cain deserves the complete credit for the glider production, by the way; all I did was glide-reflected the mechanism so it fires inwards (i.e. into the BLSE debris) instead of outwards and checked that everything still worked as planned.

Maybe, though, Gustone was asking a more fundamental high-level question. Did we ever explicitly explain that the position of the Sakapuffer from the origin is treated as a binary number, and we successively right-shift bits off of it to instruct the construction arm?
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
dvgrn
Moderator
Posts: 10713
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: How does the RCT universal constructor work?

Post by dvgrn » July 9th, 2019, 12:18 pm

calcyman wrote:... you're looking for the other post of mine (the one that begins Hakuna Matata): viewtopic.php?f=2&t=3347&start=150#p61632
Yup, that's a good start, but it's a long way from the recipe needed to produce enough slow^1 gliders to knock a series of holes through the BLSE debris, and build and trigger a series of one-time turners on the NE side.

Those one-time turners are then supposed to produce slow^2 gliders heading NW toward target T. The slow^2 gliders will then then produce polychromatic P2 slow^3 gliders that do the actual construction. I'm not clear any more on whether we want the slow^2 stage to be P1 or P2 -- might be simpler if they're P2, right?

I think we can pretty easily show a complete set of slow^1 gliders building target T (which can be an elbow block plus a hand target block to the NE of it) (?). Also complete sets of slow^1 gliders building one-time turners at all the different offsets needed to make the necessary slow^2 gliders. Also a universal set of slow^2 recipes implementing PULL, PUSH, FIREWHITE, FIREBLACK at location T. Then after that point we can just use recipes compiled by slsparse.
calcyman wrote:Maybe, though, Gustone was asking a more fundamental high-level question. Did we ever explicitly explain that the position of the Sakapuffer from the origin is treated as a binary number, and we successively right-shift bits off of it to instruct the construction arm?
That seems pretty clear, but it would be nice to have a working example. Maybe we could encode a complete recipe for the elbow and hand at T, at least, into a very faraway Sakapuffer location?

It would be fairly annoying to run the pattern and see the T construction recipe run to completion, just because you keep having to reduce the step size to see the construction happening at a more or less constant speed. Maybe a helper Lua script could be written to help run the pattern while progressively dialing down the step size.

User avatar
calcyman
Moderator
Posts: 2938
Joined: June 1st, 2009, 4:32 pm

Re: How does the RCT universal constructor work?

Post by calcyman » July 9th, 2019, 1:15 pm

Why do we need slow^3 gliders? My understanding is that the slow^2 gliders will be doing the actual construction.
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
dvgrn
Moderator
Posts: 10713
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: How does the RCT universal constructor work?

Post by dvgrn » July 9th, 2019, 1:47 pm

calcyman wrote:Why do we need slow^3 gliders? My understanding is that the slow^2 gliders will be doing the actual construction.
Well, I collected that part of the summary from earlier designs, when the Cost of Living was still way up at 59 gliders. You originally billed it as a way to avoid the Quadratic Problem (where you have to haul new BLSE elbow blocks from farther and farther away, every time you want to send out a new NE glider).

Instead of having to add a larger and larger number of bits coming in from the Sakapuffer to haul new elbows back and produce each of the actual construction gliders, you just have to multiply the number of required bits by some constant (and add the slow^3 glider stage). That ends up being worthwhile fairly quickly... doesn't it?

User avatar
calcyman
Moderator
Posts: 2938
Joined: June 1st, 2009, 4:32 pm

Re: How does the RCT universal constructor work?

Post by calcyman » July 9th, 2019, 2:08 pm

dvgrn wrote:
calcyman wrote:Why do we need slow^3 gliders? My understanding is that the slow^2 gliders will be doing the actual construction.
Well, I collected that part of the summary from earlier designs, when the Cost of Living was still way up at 59 gliders. You originally billed it as a way to avoid the Quadratic Problem (where you have to haul new BLSE elbow blocks from farther and farther away, every time you want to send out a new NE glider).

Instead of having to add a larger and larger number of bits coming in from the Sakapuffer to haul new elbows back and produce each of the actual construction gliders, you just have to multiply the number of required bits by some constant (and add the slow^3 glider stage). That ends up being worthwhile fairly quickly... doesn't it?
Maybe I should clarify: the construction can be done directly with the NW-bound slow^2 gliders.
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
dvgrn
Moderator
Posts: 10713
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: How does the RCT universal constructor work?

Post by dvgrn » July 9th, 2019, 2:48 pm

calcyman wrote:Maybe I should clarify: the construction can be done directly with the NW-bound slow^2 gliders.
Sure. At least, I don't immediately see any problem with that ... except that a slow^3 elbow is likely to be needed for at least some of the construction, like when it's necessary to reach around and build seeds for the BLSE-stopping glider salvo, the follow-up BLSE and Sakapuffer debris-cleaning Corderships, and the final cleanup meteor-shower salvo seeds if those are needed.

You had mentioned a design that needed only boundedly many gliders to produce NW gliders, so it seemed like those would be used to operate a slow^2 elbow and produce slow^3 gliders.

User avatar
Gustone
Posts: 744
Joined: March 6th, 2019, 2:26 am

Re: How does the RCT universal constructor work?

Post by Gustone » July 9th, 2019, 4:19 pm

I still don't get it: how does the seed construction perform? how the very faraway glider affect the thing? how many designs are there?

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: How does the RCT universal constructor work?

Post by Moosey » July 9th, 2019, 4:31 pm

Gustone wrote:I still don't get it: how does the seed construction perform? how the very faraway glider affect the thing? how many designs are there?
Well, there are actually multiple faraway gliders; they build the sakapuffer.

Their distance gets turned into some data determining what to build.
not active here but active on discord

User avatar
dvgrn
Moderator
Posts: 10713
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: How does the RCT universal constructor work?

Post by dvgrn » July 9th, 2019, 4:44 pm

Gustone wrote:I still don't get it: how does the seed construction perform? how the very faraway glider affect the thing? how many designs are there?
The basic idea of the RCT is to find the least expensive possible mechanism -- in terms of the number of colliding gliders needed to set up the mechanism -- which will allow for the production of any slow salvo we might want.

> how does the seed construction perform?
Slow salvos have been shown to be universal. For example, you can build structures like this by sending "P2 slow" gliders one at a time. Similarly, you can build a 1-glider seed for any object that can be constructed by colliding gliders. See for example this 2-glider Cordership seed.

> how the very faraway glider affect the thing?
The glider bounces back and forth between the approaching Sakapuffer and the construction area, faster and faster. Each time it returns, it will have a timing of either 0 or 128 (mod 256), and these two options have been arranged to have different effects on the crystal growth and decay mechanism that uses the BLSE's debris as raw material.

This mechanism is capable of sending out sideways gliders on any lanes you might choose, as long as the gliders are all the same color.

If you place the Sakapuffer far enough away, you can get any sequence of incoming gliders with 0's and 128's (mod 256) timings that you want. Every time you add another incoming glider, you have to roughly double the distance to the Sakapuffer -- so its location gets very, very far away very quickly.

how many designs are there?
Way too many. At a minimum, there was the 329-glider design, the 59-glider design, the 58-glider design, the 50-glider design, the 44-glider design, the 43-glider design, and the 35-glider design. We may yet be able to come up with a 33-glider design, or one with even fewer gliders if someone comes up with another clever optimization.

Do you have any specific questions about this RCT summary?

User avatar
calcyman
Moderator
Posts: 2938
Joined: June 1st, 2009, 4:32 pm

Re: How does the RCT universal constructor work?

Post by calcyman » July 9th, 2019, 8:06 pm

dvgrn wrote:You had mentioned a design that needed only boundedly many gliders to produce NW gliders, so it seemed like those would be used to operate a slow^2 elbow and produce slow^3 gliders.
Oh, yes, good point -- I keep forgetting that producing a slow^2 glider on lane n costs O(n^2) gliders. But still, I think that the best thing to do is synthesise a cheap narrow block-keeper right at the beginning and never worry about the BLSE again. The block-keeper immediately reduces that O(n^2) cost to O(n), so we gain a significant boost after switching to it.

What's the best candidate for 'cheap narrow block-keeper'? This one has only 18 relatively easy still-lifes, only 5 of which (marked in yellow) need to be simultaneously inserted using a seed:

Code: Select all

x = 332, y = 310, rule = LifeHistory
16.2A69.2A$9.2A3.2B2AB67.B2A2B3.2A$8.B2AB2.4B69.4B2.B2AB$9.2B3.6B.B
61.B.6B3.2B$10.2B2.10B57.10B2.2B$9.2B2A11B6.2A8.2A21.2A8.2A6.11B2A2B$
6.B.3B2A12B5.A8.B2AB19.B2AB8.A5.12B2A3B.B$5.2A18B2.BA.A9.2B21.2B9.A.A
B2.18B2A$5.2AB.15B3.B2A11.2B3.B11.B3.2B11.2AB3.15B.B2A$6.B3.18B12.4B.
B2A9.2AB.B3A12.18B3.B$10.18B10.2A6B2A9.2A3BA4B10.18B$11.19B2.2B2.4BA
4B.B11.B.2B2ABA3B2.2A2.19B$11.26BAB2A3B17.3B2A8BA19B$12.7B.14B3ABA2BA
2B17.8B2A4B2A8B.7B$12.6B2.14BA4B2A7B9.11B2A6BA8B2.6B$11.7B.15BA13B9.
10B3A2B2A2BA9B.7B$11.6B.17BA4BA6B2A7.2A2B2A10B2ABA11B.6B$5.A6.9B7.4B.
4BA2B2A5B2A7.2AB2A11B.4B7.9B6.A$5.3A4.8B9.4B2.3BAB2A4B.B9.B.B2A8B2.4B
9.8B4.3A$8.A2.8B11.4B2.3B2A5B13.2B3A5B2.4B11.8B2.A$7.2A2.7B13.14B15.
2B2A10B13.7B2.2A$7.10B15.14B13.4BA9B15.10B$9.8B15.13B15.13B15.8B$9.8B
15.9B2A2B15.2B2A9B15.8B$6.2B.8B15.8B.2A19.2A.8B15.8B.2B$4.13B15.8B25.
8B15.13B$4.13B15.9B23.9B15.13B$3.14B15.10B21.10B15.14B$4.14B13.7B.4B
19.4B.7B13.14B$3.10B2.4B11.A7B2.4B17.4B2.8B11.4B2.10B$.B.11B2.4B9.BAB
A4B4.4B15.4B4.8B9.4B2.11B.B$2A14B.4B7.2B2A5B5.4B13.4B5.9B7.4B.14B2A$
2A29B.6B5.4B11.4B5.6B.3BA25B2A$.29B.7B6.4B9.4B6.7B.ABA26B$.28B2.6B8.
4B7.4B8.6B2.2A26B$5.24B.7B9.4B5.4B9.7B.24B$5.2A31B9.5B2.4B9.31B2A$2.B
.B2A6B2.2B2.19B10.4B.4B10.19B2.2B2.6B2AB.B$.2A8B10.18B10.7B10.18B10.
8B2A$.2AB.4B12.18B3.B7.5B7.B3.18B12.4B.B2A$2.B3.2B11.2AB3.15B.B2A7.4B
6.2AB.15B3.B2A11.2B3.B$7.2B9.A.AB2.18B2A7.5B5.2A18B2.BA.A9.2B$6.B2AB
8.A5.12B2A3B.B10.4B5.B.3B2A12B5.A8.B2AB$7.2A8.2A6.11B2A2B14.4B7.2B2A
11B6.2A8.2A$25.10B2.2B16.4B7.2B2.10B$27.B.6B3.2B16.4B5.2B3.6B.B$31.4B
2.B2AB16.4B3.B2AB2.4B$30.B2A2B3.2A18.4B3.2A3.2B2AB$31.2A26.4B9.2A$60.
4B$61.4B$62.4B$63.4B$64.4B$65.4B$66.4B$67.4B$68.4B$69.4B$70.4B$71.4B$
72.4B$73.4B$74.4B$75.3BA$76.3BA$77.3AB$74.B3.4B$74.2B3.4B$74.3B3.4B$
74.4B3.4B$75.4B3.4B$76.4B3.4B$77.4B3.4B$78.4B3.4B$79.4B3.4B$80.4B3.4B
$81.4B3.4B$82.4B3.4B$83.4B3.4B$84.4B3.4B$85.4B3.4B$86.4B3.4B$87.4B3.
4B$88.4B3.4B$89.4B3.4B$90.4B3.4B$91.4B3.4B$92.4B3.4B$93.4B3.4B$94.4B
3.4B$95.4B3.4B32.C11.2C$96.4B3.4B30.C.C9.B2CB$97.4B3.4B29.C.C9.3B$98.
4B3.4B26.3C.2C9.B.B$99.4B3.4B24.C4.B8.5B$100.4B3.4B24.3CB2C6.6B$101.
4B3.4B25.C.2C4.8B$102.4B3.4B26.13B$103.4B3.4B27.13B$104.4B3.4B25.15B$
105.4B3.4B24.15B$106.4B3.4B20.B.17B$107.4B3.4B9.29B$108.4B3.4B7.16B2C
13B$109.4B3.4B6.16B2C14B$110.4B3.4B5.27B3.B2C$111.4B3.4B4.26B4.C2.C$
112.4B3.4B3.10B2.2B2.B3.6B5.2C.C$113.4B3.4B2.7B14.6B7.C$114.4B3.4B2.
4B14.9B6.2C$115.4B3.4B5.C13.2C4.4B$116.4B3.4B3.C.C13.C5.4B$117.4B3.4B
3.2C10.3C7.4B$118.4B3.4B14.C10.4B$119.4B3.4B25.4B$120.4B3.4B25.4B$
121.4B3.4B25.4B21.4B$122.4B3.4B25.4B19.4B$123.4B3.4B25.4B6.C8.2C4B3.B
$124.4B3.4B25.4B5.3C5.B2C3B3.2B$125.4B3.4B25.4B7.C4.5B3.3B$126.4B3.4B
25.4B5.2C4.4B3.2B2C$127.4B3.4B25.4B4.10B2.3BC$128.4B3.4B25.4B5.8B.2BC
BC$129.4B3.4B25.4B2.13B2C$130.4B3.4B25.13B2C3B$131.4B3.4B25.12B2C3B$
132.4B3.4B25.15B$133.4B3.4B25.14B$134.4B3.4B24.14B$135.4B3.4B22.14B.C
$136.4B3.4B20.4B.6B4.C.C$137.4B3.4B18.4B2.5B6.2C$138.4B3.4B16.4B3.4B$
139.4B3.4B14.4B3.6B$140.4B3.4B12.4B3.4B2CB$141.4B3.4B10.4B3.4B.2C$
142.4B3.4B8.4B3.4B$143.4B3.4B6.4B$144.4B3.4B4.4B$145.4B3.4B2.4B$146.
4B3.8B5.2C$147.4B3.7B5.C$148.4B3.7B.BC.C$149.13B.B2C$150.14B$149.2E
13B$149.2E13B$150.2B.11B$154.13B$155.11B2E$155.4B2E5B2E$155.4B2E7B$
155.7B3.4B$154.E.7B3.4B$153.E.E3.5B3.4B$153.2E6.2E2B3.4B$161.E4B3.4B$
162.3E2B3.4B$164.E3B3.4B$165.4B3.4B$166.4B3.4B$167.4B3.4B$168.4B3.4B$
169.4B3.4B$170.4B3.4B$171.4B3.4B$172.4B3.4B$173.4B3.4B$174.4B3.4B$
175.4B3.4B$176.4B3.4B$177.4B3.4B$178.4B3.4B$179.4B3.4B$180.4B3.4B35.
2A$181.4B3.4B34.2A$182.4B3.4B$183.4B3.4B26.2A$184.4B3.4B25.2A$185.4B
3.4B$186.4B3.4B$187.4B3.4B18.2A$188.4B3.4B17.2A16.2A$189.4B3.4B34.2A$
190.4B3.4B$191.4B3.4B$192.4B3.4B$193.4B3.4B$194.4B3.4B$195.4B3.4B$
196.4B3.4B$197.4B3.4B$198.4B3.4B20.2A$199.4B3.4B19.2A$200.4B3.4B$201.
4B3.4B$202.4B3.4B$203.4B3.4B$204.4B3.4B35.2A$205.4B3.4B34.2A$206.4B3.
4B$207.4B3.4B26.2A$208.4B3.4B25.2A$209.4B3.4B$210.4B3.4B$211.4B3.4B
18.2A$212.4B3.4B17.2A16.2A$213.4B3.4B34.2A$214.4B3.4B$215.4B3.4B$216.
4B3.4B$217.4B3.4B$218.4B3.4B$219.4B3.4B$220.4B3.4B$221.4B3.4B$222.4B
3.4B20.2A$223.4B3.4B19.2A$224.4B3.4B$225.4B3.4B$226.4B3.4B$227.4B3.4B
$228.4B3.4B35.2A$229.4B3.4B34.2A$230.4B3.4B$231.4B3.4B26.2A$232.4B3.
4B25.2A$233.4B3.4B$234.4B3.4B$235.4B3.4B18.2A$236.4B3.4B17.2A16.2A$
237.4B3.4B34.2A$238.4B3.4B$239.4B3.4B$240.4B3.4B$241.4B3.4B$242.4B3.
4B$243.4B3.4B$244.4B3.4B$245.4B3.4B$246.4B3.4B20.2A$247.4B3.4B19.2A$
248.4B3.4B$249.4B3.4B$250.4B3.4B$251.4B3.4B$252.4B3.4B35.2A$253.4B3.
4B34.2A$254.4B3.4B$255.4B3.4B26.2A$256.4B3.4B25.2A$257.4B3.4B$258.4B
3.4B$259.4B3.4B18.2A$260.4B3.4B17.2A16.2A$261.4B3.4B34.2A$262.4B3.4B$
263.4B3.4B$264.4B3.4B6.5B$265.4B3.4B2.10B$266.4B3.17B$267.4B3.17B$
268.4B3.17B$269.4B3.17B$270.24B7.2A$271.23B7.2A$272.21B$273.18B$273.
18B6.2A$274.17B6.2A$274.18B30.2A$276.16B30.2A$280.14B$282.14B20.2A$
282.15B19.2A$283.13B$285.11B$287.8B17.2A$287.7B18.2A16.2A$288.4B38.2A
$288.3B$289.B$302.2A$302.2A5$325.2A$325.2A3$321.2A$321.2A5$318.2A$
318.2A7$326.2A$326.2A!
The G-to-block can be moved arbitrarily far north-west in reality (because the 'drive gun' is, to all intents and purposes, period-infinity instead of p512), to allow the construction of the yellow objects to involve reactions from the north as well as the east.

After the block-keeper has been built (together with an initial target elbow somewhere north of the block-keeper), we can proceed to synthesise a DBCA (Decoder and Better Construction Arm) immediately south-east of the block-keeper. When we've finished building the DBCA, we can puncture a hole in the block-keeper and allow the subsequent bits to flow directly into the DBCA:

Code: Select all

x = 330, y = 283, rule = LifeHistory
3B$4B$.4B$2.4B$3.4B$B3.3BA$2B3.3BA$3B3.3AB$4B3.4B$.4B3.4B$2.4B3.4B$3.
4B3.4B$4.4B3.4B$5.4B3.4B$6.4B3.4B$7.4B3.4B$8.4B3.4B$9.4B3.4B$10.4B3.
4B$11.4B3.4B$12.4B3.4B$13.4B3.4B$14.4B3.4B$15.4B3.4B$16.4B3.4B$17.4B
3.4B$18.4B3.3BA$19.4B3.3BA$20.4B3.3AB$21.4B3.4B$22.4B3.4B$23.4B3.4B$
24.4B3.4B$25.4B3.4B$26.4B3.4B$27.4B3.4B$28.4B3.3BA$29.4B3.3BA$30.4B3.
3AB$31.4B3.4B$32.4B3.4B$33.4B3.4B$34.4B3.4B$35.4B3.4B$36.4B3.4B$37.4B
3.4B$38.4B3.4B$39.4B3.4B$40.4B3.3BA$41.4B3.3BA$42.4B3.3AB$43.4B3.4B$
44.4B3.4B$45.4B3.4B$46.4B3.4B$47.4B3.4B$48.4B3.3BA$49.4B3.2B.A$50.4B
3.3AB$51.4B3.4B$52.4B3.4B$53.4B3.4B$54.4B3.4B$55.4B3.4B$56.4B3.4B$57.
4B3.4B$58.4B3.4B$59.4B3.4B32.C11.2C$60.4B3.4B30.C.C9.B2CB$61.4B3.4B
29.C.C9.3B$62.4B3.4B26.3C.2C9.B.B$63.4B3.4B24.C4.B8.5B$64.4B3.4B24.3C
B2C6.6B$65.4B3.4B25.C.2C4.8B$66.4B3.4B26.13B$67.4B3.4B27.13B$68.4B3.
4B25.15B155.4B$69.4B3.4B24.15B156.4B$70.4B3.4B20.B.17B156.4B$71.4B3.
4B9.29B157.4B$72.4B3.4B7.16B2C13B157.4B$73.4B3.4B6.16B2C14B157.4B$74.
4B3.4B5.27B3.B2C157.4B$75.4B3.4B4.26B4.C2.C157.4B$76.4B3.4B3.10B2.2B
2.B3.6B5.2C.C157.4B$77.4B3.4B2.7B14.6B7.C158.4B$78.4B3.4B2.4B14.9B6.
2C158.4B20.2A$79.4B3.4B5.C13.2C4.4B166.4B17.2B2AB$80.4B3.4B3.C.C13.C
5.4B166.4B16.4B$81.4B3.4B3.2C10.3C7.4B155.A10.4B15.6B$82.4B3.4B14.C
10.4B152.3A11.4B15.5B$83.4B3.4B25.4B135.A14.A15.4B14.6B$84.4B3.4B25.
4B134.3A12.2A15.4B13.7B$85.4B3.4B25.4B21.4B111.A7.2B.3B3.7B.B4.4B12.
6B$86.4B3.4B25.4B19.4B111.2A6.5B5.13B.4B10.7B$87.4B3.4B25.4B6.C8.2C4B
3.B108.5B2.36B4.6B$88.4B3.4B25.4B5.3C5.B2C3B3.2B110.42B2.7B$89.4B3.4B
25.4B7.C4.5B3.3B109.2A41B2.7B$90.4B3.4B25.4B5.2C4.4B3.2B2C109.2A17B2A
22B.9B$91.4B3.4B25.4B4.10B2.3BC111.B.16B2A32B$92.4B3.4B25.4B5.8B.2BCB
C113.23B3.2B2.20B4.B$93.4B3.4B25.4B2.13B2C115.9B2.10B11.19B.B2A$94.3B
A3.4B25.13B2C3B118.8B3.6B16.19B2A$95.B.BA3.4B25.12B2C3B119.7B4.3B19.
17B.B$96.3A4.4B25.15B117.11B3.B20.17B$97.4B3.4B25.14B116.12B2.2A20.
17B$98.4B3.4B24.14B116.12B2.A19.2AB.15B$99.4B3.4B22.14B.C115.11B4.3A
15.A.AB4.12B$100.4B3.4B20.4B.6B4.C.C114.8B.4B4.A15.A9.11B$101.4B3.4B
18.4B2.5B6.2C114.7B4.2A19.2A8.13B$102.4B3.4B16.4B3.4B123.7B4.A30.12B$
103.4B3.3BA14.4B3.6B122.6B6.3A28.10B$104.4B3.3BA12.4B3.4B2CB121.7B8.A
29.9B$105.4B3.3AB10.4B3.4B.2C121.8B38.9B$106.4B3.4B8.4B3.4B124.8B39.
9B$107.4B3.4B6.4B131.9B40.5B$108.4B3.4B4.4B131.4B.6B39.4B$109.4B3.4B
2.4B131.4B.7B39.4B$110.4B3.8B5.2C124.4B2.6B15.2A22.4B$111.4B3.7B5.C
124.4B3.8B4.B8.A22.4B$112.4B3.7B.BC.C123.4B5.B2A6B.4B3.BA.A21.4B$113.
13B.B2C123.4B5.2B2A13B.B2A21.4B$114.14B124.4B7.18B22.4B$113.2E13B123.
4B9.17B21.4B$113.2E13B122.4B13.13B21.4B$114.2B.11B121.4B13.12B22.4B$
118.13B117.4B14.10B23.4B$119.11B2E115.4B14.11B22.4B$119.4B2E5B2E114.
4B15.7B.2B22.4B$119.4B2E7B113.4B15.11B21.4B$119.7B3.4B111.4B17.11B19.
4B$118.E.7B3.4B109.4B18.11B18.4B$117.E.E3.5B3.4B107.4B19.11B17.4B$
117.2E6.2E2B3.4B105.4B18.2AB2.8B16.4B$125.E4B3.4B103.4B18.A.AB3.7B15.
4B$126.3E2B3.4B101.4B19.A6.7B14.4B$128.E3B3.4B99.4B19.2A7.6B13.4B$
129.4B3.4B97.4B29.7B11.4B$130.4B3.4B95.4B30.8B9.4B$131.4B3.4B93.4B32.
8B7.4B$132.4B3.4B91.4B33.9B5.4B$133.4B3.4B89.4B33.6B.4B3.4B$134.4B3.
4B87.4B34.7B.4B.4B$135.4B3.4B85.4B36.6B2.7B$136.4B3.4B83.4B37.6B3.5B$
137.4B3.4B81.4B38.2B2AB4.5B$138.4B3.4B79.4B38.3B2A2B2.7B$139.4B3.4B
77.4B39.7B.4B.4B$140.4B3.4B75.4B41.5B.4B3.4B$141.4B3.4B73.4B42.9B5.4B
$142.4B3.4B71.4B43.8B7.4B$143.4B3.4B69.4B44.7B9.4B$144.4B3.4B67.4B36.
2A7.6B11.4B$145.4B3.4B65.4B38.A7.7B5.2A4.4B$146.4B3.4B63.4B39.A.AB3.
7B6.A6.4B$147.4B3.4B61.4B41.2AB.11B.BA.A7.4B$148.4B3.4B59.4B44.10BA2B
.B2A9.4B$149.4B3.4B57.4B44.10BABA3B12.4B$150.4B3.4B55.4B46.9BABA3B13.
4B$151.4B3.4B53.4B45.2AB.8BA2B16.4B$152.4B3.4B51.4B45.A.AB2.8B19.4B$
153.4B3.4B49.4B46.A4.4B2.3B20.4B$154.4B3.4B47.4B46.2A3.4B3.5B19.4B$
155.4B3.4B45.4B51.4B6.B2A20.4B$156.4B3.4B43.4B51.4B8.A22.4B$157.4B3.
4B41.4B51.4B10.3A20.4B$158.4B3.4B39.4B51.4B13.A21.4B$159.4B3.4B37.4B
51.4B37.4B$160.4B3.4B35.4B51.4B39.4B$161.4B3.4B33.4B51.4B41.4B$162.4B
3.4B31.4B51.4B43.4B$163.4B3.4B29.4B51.4B45.4B$164.4B3.4B27.4B51.4B47.
4B$165.4B3.4B25.4B51.4B49.4B$166.4B3.4B23.4B51.4B51.4B$167.4B3.4B21.
4B51.4B53.4B$168.4B3.4B19.4B51.4B$169.4B3.4B17.4B51.4B$170.4B3.4B15.
4B51.4B$171.4B3.4B13.4B51.4B$172.4B3.4B11.4B51.4B$173.4B3.4B9.4B51.4B
$174.4B3.4B7.4B51.4B$175.4B3.4B5.4B51.4B$176.4B3.4B3.4B51.4B$177.4B3.
4B.4B51.4B$178.4B3.7B51.4B$173.A5.4B3.5B51.4B$173.3A4.4B2.5B50.4B$
176.A4.11B48.4B$175.2A5.6B.4B10.B35.4B$175.5B3.4B3.4B8.3B33.4B$177.3B
2.6B3.4B6.4B7.2A23.4B$167.2A7.13B3.4B4.7B6.A22.4B$167.A4B4.8B2.4B3.4B
.10B5.A.AB18.4B$164.2A.A.14B4.4B3.14B6.A.AB.B14.4B$164.A2.3A4B2A7B5.
4B3.14B6.A3B2A12.4B$165.2A2.BA3B2A7B6.4B3.15B3.3B.B2A11.4B$167.4A12B
7.4B2.20B3.B11.4B$167.A.2B2.8B.B2A6.4B2.20B13.4B$168.3AB2.7B.BA.A6.4B
.20B12.4B$171.A3.5B5.A5.26B11.4B$166.5A5.4B5.2A4.25B11.4B$166.A10.4B
9.2A25B9.4B$168.A9.4B8.2AB.23B8.4B$167.2A10.4B8.B3.15B3D5B6.4B$180.4B
12.14BDBD5B5.4B$181.4B12.13BD2BD4B4.4B$182.4B10.16B2D4B3.4B$183.4B9.
22B.5B$184.4B7.5B2.21B$185.4B5.4B5.21B$186.4B3.4B7.21B$187.4B.4B9.21B
$188.7B11.20B100.4B$189.5B13.18B100.4B$189.5B13.16B2A99.4B$188.7B11.
17B2A98.4B$187.4B.4B9.19B98.4B$186.4B3.4B7.19B98.4B$185.4B5.4B5.20B
97.4B$185.3B7.4B4.8BA6B2.4B95.4B$183.4B9.4B4.6BABA5B3.4B93.4B$183.2A
12.4B3.7B2A5B4.4B91.4B$184.A13.4B.16B4.4B89.4B$181.3A15.20B5.4B87.4B$
181.A18.20B5.4B85.4B$201.21B4.4B83.4B$201.22B4.4B81.4B$201.21B6.4B79.
4B$201.19B9.4B77.4B$201.18B11.4B75.4B$199.2A17B13.4B73.4B$198.A.A18B
13.4B71.4B$198.A4.17B13.4B69.4B$197.2A5.17B13.4B67.4B$207.8B3.4B13.4B
65.4B$211.4B4.4B13.4B63.4B$220.4B13.4B61.4B$221.4B13.4B59.4B$222.4B
13.4B57.4B$223.4B13.4B55.4B$224.3B14.4B53.4B$242.4B51.4B$227.2A14.4B
49.4B$227.A16.4B47.4B$228.3A14.4B45.4B$230.A15.4B43.4B$247.4B41.4B$
248.4B39.4B$249.4B37.4B$250.4B35.4B$251.4B33.4B$252.4B31.4B$253.4B29.
4B$254.4B27.4B$255.4B25.4B$256.4B23.4B$257.4B21.4B$258.4B19.4B$259.4B
10.A6.4B$260.4B7.3A5.4B$261.4B5.A7.4B$262.4B4.2A5.4B$263.9B4.4B$264.
6B5.4B$264.8B2.4B$262.15B$262.14B$262.13B$260.2AB.10B$259.A.AB3.B2A3B
$259.A6.B2A3B$258.2A6.4B$267.3B$268.2B.BA$267.B2ABA.A$266.BABABA.A$
264.A2.A.A.A.A.2A$264.4A.2A2.A2.A$268.A4.2A$266.A.A$266.2A!
The DBCA will probably be something similar to constructor-memory-tape.rle.

Designing a decent DBCA would also help with the super-half-bakery project -- does anyone want to have a go at this? The first DBCA wants to be as cheap as possible (subject to being more efficient than the 9hd/19hd crystal dance, which is quite a low bar), so that the RCT can build and switch to it as quickly as possible. Once that's been done, we can go for a more complex and efficient second-stage DBCA, with p2 bichromatic slow-salvo outputs etc.
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
dvgrn
Moderator
Posts: 10713
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: How does the RCT universal constructor work?

Post by dvgrn » July 9th, 2019, 9:26 pm

calcyman wrote:Oh, yes, good point -- I keep forgetting that producing a slow^2 glider on lane n costs O(n^2) gliders. But still, I think that the best thing to do is synthesise a cheap narrow block-keeper right at the beginning and never worry about the BLSE again. The block-keeper immediately reduces that O(n^2) cost to O(n), so we gain a significant boost after switching to it.
...
What's the best candidate for 'cheap narrow block-keeper'?...
...
After the block-keeper has been built (together with an initial target elbow somewhere north of the block-keeper), we can proceed to synthesise a DBCA (Decoder and Better Construction Arm)...
...
The first DBCA wants to be as cheap as possible (subject to being more efficient than the 9hd/19hd crystal dance, which is quite a low bar), so that the RCT can build and switch to it as quickly as possible. Once that's been done, we can go for a more complex and efficient second-stage DBCA, with p2 bichromatic slow-salvo outputs etc.
Every time I've thought about actually putting enough bits on the tape to build the simplest block-keeper, I remember that that's well beyond anything I want to actually construct.

In terms of answering Gustone's question about how the RCT works, it's definitely worth emphasizing that the slow^3 elbow, the block-keeper, the first DBCA, the second more complex DBCA, and any more efficiency-increasing stages that might come after that, are all completely optional. We can do without them, it just takes a lot more bits on the tape.

But at the rate we're going at completing example patterns, it isn't going to matter much if the Sakapuffer starts out two-to-the-googol cells away, or two-to-the-googolplex cells away. We're not ever going to actually place a Sakapuffer and run the resulting pattern to completion, either way.

Conversely, we can simulate bits coming in from the Sakapuffer and producing sideways gliders equally well whether there are intermediate block-keeper / DBCA stages or not. In fact, it will probably be easier to set up a simulation showing an RCT pattern running all the way to completion, building something expensive like a spider and cleaning up after itself, if we don't bother with any of these clever encoding improvements at all.

User avatar
calcyman
Moderator
Posts: 2938
Joined: June 1st, 2009, 4:32 pm

Re: How does the RCT universal constructor work?

Post by calcyman » July 10th, 2019, 5:33 am

dvgrn wrote: In terms of answering Gustone's question about how the RCT works, it's definitely worth emphasizing that the slow^3 elbow, the block-keeper, the first DBCA, the second more complex DBCA, and any more efficiency-increasing stages that might come after that, are all completely optional. We can do without them, it just takes a lot more bits on the tape.
Agreed. In this case, 'a lot' is somewhere between three and four orders of magnitude, which actually makes a huge difference.
But at the rate we're going at completing example patterns, it isn't going to matter much if the Sakapuffer starts out two-to-the-googol cells away, or two-to-the-googolplex cells away. We're not ever going to actually place a Sakapuffer and run the resulting pattern to completion, either way.
I'm less certain of this. Tom Rokicki and I have both independently had ideas for a pattern compression scheme and algorithm which can theoretically give another exponential speedup beyond HashLife. This would only require a stack depth of O(log(N)), where N is the number of bits in the tape. Note that if N is a googol, this is sensible; if N is a googolplex, it's not.

But anyway, this ultra-HashLife would essentially be automatically reducing the problem of actually running the RCT to the simulation problem you mention below, except it would be a general-purpose CA algorithm (which is relevant if we want to run a SMO35G for multiple cycles):
Conversely, we can simulate bits coming in from the Sakapuffer and producing sideways gliders equally well whether there are intermediate block-keeper / DBCA stages or not. In fact, it will probably be easier to set up a simulation showing an RCT pattern running all the way to completion, building something expensive like a spider and cleaning up after itself, if we don't bother with any of these clever encoding improvements at all.
I'm unconvinced. The difference in overall tape length is going to be about three orders of magnitude, which is the difference between something taking hours to run and sonething taking months to run.
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
dvgrn
Moderator
Posts: 10713
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: How does the RCT universal constructor work?

Post by dvgrn » July 10th, 2019, 2:42 pm

calcyman wrote:I'm less certain of this... The difference in overall tape length is going to be about three orders of magnitude, which is the difference between something taking hours to run and sonething taking months to run.
Interesting! HashHashLife sounds good, but in terms of running a SMO35G through multiple cycles, I'll believe it when I see it. Three orders of magnitude is also the difference between a simulation that takes a thousand years, and one that takes a million years.

SMO35Gs require inventing a 35-glider seed constellation, and placing all the pieces of it extraordinarily far apart, and activating all those pieces simultaneously. These are non-trivial problems, and they're also entirely optional -- we can demonstrate a completely functional RCT pattern by building just some moderately expensive object, rather than a SMO35G.

Much Simpler, And Yet Still Fairly Horrible
I'm much more hopeful about creating a workable proof-of-concept RCT construction of something like a weekender or puffership -- not one of the more expensive recipes like a spider, definitely not something totally unreasonable like a HBK or Demonoid, and not something mathematically nightmarish like a SMO35G either, I hope!

If we can specify a 35-glider weekender synthesis and show that it will run to completion, even if we need very special-purpose simulators... then it should be clear that other constructible objects can theoretically be done the same way.

The special-purpose simulation might just amount to
  1. showing how to make individual NW-traveling gliders on any lane NE of the BLSE debris, by sending a series of [0|128] mod 256 gliders, and
  2. exhibiting a NW-traveling slow salvo that builds a weekender (or whatever) starting from a block, and also builds all the ITEMs below. Slsparse can do some of the compilation for this NW-traveling slow salvo, but not all of it (yet, anyway).
There's really no need to have the simulator keep track of the debris chains at all. It doesn't matter how long they are, we can easily show that they'll get cleaned up by the various preparatory synchronized salvos followed by the various Corderfleets.

A Lovely Itemized List of All Our Remaining Unsolved Problems
Here's a minimal list of details that will need to be worked out to get to a 35-glider weekender -- without any optional optimizations. I haven't mentioned even the permanent slow^3 elbow option that saves 99.9% of bits on the tape, let alone block-keepers or Decoder-And-Better-Construction-Arms. The ITEMs below will all be needed no matter if block-keepers or DBCAs are included in the design or not.

ITEM 0: This recipe to create an initial block target in a location where it's accessible by NWward slow salvos. Or some improved monochromatic NEward recipe, maybe exploding the NW end of the BLSE debris chain and then cleaning up everything except a block. A recipe like this one would work, but then it would have to push the remaining junk NEward by several full diagonals.

ITEM 1: A script to generate a series of [0,128] mod 256 gliders that produce sideways slow output gliders on any desired monochromatic NEward lane, aimed at or through the BLSE debris, starting from a given elbow location.

ITEM 2: Full monochromatic NEward recipes to clear out a wide enough gap in BLSE debris, push a slow^2 elbow/turner object from the BLSE debris to any desired distance, and produce a slow^2 NWward output glider on any target lane L, with either even or odd parity. Also clean up any leftover junk.

ITEM 3: A way to designate an existing block (or whatever) as a slow^3 elbow, and generate a NW-traveling slow-salvo recipe that produces a SW-traveling slow^2 recipe. (Slsparse doesn't have this ability at the moment -- it can bend construction arms, but only with lossless single-channel elbows [Snarkmakers and Snarkbreakers]. Can't use single-channel here, so we'll need slow^3 instead.)

As far as I can see, this will be needed to build ITEM 5 and ITEM 6 in the right place.

ITEM 4: A SE-traveling synchronized glider salvo that stops the BLSE, and adjusts the remaining debris to make one-time eaters that will cleanly absorb the six SE-traveling Corderships that will clean up the BLSE debris chain.

ITEM 5: A one-glider seed for ITEM 4.

ITEM 6: A one-glider seed for the six synchronized Corderships (can be attached to ITEM 5, as long as those gliders get launched first).

ITEM 7: A NW-traveling synchronized or slow glider salvo that builds one-time Corderabsorbers at the construction locations of the SE-traveling GPSEs.

ITEM 8: A one-glider seed for ITEM 7.

ITEM 9: A NW-traveling Corderfleet that will clean up the two SE-traveling GPSEs' debris, then hit the ITEM 7 Corderabsorbers without producing any escaping gliders.

ITEM 10: a one-glider seed for ITEM 9, plus a follow-up meteor shower seed.

ITEM 11: A SE-traveling synchronized or slow glider salvo that builds one-time Corderabsorbers at the construction locations of the NW-traveling GPSE. EDIT: There's a solution for this one -- turns out to be just one glider: see link in ITEM 13.

ITEM 12: A one-glider seed for ITEM 11.

ITEM 13: A SE-traveling Corderfleet that will clean up the NW-traveling GPSE's debris, then hit the ITEM 11 Corderabsorbers and leave only empty space behind. EDIT: Or we could do this as suggested by chris_c's post, where the Corderfleet leaves a lot of junk behind, which then gets cleaned up with a simple second-stage meteor shower. There's probably a lot less tricky engineering involved with this method, so let's go with that. Have edited all the other similar items to reflect this.

ITEM 14: a one-glider seed for ITEM 13, plus a follow-up meteor shower.

ITEM 15: A SW-traveling synchronized or slow glider salvo that builds one-time Corderabsorbers at the construction locations of the three NE-traveling GPSEs.

ITEM 16: A one-glider seed for ITEM 15, plus a follow-up meteor shower.

ITEM 17: A SW-traveling Corderfleet that will clean up the three NE-traveling GPSEs' debris, then hit the ITEM 15 Corderabsorbers without producing any escaping gliders.

ITEM 18: a one-glider seed for ITEM 17, plus a follow-up meteor shower.

ITEM 19: A NW-traveling synchronized or slow glider salvo that builds one-time Corderabsorbers at the Sakapuffer's construction location.

ITEM 20: A one-glider seed for ITEM 19.

ITEM 21: A NW-traveling Corderfleet that will clean up the Sakapuffer's debris, then hit the ITEM 19 Corderabsorbers without producing any escaping gliders.

ITEM 22: a one-glider seed for ITEM 21, plus a follow-up meteor shower. Items 19 through 22 could probably be combined with ITEMs 9-11. (NOTE: It may be rather tricky to put this one-glider seed somewhere where it won't get in the way of early stages of RCT operation. In the worst case, ITEM 22 may actually be a seed for a slow salvo. That slow salvo would move a target block into the space ahead of the Sakapuffer, then use that target block to build and trigger a seed for ITEM 21. With that method, the construction of Sakapuffer cleanup mechanisms can all be done after bits have stopped coming in from the Sakapuffer.)

ITEM 24: Add an attachment on one of these one-glider seeds to clean up the block that mediates the GPSE gliders' bit-interpretation work.

ITEM 25: Build absorbing objects to catch any gliders that may be released if some GPSEs are stopped by their absorbers while other GPSEs are still producing gliders.

ITEM 26:
?


(What else have I forgotten?)

The idea behind making this list is that any one of these ITEMs is small and well-defined enough that someone could actually solve it. A few of them have been done already.

If anyone wants to work on one of these subproblems, it might be worth saying so here, and mention the ITEM by number, to avoid duplication of effort.

Challenge, a.k.a. "Revised Statement of Faint Disbelief"
I'll believe that we're collectively serious about getting a working RCT pattern done, when we start completing a few of these ITEMs.

In particular, I'd like to see ITEM 18 actually instantiated... which requires ITEM 17 to be solved first, which also requires ITEM 15 and ITEM 16. The Corderfleet problem seems solvable; the seed for the follow-up meteor shower will be enormous, I would think, but not difficult for a script to build.

Long experience with making seed constellations and Cordership syntheses makes me fairly confident that pretty much any Corderfleet can be reduced to a 1G seed... for ITEM 16, I'm not sure I'll ever want to do that much work, but on the other hand, these can probably be simple 2-engine Corderships, and they don't even have to be synchronized with each other.

User avatar
gameoflifemaniac
Posts: 1242
Joined: January 22nd, 2017, 11:17 am
Location: There too

Re: How does the RCT universal constructor work?

Post by gameoflifemaniac » July 14th, 2019, 4:21 am

So, summarizing, it works like so: theoretically every pattern (except Gardens of Eden) can be made out of a certain combination of gliders that hit the reverse caber tosser in just the right position somewhere stupidly far away, where the distances between the gliders and the RCT grow O(m^n), where n is the glider #?
I was so socially awkward in the past and it will haunt me for the rest of my life.

Code: Select all

b4o25bo$o29bo$b3o3b3o2bob2o2bob2o2bo3bobo$4bobo3bob2o2bob2o2bobo3bobo$
4bobo3bobo5bo5bo3bobo$o3bobo3bobo5bo6b4o$b3o3b3o2bo5bo9bobo$24b4o!

User avatar
testitemqlstudop
Posts: 1367
Joined: July 21st, 2016, 11:45 am
Location: in catagolue
Contact:

Re: How does the RCT universal constructor work?

Post by testitemqlstudop » July 14th, 2019, 6:23 am

every synthesizable one

User avatar
otismo
Posts: 1241
Joined: August 18th, 2010, 1:41 pm
Location: Florida
Contact:

Re: How does the RCT universal constructor work?

Post by otismo » September 25th, 2020, 7:47 pm

I had heard something about someone writing a textbook and that would help me a lot -

need to get up to speed in so many different areas and where to begin ?

with a book it ought to be pretty straight-forward stuff...

even if it never makes the best-seller list !

Cheers !
"One picture is worth 1000 words; but one thousand words, carefully crafted, can paint an infinite number of pictures."
- autonomic writing
forFUN : http://viropet.com
Art Gallery : http://cgol.art
Video WebSite : http://conway.life

Post Reply