New construction arms

For discussion of specific patterns or specific families of patterns, both newly-discovered and well-known.
User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: New construction arms

Post by Scorbie » December 20th, 2015, 3:06 pm

If I got it right, maybe using a tape of tandem gliders may be cheaper. Something along these lines using tandem G4:

Code: Select all

x = 78, y = 57, rule = B3/S23
64bo$63bo$63b3o14$44bobo$44b2o$45bo12$34bo$34bobo$34b2o$73bo$71b3o$16b
2o36bo15bo$16b2o20bo15b3o13b2o4b2o$36b3o18bo18bo$35bo20b2o16bobo$35b2o
37b2o4$2o$2o$16bo21b2o$11b2ob2o22b2o$11b2o2b2o2$8bo$6b3o$5bo$5b2o24b2o
$17b2o12bo35b2o$17b2o6bo6b3o32b2o$24bobo7bo$25bo!
Except that the directions of output gliders would hopefully make sense unlike this one.
Reference: viewtopic.php?f=2&t=1599&p=19713&hilit= ... nal#p19713
Or did I miss something?

EDIT: G5 seems to be another option:
http://conwaylife.com/forums/viewtopic. ... =75#p17095
dvgrn wrote:This one is kind of silly, because a second slow elbow would be needed to hit the next construction site with slow gliders. Exponential loss of efficiency is usually bad. So probably something like this would be better:
Actually, I think we can put a semi-snark and use every other glider. It's still pretty nonsense, though...

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

Re: New construction arms

Post by dvgrn » December 20th, 2015, 4:04 pm

Scorbie wrote:If I got it right, maybe using a tape of tandem gliders may be cheaper. Something along these lines using tandem G4... Or did I miss something?
Well, one thing: the pattern you posted has a minimum repeat time of 97 --

Code: Select all

x = 78, y = 51, rule = B3/S23
58bobo$58b2o$59bo13$39bo$39bobo$39b2o7$34bo$34bobo$34b2o$73bo$71b3o$
16b2o36bo15bo$16b2o20bo15b3o13b2o4b2o$36b3o18bo18bo$35bo20b2o16bobo$
35b2o37b2o4$2o$2o$16bo21b2o$11b2ob2o22b2o$11b2o2b2o2$8bo$6b3o$5bo$5b2o
24b2o$17b2o12bo35b2o$17b2o6bo6b3o32b2o$24bobo7bo$25bo!
The new universal toolkit has (let's see, quick check...) several glider pairs separated by 93 and 94 ticks, anyway, and I didn't check the long recipe yet -- there are probably some pairs down in the 90..92 range. So G4 tandem gliders would need a new search to be run with a minimum separation of 97. Maybe a universal set would still show up, but it will certainly get less likely and less efficient as the circuitry gets slower.

If I recall correctly, the old Herschel transceivers could handle signals only down to 117 ticks. A few other new types of transceivers have cropped up since then, but offhand I don't remember any that can beat the 90-tick recovery time of the syringe+Lx200.

There might be a trick using a second reset glider stream (or two?) instead of the eater2, that could bring the repeat time down to 78 or so. But I'm not sure it can be done without unreasonable amounts of circuitry (?). The G5 tandem gliders only work down to 156 ticks, so that seems pretty far out of the likely zone.

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

Re: New construction arms

Post by calcyman » December 20th, 2015, 4:27 pm

dvgrn wrote:The next two things I would wish for would be a recipe that can turn one elbow into two, and a recipe that could flip the block to the other side of the construction lane -- allowing gliders to be sent in the opposite direction using the same two recipes.
I think that the most exciting possibility hasn't been mentioned yet: it's theoretically possible given these operations to convert an elbow-block into a Snark (in the obvious place) together with an elbow-block aligned with the output of said Snark. In other words, we have the potential to make a simeksian recipe to bend a construction arm around a corner. With a soupçon of extra effort, it could build a SOD in the propinquity of the Snark so that the 'bend right' and 'bend left' operations are invertible.

And then we basically have a construction arm with the same freedom as the von Neumann construction arm.
What do you do with ill crystallographers? Take them to the mono-clinic!

simeks
Posts: 401
Joined: March 11th, 2015, 12:03 pm
Location: Sweden

Re: New construction arms

Post by simeks » December 20th, 2015, 5:38 pm

dvgrn wrote:Did you try searches starting from anything other than a block?
I used chris_c's elbow0.py script with the least possible changes, so I've searched with the elbows handled by that script: block, hive and honey farm.
I've searched the deepest with a block in the pi-position though.

I think searching for recipes with a blinker/traffic light as an elbow would yield more useful recipes. I haven't considered how to modify chris_c's script to deal with P2 elbows, it might not be that difficult.

Another thing about chris_c's script is that it only allows to search for recipes with at most two gliders before the pattern must settle down. Allowing more gliders before the pattern settles would increase the search space, although hard to know how much that would help.

For example, the hive position that turns it into a traffic light from a single glider yields useful recipes:

EDIT: The first recipe here was broken, fixed.

Code: Select all

x = 1008, y = 618, rule = LifeHistory
505.2E98.2E98.2E98.2E98.2E98.2E$504.E2.E96.E2.E96.E2.E96.E2.E96.E2.E
96.E2.E$505.2E98.2E98.2E98.2E98.2E98.2E24$480.2A98.2A98.2A98.2A98.2A
98.2A$481.2A98.2A98.2A98.2A98.2A98.2A$480.A99.A99.A99.A99.A99.A78$
400.3A97.3A97.3A97.3A97.3A97.3A$402.A99.A99.A99.A99.A99.A$401.A99.A
99.A99.A99.A99.A23$375.3A97.3A97.3A97.3A97.3A$377.A99.A99.A99.A99.A$
376.A99.A99.A99.A99.A96.2A$872.A.A$874.A51$320.3A97.3A97.3A97.3A97.3A
97.3A$322.A99.A99.A99.A99.A99.A$321.A99.A99.A99.A99.A99.A20$298.A99.A
99.A99.A99.A$298.2A98.2A98.2A98.2A98.2A$297.A.A97.A.A97.A.A97.A.A97.A
.A96.A$796.2A$795.A.A54$240.2A98.2A98.2A98.2A98.2A98.2A$241.2A98.2A
98.2A98.2A98.2A98.2A$240.A99.A99.A99.A99.A99.A21$217.3A97.3A97.3A97.
3A97.3A$219.A99.A99.A99.A99.A$218.A99.A99.A99.A99.A55$160.3A97.3A97.
3A97.3A97.3A97.2A$162.A99.A99.A99.A99.A98.2A$161.A99.A99.A99.A99.A98.
A21$137.3A97.3A97.3A97.3A97.3A97.2A$139.A99.A99.A99.A99.A98.2A$138.A
99.A99.A99.A99.A98.A55$80.3A97.3A97.3A97.3A97.3A97.3A$82.A99.A99.A99.
A99.A99.A$81.A99.A99.A99.A99.A99.A21$557.3A$559.A$558.A$54.A99.A199.
2A98.2A$54.2A98.2A97.2A100.2A98.2A$53.A.A97.A.A98.2A98.A99.A$253.A51$
2A98.2A98.3A97.2A98.2A98.3A$.2A98.2A99.A98.2A98.2A99.A$A99.A100.A98.A
99.A100.A21$77.3A97.3A197.3A97.2A$79.A99.A199.A98.2A$78.A99.A199.A98.
A55$220.3A97.2A98.2A$222.A98.2A98.2A$221.A98.A99.A20$198.A$198.2A97.
3A$197.A.A99.A$298.A4$391.2A$390.A.A$392.A!
dvgrn wrote:The next two things I would wish for would be a recipe that can turn one elbow into two, and a recipe that could flip the block to the other side of the construction lane -- allowing gliders to be sent in the opposite direction using the same two recipes
I haven't found any elbow duplicating recipe so far.

I should perhaps have mentioned that the "long" recipe for the wrong-colored glider really is a concatenation of the following three recipes. One of them actually flips a block over to the other side, but in the long recipe it is used to flip a hive into a block on the other side instead.
Searching a bit deeper will probably find a single recipe for the difficult glider color.

Code: Select all

x = 947, y = 694, rule = LifeHistory
689.2E254.2E$689.2E127.2E125.2E$817.E2.E$818.2E24$665.2A126.2A126.2A$
666.2A126.2A126.2A$665.A127.A127.A25$638.2A254.2A$637.A.A253.A.A$639.
A255.A51$585.3A125.3A125.3A$587.A127.A127.A$586.A127.A127.A21$562.2A
254.2A$563.2A254.2A$562.A125.3A127.A$690.A$689.A53$505.3A125.3A125.3A
$507.A127.A127.A$506.A127.A127.A20$611.A$611.2A$610.A.A56$425.2A126.
2A126.2A$426.2A126.2A126.2A$425.A127.A127.A21$530.3A$401.2A129.A124.
2A$402.2A127.A126.2A$401.A255.A54$345.2A126.3A125.2A$346.2A127.A126.
2A$345.A128.A126.A21$322.3A125.3A125.3A$324.A127.A127.A$323.A127.A
127.A55$265.2A126.3A125.3A$266.2A127.A127.A$265.A128.A127.A20$499.A$
499.2A$498.A.A3$366.2A$367.2A$366.A51$185.2A126.3A125.2A$186.2A127.A
126.2A$185.A128.A126.A21$162.2A126.3A$163.2A127.A$162.A128.A4$412.2A$
413.2A$412.A49$105.2A254.2A$106.2A254.2A$105.A255.A21$82.3A$84.A$83.A
55$25.2A$26.2A$25.A22$.2A$A.A$2.A!
simsim314 wrote:I was also thinking how the 0-hd design could be used. Considering the most costly part is G->H converter, one can use p120 to clear the extra beehive from the usual known G->H + beehive.
The minimum distance of incoming gliders in this design seems to be 92 ticks, which means fast singleton glider recipes could likely be used here too.

User avatar
Kazyan
Posts: 1247
Joined: February 6th, 2014, 11:02 pm

Re: New construction arms

Post by Kazyan » December 20th, 2015, 5:58 pm

dvgrn wrote:The key difficulty I'm having is imagining "some circuitry that edge-shoots a glider" that could possibly end up being small enough to be worth building. My mental picture just ends up looking unnecessarily big and complicated and awkward, especially compared to simeks' new design. But I've been wrong before -- very recently, in fact...!
Perhaps, but there's an option that very nearly works (though it's definitely not Spartan):

Code: Select all

x = 40, y = 41, rule = LifeHistory
32.BD2BD$31.4B$30.4B$29.BD2BD$28.4B$24.B2.4B$22.5BD2BD$20.9B$20.8B$
19.5BD2BD$18.10B$18.9B$19.2BD2BDB$17.9B9.A$16.12B6.A.A$16.2BD2BD7B5.A
.A$16.3BA8B4.B2A.2A$17.3BA8B2.BA2.A2.A$15.D2.CAC2D8BABA.A.A.A$14.3A3.
2BD9BA.A.A.A$16.A2.B3D10B.A.A$12.D2.C.11B2.2B.BAB.A$16.11B6.2B2AB$16.
12B7.2B$9.D2.D3.11B7.2B$17.9B7.B2AB$19.7B8.2A$6.D2.D8.9B$18.10B$19.8B
$3.D2.D13.8B$20.9B$22.8B$D2.D20.B2.4B$28.4B$29.4B$D29.4B$31.4B$32.4B$
33.4B$34.4B!
Shall I start a series of CatForce runs on 90-degree two-glider collisions? There may be a pleasantly direct option in the search space, if interposing a catalyst causes a signal output not in Golly's two-glider-collisions.rle file.
dvgrn wrote:(If there's anything that anyone doesn't understand about Demonoid geometry, by the way, please go ahead and ask questions, here or on the Demonoid thread. The 0hd Demonoid is actually fairly clean and simple, at least compared to the 10hd version and earlier designs.)
I didn't quite understand at the time why it had to be glide-reflective, how exactly the glider tape kept advancing, or how it cleaned up after itself...but putting more thought into it clears up how it works, which I can't quite explain in my usual small asides.
Tanner Jacobi
Coldlander, a novel, available in paperback and as an ebook. Now on Amazon.

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

Re: New construction arms

Post by dvgrn » December 20th, 2015, 7:12 pm

Kazyan wrote:Shall I start a series of CatForce runs on 90-degree two-glider collisions? There may be a pleasantly direct option in the search space, if interposing a catalyst causes a signal output not in Golly's two-glider-collisions.rle file.
I guess there's most likely something out there along those lines. The reaction would have to be set up so that if there's no glider to collide with, the p120 stream crosses the construction lane and is harmlessly absorbed, presumably by a fishhook eater.

There isn't any reason why the delayed/inserted glider really has to be on the same lane as the other one, right? So if the catalysts you posted had been Spartan, it might have been possible to find a universal set and a recipe for self-construction. With the right choices of elbow targets, any number of lane offsets would work. It's just a matter of running a new search based on whatever specific reactions you find, and seeing which one turns out to be the most efficient.

However, it's starting to look as if even just adding a p120 gun plus a fishhook eater will make something more complicated than a single-construction-lane design. On the other side of the scale is the added efficiency from being able to bring the gliders in each glider pair some unknown amount closer together. But there will still be limitations based on the insertion reaction... again, it will basically take a separate search for each specific candidate design, to figure out which one really has the shortest total construction recipe length and/or population.
calcyman wrote:I think that the most exciting possibility hasn't been mentioned yet: it's theoretically possible given these operations to convert an elbow-block into a Snark (in the obvious place) together with an elbow-block aligned with the output of said Snark. In other words, we have the potential to make a simeksian recipe to bend a
construction arm around a corner.
Luckily there's no need to wait around for a sane slow-salvo Snark recipe for that, This G-to-G works at p90, for example.

Code: Select all

x = 87, y = 54, rule = LifeHistory
2.A$A.AB$.2A2B$2.4B$3.4B$4.4B$5.4B$6.4B$7.4B$8.4B$9.4B$10.4B$11.4B$
12.4B$13.4B$14.4B65.4B$15.4B63.4B$16.4B61.4B$17.4B59.4B$18.4B57.4B$
19.4B55.4B$20.4B53.4B$21.3BA51.4B$22.3BA49.4B$23.3AB47.4B$24.4B10.A
34.4B$25.4B7.3A33.4B$26.4B5.A21.B13.4B$27.4B4.2A19.3B11.4B$20.2A6.9B
17.6B8.5B$21.A7.6B13.4B2.7B3.8B$21.A.2A5.6B3.B2.2B2.26B$22.A2.A4.19BD
23B$23.2AB3.20BDBD21B.3B$24.14B2A9B3DB2A22B$25.13B2A11BDB2A21B2A$26.
48B.B2A$26.17B.B5.23B3.B$27.15B10.B2.18B$27.15B13.17B$28.13B14.17B$
30.13B12.19B$29.8B4.2A.A2.A8.18B$29.6B6.2AB4A8.4B2.12B$29.5B8.B19.11B
$29.B.B9.2A.2A16.8B$30.3B9.A.A17.10B$29.B2AB9.A.A10.A2.A.2AB.4B2.2A$
30.2A11.A11.4AB2AB7.A$60.B10.3A$57.2A.2A11.A$58.A.A$58.A.A$59.A!
It contains two eater2s, but that's still probably easier to construct with a slow salvo than a Snark will ever be.
calcyman wrote:With a soupçon of extra effort, it could build a SOD in the propinquity of the Snark so that the 'bend right' and 'bend left' operations are invertible.
This could also be done without a SOD, by constructing and triggering a small "meteor shower" seed that destroys the previous elbow and leaves nothing behind but a block (or any target that can be converted into it). That might not take more than a single 180-degree glider, to damage the Snark's mechanism a little -- it will just take running a search to find out for sure.

simeks
Posts: 401
Joined: March 11th, 2015, 12:03 pm
Location: Sweden

Re: New construction arms

Post by simeks » January 3rd, 2016, 12:46 am

dvgrn wrote in The Hunting of the New Herschel Conduits:
dvgrn wrote:We need the search program anyway, to see how far simeks' toolkit can be extended!
I have started working on a new elbow op search program, that I'm writing from scratch in C.

It is far from complete, but from a test run that could only find block moves I have these new results. The last one is obviously an elbow killer. The initial recipes were posted here:

Code: Select all

x = 553, y = 334, rule = LifeHistory
287.2E86.2E86.2E86.2E$287.2E86.2E86.2E86.2E4$285.3A85.3A85.3A$287.A
87.A87.A84.3A$286.A87.A87.A87.A$549.A24$258.2A86.2A86.2A$259.2A86.2A
86.2A84.2A$258.A87.A87.A87.2A$521.A19$236.A87.A87.A$236.2A86.2A86.2A
85.A$235.A.A85.A.A85.A.A85.2A$498.A.A21$212.2A86.2A86.2A$213.2A86.2A
86.2A84.3A$212.A87.A87.A88.A$476.A19$190.A87.A87.A$190.2A86.2A86.2A
85.A$189.A.A85.A.A85.A.A85.2A$452.A.A20$167.2A86.2A86.2A$168.2A86.2A
86.2A84.2A$167.A87.A87.A87.2A$430.A19$145.A87.A87.A$145.2A86.2A86.2A
85.A$144.A.A85.A.A85.A.A85.2A$407.A.A20$122.2A86.2A86.2A$121.A.A85.A.
A85.A.A85.2A$123.A87.A87.A86.2A$385.A20$99.3A85.2A86.2A$101.A86.2A86.
2A$100.A86.A87.A20$77.2A86.A87.A$76.A.A86.2A86.2A$78.A85.A.A85.A.A25$
50.3A85.2A86.2A$52.A86.2A86.2A$51.A86.A87.A21$203.2A$202.A.A$204.A$
112.2A$23.3A85.A.A$25.A87.A$24.A17$180.2A$181.2A$180.A$.A87.2A$.2A87.
2A$A.A86.A17$158.A$158.2A$157.A.A21$135.2A$136.2A$135.A!

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: New construction arms

Post by Scorbie » January 3rd, 2016, 6:13 am

Wow! A slow-salvo novice thinks these recipes look pretty nice! (And cheap, but I don't know a thing on slow-salvo tech.) What were your search settings?
Edit: Oh, and belated congratulations to your birthday! (It was new year's day, right?)

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

Re: New construction arms

Post by dvgrn » January 3rd, 2016, 9:14 am

simeks wrote:dvgrn wrote in The Hunting of the New Herschel Conduits:
dvgrn wrote:We need the search program anyway, to see how far simeks' toolkit can be extended!
I have started working on a new elbow op search program, that I'm writing from scratch in C.

It is far from complete, but from a test run that could only find block moves I have these new results. The last one is obviously an elbow killer.
And the first one is a chirality switcher -- after you use it, future gliders will fire in the opposite direction. Good to know for sure that that is available and not too expensive.

And there's a PULL7 and PULL11 now, to go with the PULL19. It would be nice to find an even PULL or an odd PUSH, for efficiency's sake, but this is already far and away more efficient than the original PUSH4/PULL19 toolkit.

-- Actually it probably makes sense to switch over to chris_c's metrics for measuring elbow movements. Besides the measured-from-the-back convention, which makes it not too painful to figure out what lane number or PUSH/PULL rating to assign to a recipe with a non-block elbow, the most useful trick is to measure pushes and pulls in half diagonals instead of full diagonals.

So I should be saying that we have PUSH8, PULL14, PULL22, PULL23, and PULL38 so far, with hopes of more to come. Or rather, m8AA, m-14AA, m-22AA, and m-38AA, and the new chirality switcher is m-23AAr. I.e., let's call a pi-positioned block an "A" elbow, and the chirality switcher recipe turns it into A-reversed.

The other not-required-but-useful items on a universal toolkit wish-list would be an elbow duplicator, and a hand builder -- something that throws some piece of junk far enough to the side that it doesn't interfere with some universal subset of the toolkit, Doesn't matter too much how big and messy the off-to-the-side constellation is, as long as it doesn't throw off any gliders, and it can be cleaned up into workable targets to start a slow salvo.

Somewhere out there is the cheapest elbow duplicator, but it may not be very cheap, and may be really hard to find. Given a far-distant hand target, it's trivial to string together a very expensive duplicator with the existing toolkit -- so at least we know that duplicators exist.

I'll keep my fingers crossed that a cheaper "natural" duplicator recipe shows up. Similar to the hand builder, the two elbows will have to be separated by enough distance that some toolkit recipe can get hold of the nearer elbow and pull it to increase the separation. Thanks to m-38AA, if the elbows are blocks, the required distance is only 14hd or 15hd.

Curiosity question: will the new search code be able to discover new elbows for itself? Or will that be something to add by hand, when a good new branch point is found?

From the looks of m-14AA and m-22AA, you've already done away with the requirement that gliders show up in slow pairs. Looking good!

simeks
Posts: 401
Joined: March 11th, 2015, 12:03 pm
Location: Sweden

Re: New construction arms

Post by simeks » January 3rd, 2016, 6:33 pm

Scorbie wrote:Wow! A slow-salvo novice thinks these recipes look pretty nice! (And cheap, but I don't know a thing on slow-salvo tech.) What were your search settings?
Edit: Oh, and belated congratulations to your birthday! (It was new year's day, right?)
This was just a very early test run of the search program, and it's hardly even meaningful to talk about search settings yet... but if you have some more specific question I'll try to answer.

Thanks, but sorry, I had only filled in my year of birth in the profile and left my birthday blank. It's fixed now.
dvgrn wrote:And the first one is a chirality switcher -- after you use it, future gliders will fire in the opposite direction. Good to know for sure that that is available and not too expensive.
Actually I have already posted an m-1AAr chirality switcher (second code box, last recipy).
dvgrn wrote: Curiosity question: will the new search code be able to discover new elbows for itself? Or will that be something to add by hand, when a good new branch point is found?
That is one possibility I'm considering. The other one is to do some kind of soup search, and instead of identifying objects in the result, consider the entire ash field as a potential elbow object. The idea would be to identify the most common such objects.

Has anything similar been done before, or does anyone know of a script that would be easy to adapt to such a search?

Also, I wanted to show also how a block push looks in simsim314's design:

Code: Select all

x = 352, y = 343, rule = LifeHistory
342.2A$342.2A3$339.2A$339.2A2$342.2A$342.2A$350.2A$350.A$348.A.A$348.
2A2$257.2E$257.2E2$341.2A$342.2A$341.A2$336.3A$336.4A$335.A2.A.2A$
331.2A2.A.2A.2A$331.2A7.A$334.A5.A$338.2A$318.A15.A.A$316.2A$317.2A$
331.2A$331.2A16$288.A28.2A$286.3A28.2A$285.A$285.2A$275.2A$276.A$276.
A.A$277.2A4.2A$282.A2.A$283.2A$295.2A$295.2A4$327.2A$327.2A3$281.2A3.
2A$282.A3.A19.2A$279.3A5.3A15.A.A$279.A9.A15.A$270.3A31.2A$272.A$271.
A25$243.2A$244.2A$243.A31$210.3A$212.A$211.A21$187.2A$186.A.A$188.A
34$151.A$151.2A$150.A.A29$120.3A$122.A$121.A21$97.3A$99.A$98.A35$60.
3A$62.A$61.A27$31.A$31.2A$30.A.A28$.A$.2A$A.A!

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

Re: New construction arms

Post by calcyman » January 3rd, 2016, 7:11 pm

simeks wrote:Thanks, but sorry, I had only filled in my year of birth in the profile and left my birthday blank. It's fixed now.
I feel sorry for anyone born on 1st January 1970; everyone assumes their date of birth was unspecified and just defaulted to 0.
What do you do with ill crystallographers? Take them to the mono-clinic!

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: New construction arms

Post by Scorbie » January 3rd, 2016, 7:27 pm

simeks wrote:
Scorbie wrote:Wow! A slow-salvo novice thinks these recipes look pretty nice! (And cheap, but I don't know a thing on slow-salvo tech.) What were your search settings?
This was just a very early test run of the search program, and it's hardly even meaningful to talk about search settings yet... but if you have some more specific question I'll try to answer.
I see! Hope to see your new elbows :)
simeks wrote:
Scorbie wrote:Edit: Oh, and belated congratulations to your birthday! (It was new year's day, right?)
Thanks, but sorry, I had only filled in my year of birth in the profile and left my birthday blank. It's fixed now.
calcyman wrote:I feel sorry for anyone born on 1st January 1970; everyone assumes their date of birth was unspecified and just defaulted to 0.
:lol: :lol: :lol: :lol: :lol: :lol:
A little tangential to Calcyman's but the age shown on simeks' birthday seemed to be less than... 2016 - 1970 = 46. That probably means phpBB is parsing the best it can (age in this case) :)

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

Re: New construction arms

Post by dvgrn » January 4th, 2016, 1:06 am

simeks wrote:
dvgrn wrote: Curiosity question: will the new search code be able to discover new elbows for itself? Or will that be something to add by hand, when a good new branch point is found?
That is one possibility I'm considering. The other one is to do some kind of soup search, and instead of identifying objects in the result, consider the entire ash field as a potential elbow object. The idea would be to identify the most common such objects.

Has anything similar been done before, or does anyone know of a script that would be easy to adapt to such a search?
I can't think of anything offhand. Seems as if you'd have to build a really really big database of ash fields, before you'd get any useful information about which ones were most common.

Anyway, it doesn't seem as if it really matters which ash fields are most common in soup searches. It only matters how reachable they are starting from an "A" block... Seems like we can assume that the "A" block will be one of the elbow types in the toolkit, anyway. The trick is to find more elbows that can be successfully converted to and from "A" blocks, in multiple ways.

-- If there's only one path from elbow-X to J. Random Constellation to another known elbow-Y, then J. Random Constellation isn't really a new elbow type, it's just part of the elbow-X to elbow-Y recipe. But as soon as you have recipes for J. Random to known elbow-Y, and J. Random to known elbow-Z -- or even just elbow-Y in a different location -- then J. Random deserves to be added to the list of official elbows.

And then J. Random should be investigated as the starting point for a new search. There might be other conversion recipes available that the original lower-depth search missed. I hope that once a small list of interchangeable elbows is known, the list will start to grow naturally as the search continues. But it might not turn out that way, I suppose.

Anyway, if some really rare still life happens to show up in the search tree, it will still be worth checking for multiple ways to get known elbows from it, just as much as if it were a very common constellation. So I'm not sure that it's possible to get much useful information from the soup-search approach.
simeks wrote:Also, I wanted to show also how a block push looks in simsim314's design...
Interesting! It's nice that both the syringe+Lx200, and Paul Callahan's 2G->H mechanism, can handle single-lane elbow recipes: signals can follow 90 ticks after each other in an Lx200, and 92 ticks seems to be the limit for the beehive 2G->H.

It's potentially a different set of recipes, though, right? The syringe+Lx200 can accept three or more gliders separated by 90 ticks, whereas the 2G->H has to pause after one 90-tick-separated pair, to let the p120 gun get caught up with the cleanup.

The 2G->H and p120 gun combination is wonderfully small and Spartan, but it seems as if the construction arm is pointing in the wrong direction -- for all the purposes I've thought of recently, anyway. Using an extra "slow elbow" to bend the arm around another 90 degrees would be likely to cost so much that any benefits from the tiny circuitry would be far outweighed. It doesn't really cost all that much to build a syringe+Lx200 these days.

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: New construction arms

Post by Scorbie » January 4th, 2016, 2:36 am

Changing the direction doesn't seem *too* bad... Just an Fx77 and a slightly more expensive um... HSE22T-8!

Code: Select all

x = 390, y = 343, rule = LifeHistory
342.2A$342.2A3$339.2A$339.2A2$342.2A$342.2A$350.2A$350.A$348.A.A$348.
2A5$341.2A$342.2A$341.A2$336.3A$336.4A$335.A2.A.2A$331.2A2.A.2A.2A$
331.2A7.A$334.A5.A$338.2A$318.A15.A.A$316.2A$317.2A$331.2A$331.2A5$
284.A$284.3A$287.A$286.2A8$288.A34.A$286.3A32.3A$285.A34.A$285.2A33.
2A$275.2A$276.A62.A$276.A.A60.3A$277.2A4.2A45.A11.A$282.A2.A44.3A8.2A
$283.2A48.A$295.2A35.2A$295.2A56.2A$353.2A7$281.2A3.2A32.2A$282.A3.A
20.2A11.2A23.2A$279.3A5.3A18.A36.A$279.A9.A15.3A38.3A$270.3A32.A42.A$
272.A$271.A25$243.2A$244.2A$243.A5$388.2E$388.2E25$210.3A$212.A$211.A
21$187.2A$186.A.A$188.A34$151.A$151.2A$150.A.A29$120.3A$122.A$121.A
21$97.3A$99.A$98.A35$60.3A$62.A$61.A27$31.A$31.2A$30.A.A28$.A$.2A$A.A
!
I think it makes the solution less attractive than the original, though :(
Anyway, the biggest unattractive point of this design to A Life Elbow Construction Newbie is the timing constraints... I think it would be pesky to write the building script with timing constraints when there's already a one -to -use right now... Or isn't it? Please correct me if I'm wrong...

@dvgrn How cheap do you expect a new "syringey" alternative to be to willingly change plans from syringe+Lx200 to that new one?

EDIT: And about that hypothetical situation of wrongly placed gliders (that should probably never be encounted in the first place), one could always use a semi-snark/semispartan snark or two as a last resort... So I would say the overhead is constant, albeit a big big big one.

Code: Select all

#C Yes, I know this is absurd :(
x = 404, y = 386, rule = LifeHistory
319.C$318.C.C$318.C.C$317.2C.2C11.C$331.3C$290.2C11.C11.4C.2C8.C$290.
2C10.C.C10.C2.C.2C8.2C$302.C.C$301.2C.2C2$301.2C.4C$301.2C.C2.C6$336.
2C$298.2C13.2C21.2C$298.2C13.2C$283.2C$282.C2.C$281.C.2C$281.C$280.2C
$295.2C$295.C$296.3C$272.2C24.C$272.2C3$258.2C$259.C$259.C.C$260.2C8$
342.2A$258.C.2C80.2A$256.3C.2C$255.C$256.3C.2C77.2A$258.C.C78.2A$260.
C$260.2C80.2A$273.2C67.2A$273.2C75.2A$350.A$348.A.A$348.2A3$265.2C$
265.C$263.C.C75.2A$261.3C.2C75.2A$260.C80.A$261.3C.2C$263.C.2C69.3A$
336.4A$273.2C60.A2.A.2A$273.2C7.2C47.2A2.A.2A.2A$282.C48.2A7.A$280.C.
C51.A5.A$280.2C56.2A$318.A15.A.A$316.2A$317.2A$260.2C69.2A$260.2C69.
2A5$276.C$275.C.C$275.C.C$276.C$277.3C$279.C6$288.A28.2A$286.3A28.2A
83.2E$285.A116.2E$285.2A$275.2A$276.A$276.A.A$277.2A4.2A$282.A2.A$
283.2A$295.2A$295.2A4$327.2A$327.2A3$281.2A3.2A$282.A3.A19.2A$279.3A
5.3A15.A.A$279.A9.A15.A$270.3A31.2A$272.A$271.A25$243.2A$244.2A$243.A
31$210.3A$212.A$211.A21$187.2A$186.A.A$188.A34$151.A$151.2A$150.A.A
29$120.3A$122.A$121.A21$97.3A$99.A$98.A35$60.3A$62.A$61.A27$31.A$31.
2A$30.A.A28$.A$.2A$A.A!

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

Re: New construction arms

Post by dvgrn » January 4th, 2016, 10:19 pm

Scorbie wrote:Anyway, the biggest unattractive point of this design to A Life Elbow Construction Newbie is the timing constraints... I think it would be pesky to write the building script with timing constraints when there's already a one -to -use right now... Or isn't it? Please correct me if I'm wrong...
Timing constraints wouldn't be too horrible -- you'd have a script dropping recipes one after another at 120-tick spacing, instead of just as close together as possible. Seems like it would still be pretty trivial to string long recipes together from elbow ops.

To me the painful thing is the detail of setting up the G-to-H with extra bait still lifes, so that after the recipe is done, the G-to-H constellation can absorb several unmatched gliders from the p120 gun -- and preferably clean itself up and send a timed glider back to shut down the gun as quickly and cleanly as possible.

I'm sure this is doable somehow, and it would even be an amusing little research project... It will bulk up the total number of still lifes somewhat, but probably not much more than a standard self-destruct circuit for a syringe+Lx200 or any other equivalent conduit.
Scorbie wrote:@dvgrn How cheap do you expect a new "syringey" alternative to be to willingly change plans from syringe+Lx200 to that new one?
If I understand your question correctly... well, let's see:

The constructed reflector/glider emitter in the 0hd Demonoid has a 540-glider recipe. Out of that, something like 100 gliders are spent building the eater2 and fishhook eater combination. That's just about ten times as expensive as building two regular Spartan still lifes with that particular 0hd toolkit. Or in other words, a pure Spartan alternative would still be worth building even if it had about twenty more still lifes in it than the syringe+Lx200. If it's only ten more still lifes, then it's definitely worth changing plans... I think... all other things being equal.

Does that answer the question, or no?

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: New construction arms

Post by Scorbie » January 5th, 2016, 5:47 am

dvgrn wrote:Does that answer the question, or no?
More than answers it. Thanks for the overview :) If it's like that, then the new design would be much cheaper with the appropriate destruction recipes. I guess the first thing to do for destructing this is to blow up the gun first.
EDIT: simsim's original suggestion looks better:

Code: Select all

x = 382, y = 321, rule = LifeHistory
320.2A$320.2A3$317.2A$317.2A2$320.2A$320.2A$328.2A$328.A$326.A.A$309.
3A14.2A2$309.A.A$312.A$308.A3.A21.2A$335.A$308.A2.2A22.A.A$336.2A3$
291.A$291.3A$294.A14.2A$293.2A14.2A$288.A34.A$286.3A23.2A7.3A$285.A
26.2A6.A$285.2A33.2A$275.2A$276.A32.2A$276.A.A30.2A$277.2A4.2A44.2A$
282.A2.A44.A$283.2A45.A.A$295.2A34.2A$295.2A3$352.2A$352.2A4$281.2A3.
2A32.2A$282.A3.A20.2A11.2A$279.3A5.3A18.A$279.A9.A15.3A$270.3A32.A$
272.A$271.A3$340.2A$341.A$338.3A$338.A19$243.2A$244.2A$243.A5$380.2E$
380.2E25$210.3A$212.A$211.A21$187.2A$186.A.A$188.A34$151.A$151.2A$
150.A.A29$120.3A$122.A$121.A21$97.3A$99.A$98.A35$60.3A$62.A$61.A27$
31.A$31.2A$30.A.A28$.A$.2A$A.A!

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

Re: New construction arms

Post by dvgrn » January 5th, 2016, 2:39 pm

Scorbie wrote:
dvgrn wrote:Does that answer the question, or no?
More than answers it. Thanks for the overview :) If it's like that, then the new design would be much cheaper with the appropriate destruction recipes. I guess the first thing to do for destructing this is to blow up the gun first.
There are other good options, too. It only takes a couple of still lifes to make the return gliders safe, by boat-bit-catching the extras:

Code: Select all

x = 405, y = 371, rule = LifeHistory
361.A$359.3A$358.A$358.2A$356.4B$355.3B$354.4B.3B.B2.4B$347.18B.4B$
346.4BA11B2A5B2A$346.4B3A9B2A5B2A$346.4BABA15B.B$344.8BA12B2AB$343.
13B2.7B2A$343.10B6.8B$344.7B7.7B$342.8B6.10B$342.2A7B2.13B$341.B2A21B
$339.B.22B$338.2A5B2A16B$338.2A5B2A16B$339.4B.18B$339.4B2.B.3B.4B$
350.4B$349.4B$348.4B$347.BA2B$346.2A2B$347.2A28$318.A$316.2A11.D$317.
2A2$329.D2.D2$357.2C$332.D2.D22.C$335.2B21.C.C$335.3B21.2C$335.D2BD$
336.4B$337.4B$338.D2BD$339.4B$340.4B$291.A49.D2BD$291.3A48.4B$294.A
48.4B$293.2A49.D2BD$288.A56.3B$286.3A57.2B$285.A27.A9.C23.D2.D$285.2A
26.3A5.2AC28.2C$275.2A39.A3.A11.2C19.C$276.A38.2A3.2A10.C.C15.D2.C.CB
$276.A.A55.C19.2CB$277.2A4.2A49.2C20.B$282.A2.A67.D2.D$283.2A71.2B$
295.2A11.D47.3B16.2C$295.2A9.3D47.D2BD15.2C$306.D.D48.4B$306.D30.2C
15.D3.4B$337.2C15.D.D2.D2BD$354.3D3.4B$356.D4.4B$362.D2BD$363.4B$281.
2A3.2A76.4B$282.A3.A19.2A57.D2BD$279.3A5.3A15.A.A11.2A6.A38.3B$279.A
9.A15.A13.2A6.3A37.2B$270.3A31.2A24.A37.D2.D$272.A9.2A45.2A32.2C$271.
A10.2A80.C$361.3C$273.2A86.C$273.A$274.3A$276.A20$243.2A$244.2A$243.A
$403.2E$403.2E29$210.3A$212.A$211.A21$187.2A$186.A.A$188.A34$151.A$
151.2A$150.A.A29$120.3A$122.A$121.A21$97.3A$99.A$98.A35$60.3A$62.A$
61.A27$31.A$31.2A$30.A.A28$.A$.2A$A.A!
[[ X -138 Y 113 ZOOM 2.5 STEP 5 ]]
In the above, I tried replacing the Fx77 with an Fx153, for a couple of reasons: one of the Fx77's eaters stuck right out into the danger zone, and I also wanted to look for a power-of-two lane separation.

No luck this time: this just has a lane separation of 74 instead of 55, which is hardly any improvement at all from HashLife's point of view, especially since the reflection still switches the glider's parity (so the time dimension can't be adjusted to a pure power of two either.) And single-channel elbow operations are significantly wider than their 10hd, 9hd, or even 0hd counterparts, so there are quite a few catalysts still in the danger zone (white objects above). Luckily we can move the gun as far back as we want, so constructing it will be really cheap and easy.

With no eater2s to worry about, the most expensive part of one of these universal constructors will be the catalysts in the danger zone -- they're in danger of getting hit by sparks from elbow operations, so they're going to have to be built in a totally different (read: several times more expensive) way. The Demonoids have really narrow danger zones, because they drop gliders onto their construction lanes with edge shooters.

-- It might actually be cheaper overall to add the extra circuitry for an edge shooter, so that there will be only three easy catalysts in the danger zone, instead of six or maybe nine:

Code: Select all

x = 421, y = 364, rule = LifeHistory
304.2E$304.2E26$353.2A$353.2A$336.2D$337.D$337.D.D$338.2D$262.2E$262.
2E5$339.2A$338.A.A$338.A$337.2A$320.2A$320.2A3$317.2A$317.2A39.2A$
358.A$320.2A37.3A$320.2A39.A$328.2A$328.A$326.A.A$309.3A14.2A14.2A$
341.A.A$309.A.A29.A$312.A27.2A$308.A3.A2$308.A2.2A4$291.D58.2A$291.3D
56.2A$294.D14.2A$293.2D14.2A46.A$288.A68.3A$286.3A23.2A9.2A16.2A17.A$
285.A26.2A9.A17.A17.2A$285.2A34.A.A18.3A$275.2A44.2A21.A$276.A32.2A$
276.A.A30.2A$277.2A4.2A$282.A2.A$283.2A$295.2A$295.2A3$419.2E$359.2D
58.2E$359.D.D$361.D$361.2D$281.2A3.2A32.2A13.2A$282.A3.A20.2A11.2A13.
2A$279.3A5.3A18.A$279.A9.A15.3A$270.3A32.A$272.A9.2A$271.A10.2A75.2A$
359.2A$273.2A$273.A$274.3A$276.A82.2A$359.2A$345.2A$344.A.A$344.A$
343.2A8.2A$353.A$354.3A$356.A8$393.2E$393.2E3$243.2A$244.2A$243.A31$
210.3A$212.A$211.A21$187.2A$186.A.A$188.A34$151.A$151.2A$150.A.A29$
120.3A$122.A$121.A21$97.3A$99.A$98.A35$60.3A$62.A$61.A27$31.A$31.2A$
30.A.A28$.A$.2A$A.A!
[[ X -114 Y 117 ZOOM 2.2 STEP 10 ]]
(Sorry, the red eaters will really be green. I just think it's amazing that every spare glider output in a circuit can be trivially turned into another construction arm.)

Catalysts in the danger zone will have to be constructed by building and triggering some kind of seed constellation. In extreme cases, it might even be necessary to build a seed for a complete freeze-dried slow salvo, with the last gliders on the tape triggering the seed. The actual final construction would be done by the reconstituted gliders.

I've been looking for an excuse to do one of those freeze-dried salvos, actually. An interesting one would be a knightship, probably diamond-shaped, that actually moves at (2,1)... by building a freeze-dried salvo at each 90-degree corner that shoots down the U.C. circuitry and rebuilds it at a (2,1) offset, during its "down time" right after the construction recipe has passed through. So far it looks like that would require four separate recipe streams, though, or a lot of clever switching circuitry. I'm trying not to pursue that idea, so as to save my few remaining brain cells for the quadratic replicator project.

A freeze-dried salvo can be built at a cost of two or three Spartan objects per reconstituted glider -- which is expensive, but not too bad really. So it looks like this Lx200+NW31 version would still be much simpler than the Demonoids' universal constructors, in terms of the number of still lifes, even after self-destruct circuitry has been added.

Unfortunately... single-channel recipes are significantly less efficient than 10hd ones (4 glider pairs per output slow-salvo glider, on average) or even 0hd ones (5gp/g average). At the moment there aren't enough single-channel elbow operations to get anywhere near that level of efficiency.

That means that a Demonoid with this U.C. design would most likely be at least twice as long as the current 0hd Demonoid, and probably twice as long as even the 10hd model. That might change once simeks' search program is up and running, though -- all we need is a library of several thousand elbow ops with lots of different elbows, like we had for the 10hd and 0hd Demonoids.

However, I've mentioned before that I'm trying not to go back to reflecting recipes back and forth between two U.C.s, as in the Demonoids and the linear propagator. Golly can't handle all those gliders going in opposite directions, at least not very well... and we have plenty of examples of that kind of architecture now. Let's find something to build besides a Demonoid. Block off that 180-degree output in the above patterns, and use one of the 90-degree ones!

... Could get a nice new faster spiral-growth pattern quite easily, for example. Maybe that would be a good project to start with, to get some experience with this new single-channel toolkit.

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

Re: New construction arms

Post by dvgrn » January 5th, 2016, 3:29 pm

Forgot to mention in my last post, which was already too long anyway...

A nice thing about having a p120 gun as part of a universal constructor is that when you get to the self-destruct stage, you can generate extra signals fairly cheaply, and route them around with one-time turners to shoot things down, or do circuitry switching tasks or whatever. Here's an example:

Code: Select all

x = 421, y = 364, rule = LifeHistory
304.2E$304.2E26$353.2A$353.2A$336.2D$337.D$337.D.D$338.2D$262.2E$262.
2E5$339.2A$338.A.A$338.A$337.2A$320.2A$320.2A3$317.2A$317.2A39.2A$
358.A$320.2A37.3A$320.2A39.A$328.2A$328.A$326.A.A$309.3A14.2A14.2A$
341.A.A$309.A.A29.A$312.A27.2A$308.A3.A2$308.A2.2A4$291.D58.2A$291.3D
56.2A$294.D14.2A$293.2D14.2A46.A$288.A68.3A$286.3A23.2A9.2A16.2A17.A$
285.A26.2A9.A17.A17.2A$285.2A34.A.A18.3A$275.2A44.2A21.A$276.A32.2A$
276.A.A30.2A$277.2A4.2A$282.A2.A$283.2A$295.2A$295.2A3$419.2E$359.2D
58.2E$359.D.D$361.D$361.2D$281.2A3.2A32.2A13.2A$282.A3.A20.2A11.2A13.
2A$279.3A5.3A18.A$279.A9.A15.3A$270.3A32.A$272.A9.2A$271.A10.2A75.2A$
359.2A2$275.2A$275.A.A$277.A81.2A$277.2A80.2A$271.2A72.2A$271.A.A70.A
.A$273.A70.A$273.2A68.2A8.2A$267.2A84.A$267.A.A84.3A$269.A86.A$269.2A
$263.2A$263.A.A$265.A$265.2A$259.2A$259.A.A$261.A131.2E$261.2A130.2E$
255.2A$255.A.A$243.2A12.A$244.2A11.2A$243.A7.2A$251.A.A$253.A$253.2A
2$243.2A$243.A$244.3A$246.A23$210.3A$212.A$211.A21$187.2A$186.A.A$
188.A34$151.A$151.2A$150.A.A29$120.3A$122.A$121.A21$97.3A$99.A$98.A
35$60.3A$62.A$61.A27$31.A$31.2A$30.A.A28$.A$.2A$A.A!
[[ X -114 Y 117 ZOOM 2.2 STEP 10 ]]
Probably something like this won't actually be as efficient as a custom-designed self-destruct circuit. It's really pretty easy to get extra gliders out of cleanup reactions in general, once you get used to the Seeds of Destruction Game. But it's a nice option to remember.

It's similarly easy to send a first glider in that starts up the gun. A boat in the right place can reset the G-to-H circuit once, and you can get a spare glider out anywhere along the circuit to start up the gun, and then adjust the rest of the recipe so that it hits the G-to-H just before the reset gliders start arriving from the gun.

Or instead of a boat, you can use a 2sL splitter like the one shown here:

Code: Select all

x = 251, y = 168, rule = LifeHistory
183.2A$183.2A$166.2A$167.A$167.A.A$168.2A7$169.2A$168.A.A$168.A$167.
2A$150.2A$150.2A3$147.2A$147.2A39.2A$141.2C45.A$141.2C7.2A37.3A$150.
2A39.A$158.2A$158.A$156.A.A$111.A44.2A14.2A$111.3A57.A.A$114.A56.A$
113.2A55.2A4$125.C$124.C.C$118.C5.C.C$117.C.C3.D.C54.2A$118.C3.D.D55.
2A$122.2D15.2A$139.2A46.A$118.A68.3A$116.3A23.2A9.2A16.2A17.A$115.A
26.2A9.A17.A17.2A$115.2A34.A.A18.3A$105.2A44.2A21.A$106.A32.2A97.2C$
106.A.A30.2A97.2C$107.2A4.2A$112.A2.A$113.2A$125.2A$125.2A$111.3A$
113.A$112.A136.2E$189.2A58.2E$189.A.A$191.A$191.2A$111.2A3.2A32.2A13.
2A$112.A3.A20.2A11.2A13.2A$109.3A5.3A18.A$109.A9.A15.3A$135.A$112.2A$
112.2A75.2A$189.2A$103.2A$103.A$104.3A$106.A82.2A$189.2A$175.2A$174.A
.A$174.A$173.2A8.2A$183.A$184.3A$186.A85$3A$2.A$.A!

simeks
Posts: 401
Joined: March 11th, 2015, 12:03 pm
Location: Sweden

Re: New construction arms

Post by simeks » January 5th, 2016, 7:50 pm

dvgrn wrote:Seems as if you'd have to build a really really big database of ash fields, before you'd get any useful information about which ones were most common.
I think it's hard to guess how many soups would be needed, but a few hundred million would be easy enough to run. Soups that don't settle pretty quickly (a bit over 90 generations perhaps...) we throw away. We also throw away those results that are over a certain population or don't fit a certain bounding box.

Let's say there will remain a few hundred thousand that we look for the most common results in. The most common ones will probably be just one or a few objects, but I was hoping it would answer questions like: "Are there any constellations of two blocks that are much more common than most others?" or "Is a traffic light missing one of the blinkers more or less common than a single loaf?"
dvgrn wrote:Anyway, it doesn't seem as if it really matters which ash fields are most common in soup searches. It only matters how reachable they are starting from an "A" block...
That is true in principle. It's just that we can find millions of ash fields that can be generated from an "A" block. How do we know which ones are interesting to start a new search from? We can't do deep searches from millions of potential elbows...

On the other hand if we have already decided on a set of potential elbows that we plan to do deep searches from, then we will know as soon as one of these show up in a search, that we have found something interesting. And if we must decide on a set of elbows, it should be the ones that are the most likely to show up as search results.

In chris_c's search script for 0 hd elbow recipes you made an educated guess that blocks, hives and honey farms would be the most useful elbows. I was thinking we could aim for a list of maybe twenty to fifty different potential elbows, but it would be nice if we had some statistics about which ones are the most likely to show up in "soup-like" reactions. Any suggestions of other ways to do that are welcome!
dvgrn wrote:But as soon as you have recipes for J. Random to known elbow-Y, and J. Random to known elbow-Z -- or even just elbow-Y in a different location -- then J. Random deserves to be added to the list of official elbows.
As long as there is only a handful known working recipes this can be done by hand. It we ever discover hundreds of working recipes that might change, but I really haven't thought that far yet...

But doing deeper searches from good looking intermediate results in known recipes is certainly fruitful. Here are three new block moves found that way:

Code: Select all

x = 593, y = 340, rule = LifeHistory
335.2E126.2E126.2E$335.2E126.2E126.2E4$333.3A125.3A125.3A$335.A127.A
127.A$334.A127.A127.A25$306.2A126.2A126.2A$307.2A126.2A126.2A$306.A
127.A127.A20$284.A127.A127.A$284.2A126.2A126.2A$283.A.A125.A.A125.A.A
22$260.2A126.3A125.3A$261.2A127.A127.A$260.A128.A127.A20$238.A127.A
127.A$238.2A126.2A126.2A$237.A.A125.A.A125.A.A21$215.2A126.2A126.2A$
216.2A126.2A126.2A$215.A127.A127.A20$193.A$193.2A$192.A.A$318.2A126.
2A$319.2A126.2A$318.A127.A18$170.2A$169.A.A$171.A$295.2A126.2A$296.2A
126.2A$295.A127.A18$147.2A$148.2A$147.A125.A$273.2A$272.A.A$398.2A$
399.2A$398.A15$125.A$125.2A$124.A.A3$376.A$376.2A$375.A.A5$241.3A$
243.A$242.A13$98.2A$99.2A252.2A$98.A255.2A$353.A5$218.2A$219.2A$218.A
14$330.2A$329.A.A$331.A4$68.3A$70.A$69.A20$46.2A$45.A.A$47.A21$23.3A$
25.A$24.A20$.2A$A.A$2.A!
dvgrn wrote:It's potentially a different set of recipes, though, right? The syringe+Lx200 can accept three or more gliders separated by 90 ticks,
whereas the 2G->H has to pause after one 90-tick-separated pair, to let the p120 gun get caught up with the cleanup.
More specifically the recipes that work in both designs will be a subset of those that work in syringe + Lx200, so we might get them for free if we're lucky. And some lucky combinations of more than two precisely timed gliders will fit the 2G->H, such as the (100, 131, 101) spacing sequence of the m-38AA if I count correctly.
Scorbie wrote:simsim's original suggestion looks better:
Yes, sorry about that, I didn't mean to misrepresent simsim314's design. I just meant to show what the smallest design I could think of would look like, that would both copy the glider stream and build something from it.

EDIT: I meant to show this close miss to an elbow duplicator too. And I guess the extra block is not well placed as a start for a hand block? By the way, I haven't really understood why an elbow duplicator is important. How would it be used?

Code: Select all

x = 446, y = 450, rule = LifeHistory
444.2E$444.2E4$442.3A$444.A$443.A25$415.2A$416.2A$415.A20$393.A$393.
2A$392.A.A22$369.3A$371.A$370.A20$347.A$347.2A$346.A.A21$324.2A$323.A
.A$325.A21$301.3A$303.A$302.A20$279.2A$278.A.A$280.A21$256.2A$257.2A$
256.A20$234.A$234.2A$233.A.A21$211.2A$210.A.A$212.A21$188.2A$189.2A$
188.A21$165.3A$167.A$166.A20$143.2A$142.A.A$144.A27$114.A$114.2A$113.
A.A21$91.2A$92.2A$91.A21$68.3A$70.A$69.A20$46.A$46.2A$45.A.A21$23.2A$
24.2A$23.A21$3A$2.A$.A!

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

Re: New construction arms

Post by dvgrn » January 6th, 2016, 1:52 am

simeks wrote:The most common ones will probably be just one or a few objects, but I was hoping it would answer questions like: "Are there any constellations of two blocks that are much more common than most others?" or "Is a traffic light missing one of the blinkers more or less common than a single loaf?"
Hmm. That might be interesting information for its own sake, and maybe even slightly useful for sorting out possible elbows. I guess what I'd expect to happen would be to find that, say, the 3/4 traffic light is surprisingly common... and then find that 3/4TLs can be produced by a single-channel construction arm in dozens of different ways... and N different orientations and positions (relative to the construction lane) of a 3/4TL can be reduced to a Known Elbow... but thanks to Murphy's Law, it will turn out to be impossible to produce any of those N orientations and positions starting from a block -- or only after several hundred gliders, anyway, at which point the 3/4TL->block recipes are kind of pointless.

That's why I like the idea of starting from what we already know. You already found a universal set, and it uses a block, and blocks by pretty much any measure are more common than anything else. (Except maybe blinkers, but those are P2 and therefore constrain your output gliders in weird ways. It will be fine to include them in a toolkit along with lots of other elbows, but P2 elbows probably aren't worth chasing after early on.)

So let's agree to not throw away blocks.

Then, to qualify as a good alternate elbow that will give more choices for placing slow-salvo output gliders, we really need a good cheap path from a block to that alternate elbow, and a cheap path back again. It doesn't do much good if we can get from a 3/4TL to another 3/4TL, if we can't get back to a block. We know 3/4TLs are much less common than blocks, so it's correspondingly less likely that we'll happen to find a completely separate universal toolkit that uses 3/4TLs and leaves blocks out.

It seems better to enforce the connection to blocks early on. If you have a cheap block-to-J-Random-Constellation converter, you're halfway there already! And you're only one deep search away from finding out if there's a path back to a block again.

If there's only one path back to a known elbow, that's just one recipe -- no point in splitting it in the middle when there's no choice about the next part of the recipe. It might make sense to keep a hash table of any "stopping points" in the recipe, though, in case they show up in the middle of some completely different recipe later on.

However, if two cheap paths back to different Known Elbows are found, you have a new elbow to add to the library. The latest three recipes suggest that the following "stopping points" could be considered to be Known Elbows, because you can produce them from a block very cheaply, and there are at least two paths leading from each of them back to a block:

Code: Select all

x = 120, y = 30, rule = LifeHistory
21.B39.B.3B35.B.3B$20.3B37.8B32.8B$19.7B33.7B3A30.7B3A$15.4B2D6B28.4B
2D7B27.4B2D7B$8.2B4.5B2D7B3.2B15.2B4.2BA2B2D7B3.2B15.2B4.5B2D7B3.2B$
5.6B.24B9.6B.4BA21B7.6B.26B$5.7B3A21B9.11BA21B7.7B3A23B$4.28B2A3B7.
34B6.34B$5.26BA2BAB9.35B5.35B$5.14B2A10BABA2B9.35B5.35B$6.12BA2BA10BA
4B9.34B6.34B$6.13BABA14B2A8.32B8.32B$6.10BA3BAB2A12B2A8.32B8.11BA20B$
6.9BABA3BA2BA12B9.13B2A16B9.10BABA18B$7.8BA2BA3BABA11B11.11BA2BA14B
11.9BABA17B$8.8B2ABA3BA12B12.11B2A15B12.9BA18B$7.5B.5BABA16B10.30B10.
30B$7.11BA2BA14B11.29B11.29B$7.12B2A13B13.27B13.27B$6.28B12.28B12.28B
$5.11BA14B.B12.26B.B12.26B.B$4.4B.6BABA12B14.4B.21B14.4B.21B$3.4B2.6B
ABA12B13.4B2.21B13.4B2.21B$2.4B4.6BA12B13.4B4.19B13.4B4.19B$.4B6.13B.
4B12.4B6.13B.4B12.4B6.13B.4B$4B10.9B3.B13.4B8.11B3.B13.4B8.11B3.B$3B
11.9B17.3B9.11B16.4B9.11B$2B12.8B18.2B12.8B17.3B12.8B$B16.5B18.B13.8B
17.2B13.8B$20.B34.B4.B18.B15.B4.B!
You might think that these constellations are way too big and ugly and arbitrary to ever show up in any other context -- but Life can be funny sometimes:

Code: Select all

x = 151, y = 37, rule = LifeHistory
89.2E$29.2E57.E2.E57.E$28.E2.E56.E2.E56.E.E$29.2E58.2E58.2E4$27.3A57.
3A57.3A$29.A59.A59.A$28.A59.A59.A25$2A58.2A58.2A$.2A58.2A58.2A$A59.A
59.A!
(and so on.) So that gives us a path to Big Ugly and the others, from the beehive/TL position posted earlier, that doesn't go through an intermediate block. For example --

Code: Select all

x = 685, y = 685, rule = B3/S23
682b2o$681bo2bo$682b2o24$657b2o$658b2o$657bo78$577b3o$579bo$578bo25$
550b2o$549bobo$551bo51$497b3o$499bo$498bo22$473bo$473b2o$472bobo54$
417b2o$418b2o$417bo78$337b2o$338b2o$337bo21$314b2o$315b2o$314bo55$257b
3o$259bo$258bo21$234b3o$236bo$235bo55$177b3o$179bo$178bo21$154b2o$155b
2o$154bo55$97b2o$98b2o$97bo27$68b2o$67bobo$69bo38$28b2o$27bobo$29bo25$
bo$b2o$obo!
There's another recipe in the beehive group you posted, that puts out a sideways glider, and would produce a standard Big Ugly instead of a reversed one.

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

Re: New construction arms

Post by dvgrn » January 6th, 2016, 1:53 am

simeks wrote:
dvgrn wrote:Anyway, it doesn't seem as if it really matters which ash fields are most common in soup searches. It only matters how reachable they are starting from an "A" block...
That is true in principle. It's just that we can find millions of ash fields that can be generated from an "A" block. How do we know which ones are interesting to start a new search from? We can't do deep searches from millions of potential elbows...
I'm not quite sure about that. We could try to do deep searches from millions of potential elbows. Maybe we'll find that 99.9% of those searches end at depth 1, because no matter what glider you send second, the reaction always explodes or vanishes or makes a constellation that's bigger than our arbitrary threshold. Then we only have thousands of deep searches to run, and we can choose a meaning of "deep" to allow for a manageable total workload.

If we do end up with a list of millions of potential elbows, it definitely makes sense to sort them, and try the good ones first, and stop working our way down the list whenever good results stop showing up, or whenever we get bored. I'd say that "good" means

0) cheap to produce from a block
1) P1 not P2
2) low population
3) small bounding box.
simeks wrote:EDIT: I meant to show this close miss to an elbow duplicator too. And I guess the extra block is not well placed as a start for a hand block? By the way, I haven't really understood why an elbow duplicator is important. How would it be used?
There are two uses (that we've thought of, anyway). Neither of them are mission-critical, but each one would probably improve construction efficiency by quite a bit.

PUSHes are expensive. Once we've pushed an elbow far far away, we really don't want to have to do it again. It's much cheaper to PULL than to PUSH, and lots more different recipes are going to be available. Looks like this might be particularly true of the single-channel toolkit.

Now, imagine that the slow salvo recipe wanders from FAR to NEAR and back to FAR again, many times. (This does seem to happen a lot in bigger self-construction projects.)

If we have an elbow duplicator, we only have to do the mega-PUSH once. Then we duplicate the elbow as many times as we want, pull an elbow back to NEAR and use it for a while, then destroy it -- and hey presto, we magically have an elbow at FAR again, instantly!

Also, for one of the toolkits chris_c was able to collect a very large pile of elbow-destroying glider outputs. If any of those show up in the single-channel search space, and we have a cheap elbow duplicator, then that gives us a lot of new glider output recipes, Also the surviving elbow, being the spare one in the back, won't get PULLed too far -- generally a good thing if PUSHing it back would be expensive.

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: New construction arms

Post by Scorbie » January 6th, 2016, 2:27 am

Would the code in this project:
viewtopic.php?f=9&t=1296&p=10975&hilit=sscs#p10693
https://github.com/jukaiser/sscs/tree/v0.4.0

Help in any of the two methods? (Gathering most objects or targeting a specific object, I think?)

simeks
Posts: 401
Joined: March 11th, 2015, 12:03 pm
Location: Sweden

Re: New construction arms

Post by simeks » January 6th, 2016, 3:04 pm

I made a soup search like I suggested above, and I think the result is pretty interesting, no matter how useful it will turn out to be in single-lane construction.

This is what I did:
- The start patterns are 8-by-8 cells at 50% average density.
- Soups that settle to P1 or P2 ashes before generation 32 are ignored.
- Soups that haven't settled to P1 or P2 ashes by generation 160 are ignored.
- Escaping gliders were not removed, so soups with an escaping glider are considered to not have settled.
- It turned out to not be very important to filter on bounding box or population of the final ashes, so I haven't done that.
- The entire resulting ash field is normalized to a canonical state. This includes moving, turning, mirroring and selecting one of the two possible phases for P2 ashes.
- The results are counted and sorted by occurrence.

It would probably be a good idea to have the option to detect and remove escaping gliders, because we're interested to find out what ashes are left by common small reactions that emit a glider and leave some debris. I'll add that option when I get a chance.

These are results with at least 1000 occurrences from running 10 million soups like that:

Code: Select all

These ashes occurred 340368 times:
....
....
....
....

These ashes occurred 248424 times:
......
......
..@@..
..@@..
......
......

These ashes occurred 169562 times:
.......
.......
...@...
..@.@..
..@.@..
...@...
.......
.......

These ashes occurred 157555 times:
.....
.....
..@..
..@..
..@..
.....
.....

These ashes occurred 119888 times:
.................
.................
........@........
.......@.@.......
.......@.@.......
........@........
.................
...@@.......@@...
..@..@.....@..@..
...@@.......@@...
.................
........@........
.......@.@.......
.......@.@.......
........@........
.................
.................

These ashes occurred 117012 times:
.............
.............
......@......
......@......
......@......
.............
..@@@...@@@..
.............
......@......
......@......
......@......
.............
.............

These ashes occurred 72936 times:
..............
..............
..........@@..
......@@..@@..
......@@......
..............
..............
..............
..............
..............
..............
..............
..............
..............
..............
..............
..............
..............
..............
..............
..............
..............
......@@......
..@@..@@......
..@@..........
..............
..............

These ashes occurred 69825 times:
........
........
...@....
..@.@...
..@..@..
...@@...
........
........

These ashes occurred 60314 times:
..................
..................
..@@....@@...@@...
..@@....@@...@@...
..................
..................
..................
..................
..................
..................
..................
..................
..................
..................
..................
..................
..................
...............@..
...............@..
...............@..
..................
..................

These ashes occurred 51580 times:
.......
.......
...@...
..@.@..
...@@..
.......
.......

These ashes occurred 15839 times:
.............
.............
...@@........
..@..@.......
...@@........
.............
.............
.........@...
........@.@..
........@.@..
.........@...
.............
.............

These ashes occurred 14793 times:
.......
.......
...@...
..@.@..
...@...
.......
.......

These ashes occurred 14474 times:
.........
.........
..@......
..@......
..@......
.........
....@@@..
.........
.........

These ashes occurred 12686 times:
........
........
...@@...
..@..@..
..@..@..
...@@...
........
........

These ashes occurred 12115 times:
.........
.........
......@..
......@..
......@..
.........
..@@@....
.........
......@..
......@..
......@..
.........
.........

These ashes occurred 10801 times:
............
............
..@@.@@.....
..@@.@@.....
............
............
............
............
............
............
........@@..
........@@..
............
............

These ashes occurred 10593 times:
...........
...........
......@@@..
...........
...........
...........
...........
...........
...........
..@........
..@........
..@........
...........
...........

These ashes occurred 10041 times:
......
......
..@@..
..@@..
......
..@@..
..@@..
......
......

These ashes occurred 7881 times:
.......
.......
...@@..
...@@..
.......
.......
...@...
..@.@..
..@.@..
...@...
.......
.......

These ashes occurred 7109 times:
...........
...........
....@@@....
...........
..@.....@..
..@.....@..
..@.....@..
...........
...........
...........
...........
..@.....@..
..@.....@..
..@.....@..
...........
....@@@....
...........
...........

These ashes occurred 6674 times:
..........
..........
......@@..
......@@..
..........
..........
..........
..........
..........
..........
..........
..@@@.....
..........
..........

These ashes occurred 6539 times:
.............
.............
....@@.......
....@@.......
.............
.............
.............
.............
.............
.............
.............
.........@...
...@....@.@..
..@.@...@.@..
..@..@...@...
...@@........
.............
.............

These ashes occurred 6201 times:
................
................
......@@........
......@@.....@..
.............@..
.............@..
..@@............
..@@....@@......
.......@.@......
.......@@.......
................
................
................
...@@@..........
................
................

These ashes occurred 5548 times:
.......
.......
..@@...
..@.@..
...@@..
.......
.......

These ashes occurred 4383 times:
.......
.......
...@...
...@...
...@...
.......
.......
.......
.......
.......
.......
...@...
..@.@..
...@@..
.......
.......

These ashes occurred 4291 times:
........
........
...@....
..@.@...
...@.@..
....@@..
........
........

These ashes occurred 3958 times:
.............
.............
......@......
......@......
......@......
.............
..@@@...@@@..
.............
......@......
......@......
......@......
.............
.............
....@.....@..
....@.....@..
....@.....@..
.............
......@@@....
.............
.............

These ashes occurred 3955 times:
............
............
...@@.......
..@..@......
...@@...@...
.......@.@..
.......@.@..
........@...
............
............

These ashes occurred 3886 times:
..................
..................
..............@...
.............@.@..
.............@.@..
..............@...
..................
..................
..................
..................
..................
..................
..................
...@@.............
..@..@............
...@@.............
..................
..................

These ashes occurred 3737 times:
..............
..............
......@@......
.....@.@......
.....@@.......
...@@.........
..@.@.....@@..
..@@.....@.@..
.........@@...
.......@@.....
......@.@.....
......@@......
..............
..............

These ashes occurred 3701 times:
.................
.................
...@@.......@@...
..@..@.....@..@..
...@@.......@@...
.................
........@........
.......@.@.......
.......@.@.......
........@........
.................
.................

These ashes occurred 3697 times:
.......
.......
..@@...
..@@...
.......
.......
...@@..
...@@..
.......
.......

These ashes occurred 3594 times:
..............
..............
...@@.........
..@..@........
...@.@........
....@.....@...
.........@.@..
........@..@..
.........@@...
..............
..............

These ashes occurred 3582 times:
......
......
..@@..
..@@..
......
......
......
..@@..
..@@..
......
......

These ashes occurred 3573 times:
................
................
............@...
...........@.@..
............@@..
................
................
................
................
................
................
................
................
................
...@............
..@.@...........
...@@...........
................
......@.........
.....@.@........
.....@@.........
................
................

These ashes occurred 3563 times:
...........
...........
..@@.......
..@@...@@..
.......@@..
...........
...........

These ashes occurred 3278 times:
....................
....................
...@................
..@.@...............
..@.@..........@@@..
...@................
....................
....................

These ashes occurred 3277 times:
................
................
...........@....
..........@.@...
..........@.@...
...........@....
...@@...........
..@..@..........
...@@...........
................
................
................
...........@....
..........@.@...
..........@..@..
...........@@...
................
................

These ashes occurred 3173 times:
.........................
.........................
.........@...............
........@.@..............
........@.@..............
.........@...............
.........................
.........................
.........................
.........................
.........................
.........................
.....................@@..
.....................@@..
.........................
.........................
..@@.....................
..@@.....................
.........................
................@@@......
.........................
.........................

These ashes occurred 3102 times:
.........
.........
..@@.....
..@@.....
......@..
......@..
......@..
.........
.........

These ashes occurred 2976 times:
......
......
..@...
..@...
..@...
......
......
......
..@@..
..@@..
......
......

These ashes occurred 2914 times:
.......
.......
...@...
..@.@..
...@...
.......
.......
.......
.......
...@@..
...@@..
.......
.......

These ashes occurred 2893 times:
..............
..............
....@.........
...@.@........
..@..@...@@...
...@@...@..@..
........@.@...
.........@....
..............
..............

These ashes occurred 2893 times:
..........
..........
..@@@.....
..........
......@...
.....@.@..
.....@.@..
......@...
..........
..........

These ashes occurred 2881 times:
........
........
..@@....
..@@....
........
........
........
....@@..
....@@..
........
........

These ashes occurred 2835 times:
........
........
..@@....
..@@....
........
........
........
...@@@..
........
........

These ashes occurred 2803 times:
.........
.........
..@@.....
..@@.....
.........
.........
.....@@..
.....@@..
.........
.........

These ashes occurred 2762 times:
..........
..........
......@@..
......@@..
..@@......
..@@......
..........
..........

These ashes occurred 2465 times:
................
................
........@.......
.......@.@......
.......@.@......
........@.......
................
...@@.......@@..
..@..@......@@..
...@@...........
................
................

These ashes occurred 2461 times:
.......
.......
...@@..
...@@..
.......
.......
.......
..@@@..
.......
.......

These ashes occurred 2454 times:
...................
...................
..@@...............
..@@...............
..............@@...
..............@@...
...................
...................
...................
................@..
................@..
................@..
............@@.....
...........@..@....
............@@.....
...................
...................

These ashes occurred 2409 times:
...............................
...............................
......@@.......................
......@@.......................
...............................
...............................
...............................
...........................@...
..........................@.@..
..@@......................@.@..
..@@.......................@...
...............................
...............................

These ashes occurred 2369 times:
............
............
........@@..
........@@..
..@@........
..@@........
............
............

These ashes occurred 2365 times:
..............
..............
..@@..........
..@@..........
..............
..............
..............
..............
..........@@..
..........@@..
..............
..............

These ashes occurred 2363 times:
.........
.........
...@.....
..@.@....
..@.@....
...@.....
.........
.....@@..
.....@@..
.........
.........

These ashes occurred 2348 times:
.......
.......
..@....
..@....
..@....
.......
.......
.......
...@@..
...@@..
.......
.......

These ashes occurred 2310 times:
......
......
..@@..
..@@..
......
......
..@@..
..@@..
......
......

These ashes occurred 2287 times:
.................
.................
........@@.......
........@@.......
.................
.................
.................
........@........
.......@.@.......
.......@.@.......
........@........
.................
...@@.......@@...
..@..@.....@..@..
...@@.......@@...
.................
........@........
.......@.@.......
.......@.@.......
........@........
.................
.................

These ashes occurred 2245 times:
...................
...................
............@@@....
...................
...@@.....@.....@..
..@..@....@.....@..
...@@.....@.....@..
...................
........@...@@@....
.......@.@.........
.......@.@.........
........@..........
...................
...................

These ashes occurred 2231 times:
.........
.........
....@@...
...@..@..
....@@...
.........
.........
..@@.....
..@@.....
.........
.........

These ashes occurred 2225 times:
..........
..........
..@@......
..@@......
..........
..........
......@@..
......@@..
..........
..........

These ashes occurred 2205 times:
................................
................................
.......................@@@......
................................
................................
............................@...
...........................@.@..
...........................@.@..
............................@...
................................
................................
...@............................
..@.@..........@@@..............
...@@...........................
................................
................................
................................
..........@.....................
.........@.@....................
.........@.@....................
..........@.....................
................................
................................

These ashes occurred 2182 times:
...............................
...............................
........................@......
........................@......
........................@......
...............................
..........@.........@@@...@@@..
..........@....................
..........@.............@......
...@@...................@......
..@.@...................@......
...@...........................
..........@....................
..........@....................
..........@....................
...............................
...............................
...............................
...........@@..................
...........@.@......@@.........
............@.......@@.........
...............................
...............................

These ashes occurred 2181 times:
.........
.........
.....@@..
.....@@..
.........
.........
.........
.........
.........
.........
.........
.........
..@@.....
..@.@....
...@.....
.........
.........

These ashes occurred 2166 times:
............
............
..@@........
..@@........
............
........@@..
........@@..
............
............

These ashes occurred 2121 times:
.........
.........
..@@.....
..@@.....
.........
.........
.........
.....@@..
.....@@..
.........
.........

These ashes occurred 2105 times:
..............
..............
.......@@@....
..............
.....@.....@..
.....@.....@..
.....@.....@..
..............
.......@@@....
..@@..........
..@@..........
..............
..............

These ashes occurred 2085 times:
...........
...........
......@@@..
...........
..@@.......
..@@.......
...........
...........

These ashes occurred 2082 times:
........
........
...@@...
...@@...
........
........
........
...@@...
..@..@..
...@@...
........
........

These ashes occurred 2061 times:
................
................
..@.............
..@.............
..@.............
................
................
................
................
......@.........
......@.........
......@.........
............@@..
............@@..
................
................
........@@......
........@@......
................
................

These ashes occurred 2056 times:
........
........
..@@....
..@@....
........
........
........
........
........
...@@...
..@..@..
...@@...
........
........

These ashes occurred 2041 times:
............
............
...@........
..@.@.......
..@.@.......
...@........
............
.......@@...
......@..@..
.......@@...
............
...@@.......
..@..@......
...@@.......
............
............

These ashes occurred 2007 times:
.............
.............
......@......
......@......
......@......
.............
..@@@...@@@..
.............
......@......
......@......
......@......
.............
...@@........
...@@........
.............
.............

These ashes occurred 1969 times:
.........
.........
..@@.....
..@@.....
.........
.....@@..
.....@@..
.........
.........

These ashes occurred 1965 times:
.......
.......
...@@..
...@@..
.......
.......
.......
.......
..@@...
..@@...
.......
.......

These ashes occurred 1945 times:
.............
.............
...@@........
..@..@.......
...@@....@@..
.........@@..
.............
.............

These ashes occurred 1925 times:
.................
.................
.............@@..
.............@@..
.................
.................
.................
.................
.................
.................
...@.............
..@.@............
..@..@...........
...@@............
.................
.................

These ashes occurred 1924 times:
...........
...........
..@@.......
..@@.......
...........
...........
......@@@..
...........
...........

These ashes occurred 1910 times:
.........
.........
.....@@..
.....@@..
.........
.........
.........
..@......
..@......
..@......
.........
.........

These ashes occurred 1842 times:
............
............
.........@..
.........@..
.........@..
...@@.......
..@..@......
...@.@......
....@.......
............
............

These ashes occurred 1829 times:
............
............
...@........
..@.@.......
..@.@...@@..
...@....@@..
............
............

These ashes occurred 1827 times:
.........
.........
....@@@..
.........
.........
.........
.........
.........
..@@.....
..@@.....
.........
.........

These ashes occurred 1750 times:
................
................
....@@@.........
................
..@.....@.......
..@.....@.......
..@.....@.......
................
....@@@.....@@..
............@@..
................
................

These ashes occurred 1743 times:
...........
...........
..@@.......
..@@.......
...........
.......@...
......@.@..
......@.@..
.......@...
...........
...........

These ashes occurred 1742 times:
.........................
.........................
.....................@...
....................@.@..
....................@.@..
.....................@...
..@@.....................
..@@.....................
.........................
.........................

These ashes occurred 1733 times:
........................
........................
................@@......
....@@@........@..@.....
................@@......
..@.....@...............
..@.....@..........@@@..
..@.....@...............
................@@......
....@@@........@..@.....
................@@......
........................
........................

These ashes occurred 1727 times:
........
........
....@@..
....@@..
........
........
........
..@.....
..@.....
..@.....
........
........

These ashes occurred 1710 times:
........
........
..@@@...
........
........
........
........
........
....@@..
....@@..
........
........

These ashes occurred 1705 times:
..........
..........
......@@..
......@@..
..........
...@......
..@.@.....
..@.@.....
...@......
..........
..........

These ashes occurred 1697 times:
...................
...................
..@.............@..
..@.............@..
..@.............@..
...................
...................

These ashes occurred 1681 times:
...........
...........
..@@.......
..@@.......
...........
...........
.......@@..
.......@@..
...........
...........

These ashes occurred 1680 times:
..........
..........
..@.......
..@.......
..@.......
..........
..........
..........
......@@..
......@@..
..........
..........

These ashes occurred 1679 times:
........
........
..@@....
..@@....
........
........
........
........
........
....@@..
....@@..
........
........

These ashes occurred 1669 times:
.............
.............
.........@@..
..@@.....@@..
..@@.........
.............
.............

These ashes occurred 1659 times:
................
................
..@@............
..@@............
................
................
............@...
...........@.@..
...........@.@..
............@...
................
................

These ashes occurred 1651 times:
........
........
....@...
..@..@..
..@..@..
...@....
........
........

These ashes occurred 1603 times:
............
............
.........@..
..@@.....@..
..@@.....@..
............
............

These ashes occurred 1586 times:
.............................
.............................
..@@.....................@@..
..@@.....................@@..
.............................
.............................
.............................
.............................
...........@@...@@...........
..........@..@.@..@..........
...........@@...@@...........
.............................
.............................

These ashes occurred 1563 times:
........
........
....@...
...@.@..
...@.@..
....@...
........
........
..@@....
..@@....
........
........

These ashes occurred 1529 times:
.........
.........
......@..
......@..
......@..
...@.....
..@.@....
..@..@...
...@@....
.........
.........

These ashes occurred 1509 times:
...........
...........
..@@.......
..@@.......
...........
...........
...........
...........
...........
...........
...........
......@@@..
...........
...........

These ashes occurred 1494 times:
.............
.............
......@......
......@......
......@......
.............
..@@@...@@@..
.............
.............
.............
.............
.............
.............
.............
.............
...@@........
...@@........
.............
.............

These ashes occurred 1464 times:
...........
...........
..@@@......
...........
...........
...........
...........
...........
.......@@..
.......@@..
...........
...........

These ashes occurred 1464 times:
.............
.............
..@......@@..
..@......@@..
..@..........
.............
.............

These ashes occurred 1463 times:
..........
..........
...@......
..@.@.....
..@.@.....
...@......
......@@..
......@@..
..........
..........

These ashes occurred 1461 times:
...........
...........
...@.......
..@.@......
..@.@..@@..
...@...@@..
...........
...........

These ashes occurred 1457 times:
............
............
...@........
..@.@.......
..@.@.......
...@........
............
........@@..
........@@..
............
............

These ashes occurred 1437 times:
............
............
.......@@...
......@..@..
.......@@...
............
...@........
..@.@.......
..@.@.......
...@........
............
............

These ashes occurred 1434 times:
.............
.............
......@......
......@......
......@......
.............
..@@@...@@@..
.............
......@......
......@......
......@......
.........@@..
.........@@..
.............
.............

These ashes occurred 1428 times:
..........
..........
..@.......
..@.......
..@.......
..........
..........
..........
..........
..........
......@@..
......@@..
..........
..........

These ashes occurred 1419 times:
.............
.............
.........@@..
.........@@..
.............
.............
.............
.............
.............
.............
...@@........
..@..@.......
...@@........
.............
.............

These ashes occurred 1404 times:
..........
..........
......@@..
......@@..
..........
..........
..........
..........
..@@......
..@@......
..........
..........

These ashes occurred 1402 times:
........
........
...@@@..
........
........
........
........
........
........
..@@....
..@@....
........
........

These ashes occurred 1385 times:
..................
..................
...........@@@....
..@@..............
..@@.....@.....@..
.........@.....@..
.........@.....@..
..................
...........@@@....
..................
..................

These ashes occurred 1368 times:
...........
...........
..@@.......
..@@.......
...........
...........
...........
...........
.......@@..
.......@@..
...........
...........

These ashes occurred 1354 times:
.............
.............
.........@@..
.........@@..
.............
.............
.............
..@@.........
..@@.........
.............
.............

These ashes occurred 1352 times:
..........
..........
..@@......
..@@......
..........
..........
..........
..........
..........
.....@@@..
..........
..........

These ashes occurred 1351 times:
................
................
...........@@@..
................
................
....@@....@.....
....@@...@.@....
........@..@....
.........@@.....
................
................
................
................
................
...@............
..@.@...........
...@............
................
................

These ashes occurred 1339 times:
............
............
...@@.......
..@..@......
...@@.......
............
........@@..
........@@..
............
............

These ashes occurred 1330 times:
...............
...............
..@@@..........
...............
...........@@..
...........@@..
...............
...............

These ashes occurred 1326 times:
.......
.......
...@@..
...@@..
.......
.......
.......
.......
.......
.......
.......
.......
.......
.......
.......
.......
.......
.......
.......
.......
.......
..@....
..@....
..@....
.......
.......

These ashes occurred 1313 times:
.........
.........
.....@@..
.....@@..
.........
.........
.........
.........
.........
..@@.....
..@@.....
.........
.........

These ashes occurred 1312 times:
.............
.............
...@.........
..@.@........
..@.@....@@..
...@.....@@..
.............
.............

These ashes occurred 1308 times:
.......
.......
..@@@..
.......
.......
.......
.......
.......
.......
.......
...@@..
...@@..
.......
.......

These ashes occurred 1299 times:
................
................
.........@......
.........@......
.........@......
................
.....@@@...@@@..
................
.........@......
..@@.....@......
..@@.....@......
................
................

These ashes occurred 1290 times:
.............
.............
...@@....@@..
..@..@...@@..
...@@........
.............
.............

These ashes occurred 1287 times:
.........
.........
.....@@..
.....@@..
.........
.........
.........
.........
.........
..@......
..@......
..@......
.........
.........

These ashes occurred 1270 times:
...............
...............
..@............
..@............
..@........@@..
...........@@..
...............
...............

These ashes occurred 1270 times:
...........
...........
..@........
..@........
..@........
...........
...........
...........
...........
.......@@..
.......@@..
...........
...........

These ashes occurred 1265 times:
.............
.............
......@......
......@......
......@......
...@.....@...
..@.@...@.@..
..@.@...@.@..
...@.....@...
.............
.....@@......
.....@@......
.............
.............

These ashes occurred 1258 times:
.........
.........
....@@@..
.........
.........
.........
.........
.........
.........
..@@.....
..@@.....
.........
.........

These ashes occurred 1248 times:
................
................
.........@......
........@.@.....
........@.@.....
.........@......
................
................
........@@......
........@@......
................
................
................
................
................
................
................
................
............@@..
....@@@.....@@..
................
..@.....@.......
..@.....@.......
..@.....@.......
................
....@@@.........
................
................

These ashes occurred 1245 times:
..........
..........
..@@@.....
..........
..........
......@@..
......@@..
..........
..........

These ashes occurred 1239 times:
...............
...............
..@............
..@........@@..
..@........@@..
...............
...............

These ashes occurred 1231 times:
.........
.........
..@@.....
..@@.....
.........
.........
.........
.........
.........
.........
.....@@..
.....@@..
.........
.........

These ashes occurred 1218 times:
...........
...........
..@@.......
..@@.......
.......@...
......@.@..
......@.@..
.......@...
...........
...........

These ashes occurred 1218 times:
..............
..............
..@@..........
..@@..........
..........@@..
..........@@..
..............
..............

These ashes occurred 1215 times:
.........
.........
..@@.....
..@@.....
.........
.........
.....@...
....@.@..
....@.@..
.....@...
.........
.........

These ashes occurred 1213 times:
...............
...............
...........@@..
...........@@..
..@@...........
..@@...........
...............
...............

These ashes occurred 1210 times:
.................
.................
..........@......
..........@......
..........@......
.................
..@@..@@@...@@@..
..@@.............
..........@......
..........@......
..........@......
.................
.................

These ashes occurred 1208 times:
............
............
........@...
..@@@..@.@..
.......@.@..
........@...
............
............

These ashes occurred 1207 times:
............
............
...@........
..@.@.......
..@@........
............
............
............
............
............
............
............
............
............
............
........@@..
........@@..
............
............

These ashes occurred 1205 times:
.................
.................
......@......@...
......@.....@.@..
......@.....@.@..
.............@...
..@@@...@@@......
.................
......@..........
......@..........
......@..........
.................
.................

These ashes occurred 1204 times:
.................
.................
........@........
.......@.@.......
.......@.@.......
........@........
.................
...@@.......@@...
..@..@.....@..@..
...@@.......@@...
.................
........@........
.......@.@.......
.......@.@.......
........@...@@...
............@@...
.................
.................

These ashes occurred 1202 times:
.................
.................
......@..........
......@......@@..
......@......@@..
.................
..@@@...@@@......
.................
......@..........
......@..........
......@..........
.................
.................

These ashes occurred 1196 times:
.................
.................
........@........
.......@.@.......
.......@.@.......
........@........
.................
...@@.......@@...
..@..@.....@..@..
...@.@......@@...
....@............
.......@@........
......@..@.......
.......@.@.......
........@........
.................
.................

These ashes occurred 1194 times:
..............
..............
......@@......
.....@..@.....
......@.@.....
...@...@.@@...
..@.@...@..@..
..@..@...@.@..
...@@.@...@...
.....@.@......
.....@..@.....
......@@......
..............
..............

These ashes occurred 1181 times:
..............
..............
..@@..........
..@@......@@..
..........@@..
..............
..............

These ashes occurred 1173 times:
................
................
............@@..
............@@..
..@@............
..@@............
................
................

These ashes occurred 1166 times:
................
................
......@.........
......@.........
......@.........
................
..@@@...@@@.....
................
......@.........
......@.........
......@......@..
.............@..
.............@..
................
.........@@@....
................
................

These ashes occurred 1140 times:
...............
...............
...@...........
..@.@..........
..@.@..........
...@...........
...........@...
..........@.@..
...........@...
...............
...............

These ashes occurred 1133 times:
..........
..........
......@@..
......@@..
..........
..........
..........
..........
..........
..@@......
..@@......
..........
..........

These ashes occurred 1133 times:
............
............
..@@........
..@@....@...
.......@.@..
.......@.@..
........@...
............
............

These ashes occurred 1115 times:
................
................
.........@@@....
................
.......@.....@..
.......@.....@..
..@@...@.....@..
..@@............
.........@@@....
................
................

These ashes occurred 1111 times:
.............
.............
.........@@..
.........@@..
.............
.............
.............
..@..........
..@..........
..@..........
.............
.............

These ashes occurred 1104 times:
.......
.......
..@....
..@....
..@....
.......
.......
.......
.......
.......
.......
...@@..
...@@..
.......
.......

These ashes occurred 1103 times:
.............
.............
...@.........
..@.@........
..@.@........
...@.........
........@@...
.......@..@..
........@@...
.............
.............

These ashes occurred 1103 times:
............
............
..@@........
..@@........
............
............
............
............
............
........@@..
........@@..
............
............

These ashes occurred 1102 times:
.........
.........
.....@...
....@.@..
....@.@..
.....@...
.........
.........
.........
.........
..@@.....
..@@.....
.........
.........

These ashes occurred 1097 times:
......................
......................
........@.............
.......@.@............
.......@.@............
........@........@@...
................@..@..
...@@............@.@..
..@..@............@...
...@@.........@@......
.............@..@.....
........@.....@.@.....
.......@.@.....@......
.......@.@............
........@.............
......................
......................

These ashes occurred 1095 times:
.................
.................
..@@.............
..@@.............
.................
.................
.................
.................
.................
.................
.................
.............@@..
.............@@..
.................
.................

These ashes occurred 1084 times:
..............
..............
..@@..........
..@@..........
..............
..............
..........@@..
..........@@..
..............
..............

These ashes occurred 1076 times:
.......
.......
...@...
..@.@..
..@.@..
...@...
.......
.......
.......
.......
..@@...
..@@...
.......
.......

These ashes occurred 1071 times:
.............
.............
..........@..
..........@..
..........@..
.............
.............
.............
.............
.............
..@@.........
..@.@........
...@.........
.............
.............

These ashes occurred 1071 times:
........
........
....@@..
.....@..
..@.....
..@@....
........
........

These ashes occurred 1060 times:
...........
...........
..@.....@..
..@.....@..
..@.....@..
...........
...........

These ashes occurred 1058 times:
.............
.............
.........@@..
.........@@..
...@@........
..@..@.......
...@@........
.............
.............

These ashes occurred 1044 times:
...............
...............
...........@@..
...........@@..
...............
...............
...............
...............
..@@@..........
...............
...............

These ashes occurred 1042 times:
................
................
..@@............
..@@............
................
...........@@@..
................
................

These ashes occurred 1035 times:
......
......
..@@..
..@@..
......
......
......
......
..@@..
..@@..
......
......

These ashes occurred 1030 times:
.................
.................
....@@@..........
.................
..@.....@....@@..
..@.....@....@@..
..@.....@........
.................
....@@@..........
.................
.................

These ashes occurred 1019 times:
..........
..........
......@@..
......@@..
..........
..........
..........
..........
..........
..........
..........
..@@......
..@@......
..........
..........

These ashes occurred 1007 times:
...............
...............
..@@...........
..@@...........
...............
...........@@..
...........@@..
...............
...............

These ashes occurred 1007 times:
...........
...........
...@.......
..@.@......
..@.@......
...@.......
...........
...........
.......@@..
.......@@..
...........
...........

These ashes occurred 1006 times:
............
............
.......@....
......@.@...
......@..@..
..@@...@@...
..@@........
............
............

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

Re: New construction arms

Post by dvgrn » January 7th, 2016, 12:15 am

simeks wrote:I made a soup search like I suggested above, and I think the result is pretty interesting, no matter how useful it will turn out to be in single-lane construction.
Looks good! Glad I didn't discourage you from doing the survey.

One minor item about the object counts that occurs to me -- probably obvious, but here goes anyway. The highly symmetrical objects probably deserve their high counts, but objects with only one orthogonal line of symmetry, or 180-degree rotational symmetry only, might be more accurately represented in the list if their counts were cut in half. Completely asymmetric constellations might similarly be reduced to a fourth of their count -- because the orientation of the elbow matters. Except for diagonal reflections across the construction lane, two different orientations of an object might as well be two completely different objects.

Of course, if you translate an object one cell to the right or left it also becomes a completely different object, at least from an elbow-operation point of view.

But what should be done to correct the rating for objects like loaves, with one diagonal line of reflection? There are three equivalence classes in that case -- a sideways loaf will probably turn up twice as often as a loaf pointing toward the glider source, or away from the glider source. Maybe just divide the count by three and call that close enough.

So what do you plan for a next step? Progressively deeper searches starting from the top twenty of the objects in your list, or something like that? Maybe it will turn out that a good fraction of them can be converted into each other, if you pick a properly explosive position relative to the construction lane.

-------------------------------------------

It just occurred to me that a block in the turns-to-honeyfarm position (instead of the pi-explosion position) might be a solution to the elbow-duplication problem. Just send even-parity gliders at p90 (or whatever) to make a crystal. Run it long enough and you get as much material for duplicated elbows as you want. It's possible to break out of the crystal by sending an odd-parity glider at the traffic-light stage. That makes a nice pi explosion, which can be adjusted to do various things:

Code: Select all

x = 398, y = 399, rule = LifeHistory
391.A$390.A.A$390.A.A$391.A2$395.2A$394.A2.A$395.2A3$382.A$381.A.A$
381.A.A$382.A2$386.2A$385.A2.A$386.2A2$374.A$373.A.A$373.A.A$374.A13$
361.2A$362.2A$361.A20$339.A$339.2A$338.A.A21$316.2A$317.2A$316.A20$
294.A$294.2A$293.A.A21$271.2A$272.2A$271.A20$249.A$249.2A$248.A.A21$
226.2A$227.2A$226.A20$204.A$204.2A$203.A.A21$181.2A$182.2A$181.A20$
159.A$159.2A$158.A.A21$136.2A$137.2A$136.A20$114.A$114.2A$113.A.A21$
91.2A$92.2A$91.A20$69.A$69.2A$68.A.A21$46.2A$47.2A$46.A21$23.3A$25.A$
24.A21$2A$.2A$A!
That puts the crystal in collapse mode, which also has a p2 stage (a blinker) that can be hit with an odd-parity glider to make a possibly workable explosion.

If one blinker, or a blinker plus one pair of beehives from the crystal, or some similar sub-constellation can be converted into a clean Known Elbow, then it might work pretty well to build a long crystal, then split off another elbow from it whenever a long PUSH is needed.

Still definitely an optional investigation... but if a clean way to stop crystal growth and get back to a Known Elbow can be found, then we'll have a way to get back to an elbow whenever any of the eleven stages in the crystal-building chain show up. Seems like that could be a good thing.

simeks
Posts: 401
Joined: March 11th, 2015, 12:03 pm
Location: Sweden

Re: New construction arms

Post by simeks » January 9th, 2016, 1:08 pm

@dvgrn:

I'm reading your three last posts very caryfully to try to think straight about all this. I may have more comments later...

I think it will be meaningful to do all of these three things that we've already suggested:

- Have a list of the end results of small common reactions, that are likely to show up in fundamentally different ways. This is what I'm trying to adress with my soup search as discussed before.

On a side-note unrelated to elbow recipes: It would be interesting to find out what the most common predecessor is of each of the results of my soup search. Except for the most generic results, like two blocks close to each other, it seems likely that each result is connected to a small common predecessor.

I'm not very concerned about keeping this list small. We'll insert all orientations of them in a hash table before starting the search, so having a long list won't really hurt performance much.

I think it would be interesting to get to know about it, whenever such a result showed up, and then we can worry later about if it seems worth it to do a deep search with that as a starting point.

- Have a list of intermediate points in known useful recipes. Branching points are the most important, but it doesn't have to be limited to that. The only problem is that the list needs to be updated every time a new recipe is discovered -- I guess it could be automated some way. These would be inserted in the hash table too.

- Report any intemediate result that fit in a small bounding box. This of course is because shouting more gliders at it have a higher probability to reach all objects in the ashes than intermediate results with a bigger bounding box. We could then look at these and decide if it looks promising enough ta start a new search from that staring point.
dvgrn wrote: I'm not quite sure about that. We could try to do deep searches from millions of potential elbows. Maybe we'll find that 99.9% of those searches end at depth 1, because no matter what glider you send second, the reaction always explodes or vanishes or makes a constellation that's bigger than our arbitrary threshold. Then we only have thousands of deep searches to run, and we can choose a meaning of "deep" to allow for a manageable total workload.
I might have not been very clear about what I meant. We will already try to deepen the search from millions of potential elbows as part of the regular search, at least as far as internal memory can hold (maybe a hundred million). For each additional glider at 90+ distance, the number of stable results seems to increase by something like a factor of 3. That means at least 10% of tested salvos create a new potiential elbow. Which is lucky, because if the number of results decreased with each new glider, we'd quickly run out of things to do...

What I meant was more like, can we use some good principles to pick out a few results that would be meaningful to start new deep searches from. And I guess the three ways I mentioned above are indeed possible ways to do that. Maybe we can think of more ways?
Scorbie wrote:Would the code in this project:
viewtopic.php?f=9&t=1296&p=10975&hilit=sscs#p10693
https://github.com/jukaiser/sscs/tree/v0.4.0
Thanks for the links, I took a look at this.

So far, as acknowledged by the author, this project uses a pretty straight-forward way to evolve patterns.

The code I had already written was a bit more efficient, and I already had most components I needed to put together the soup searcher, so I just did ;)

So far, I use a byte grid for cells, and an additional smaller "tile map", where each byte corresponds to a 8-by-8 tile of the cell grid, and simply tells if that part of the grid is empty or not.

The evolve function processes 8 cells in parallel, by using 64-bit integers, and has no conditional statements in the inner loop (conditionals are very expensive if the condition depends on something that is essentially random, like cell states).

I could have used simsim314's LifeAPI, but I really don't see how a 64-by-64 tile would be enough for this search.

Maybe I'll start battling with bit fields and 64 cells parallel evolution eventually, it would probably be at least 3 times faster.
dvgrn wrote: So what do you plan for a next step?
Now when the holidays are over, each step will take much more time...

My search program still doesn't know that the distance from the previous glider doesn't matter (except for the P2 phase), if the target is already stable when the next glider starts reacting with it. When that logic is in place, it will gain a lot of speed.
dvgrn wrote: It just occurred to me that a block in the turns-to-honeyfarm position (instead of the pi-explosion position) might be a solution to the elbow-duplication problem. Just send even-parity gliders at p90 (or whatever) to make a crystal.
This is interesting, but it also gave me an idea for a fast adjustable elbow duplicator. It uses a recipe with a return glider that collides with the input stream. I found it with chris_c's script, and I assumed it's wouldn't be very useful.

For it to work, we need a way to get from a honeyfarm in the "crystal" position, to a block. I'm searching for one, and it looks possible, but not very easy.

To show this idea, I'm cheating and using a recipe with minimum distance 49 ticks to get from a honeyfarm to a block:

Code: Select all

x = 2097, y = 2101, rule = LifeHistory
2095.2E$2095.2E26$2071.2A$2072.2A$2071.A25$2044.2A$2043.A.A$2045.A51$
1991.2A$1992.2A$1991.A21$1968.A$1968.2A$1967.A.A55$1911.3A$1913.A$
1912.A20$1889.A$1889.2A$1888.A.A56$1831.3A$1833.A$1832.A20$1809.A$
1809.2A$1808.A.A56$1751.2A$1752.2A$1751.A21$1728.3A$1730.A$1729.A183$
1543.3E$1542.3BE$1542.2BE$1543.B102$1438.2C$1437.C.C$1439.C10$1426.C$
1426.2C$1425.C.C66$1358.2C$1357.C.C$1359.C10$1346.C$1346.2C$1345.C.C
66$1278.2C$1277.C.C$1279.C13$1263.C$1263.2C$1262.C.C63$1198.2C$1197.C
.C$1199.C13$1183.C$1183.2C$1182.C.C126$1055.2A$1056.2A$1055.A25$1028.
2A$1027.A.A$1029.A51$975.2A$976.2A$975.A21$952.A$952.2A$951.A.A55$
895.3A$897.A$896.A78$815.2A$816.2A$815.A29$784.2A$785.2A$784.A47$735.
3A$737.A$736.A24$709.2A$710.2A$709.A52$655.2A$656.2A$655.A24$629.A$
629.2A$628.A.A52$575.2A$576.2A$575.A25$548.2A$549.2A$548.A95$451.3E$
453.E$452.E25$424.2E$425.2E$424.E20$402.E$402.2E$401.E.E22$378.3E$
380.E$379.E20$356.E$356.2E$355.E.E21$333.2E$334.2E$333.E20$311.E$311.
2E$310.E.E21$288.2E$289.2E$288.E126$160.3C$162.C$161.C28$130.2C$131.
2C$130.C48$80.3C$82.C$81.C20$58.C$58.2C$57.C.C56$2C$.2C$C!

Post Reply