Static tape linear replicator (Gargoyle)

For discussion of specific patterns or specific families of patterns, both newly-discovered and well-known.
Post Reply
User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Static tape linear replicator (Gargoyle)

Post by simsim314 » July 2nd, 2017, 4:11 am

I was thinking about simplistic design that could work with static tape - it's sort of simplified caterloopillar, as they work with static tape as well.

If we have a reading head consisted of *WSS that converts SL->SL + backward *WSS that also moves a SL by DX, DY (instead of SL -> glider as in caterloopillars), and single channel recipes that allow to code single *WSS stream into arm operations. Then we can dry out the reading head and construct it DX, DY cells from the previous reading head.

All we need is:

1. Reading head consisted of *WSS that converts SL->SL (DX,DY) + backward *WSS.
2. Single channel *WSS arm recipes.
3. Drying out reading head.

All the steps look doable enough.
Last edited by simsim314 on July 4th, 2017, 5:44 pm, edited 2 times in total.

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

Re: Static tape Gemini

Post by Kazyan » July 2nd, 2017, 4:35 am

So if I'm picturing this idea correctly, it looks something like this:

Code: Select all

x = 147, y = 57, rule = LifeHistory
22.2D$22.2D15$22.2C$22.2C5$13.5D17.5D10.5D9.5D$.2D10.D4.D16.D4.D9.D4.
D8.D4.D$.2D10.D21.D14.D13.D$14.D3.D17.D3.D10.D3.D9.D3.D$16.D21.D14.D
13.D$4.2D$3.D.D8.4B$.3D.D.D5.4B$D5.2D4.4B$2D9.4B$10.4B$9.4B$8.4B$7.5B
.B.B$5.13B$2.B.9B5C17.5C10.5C9.5C$.2C10BC4BC16.C4BC9.C4BC8.C4BC32.D7.
D6.D11.D6.D$.2C10BC3B18.C3B11.C3B10.C3B33.D.D5.D.D4.D.D9.D.D4.D.D$2.B
2.9BC2B.C16.BC2B.C9.BC2B.C8.BC2B.C31.D.D5.D.D4.D.D9.D.D4.D.D4.D.D.D$
4.2B2.B.B.B.B.C19.B.C12.B.C11.B.C34.D7.D6.D11.D6.D$4.2CB$3.C.C$.3C.C.
C$C5.2C$2C7$102.C7.C6.C11.C6.C$101.C.C5.C.C4.C.C9.C.C4.C.C$101.C.C5.C
.C4.C.C9.C.C4.C.C4.C.C.C$102.C7.C6.C11.C6.C!
...Where the beehives represent the static tape, the MWSS represents the backwards *WSS stream, and the block represents an elbow for single-channel. The single-channel stream proceeds to construct a new reading head at the proper displacement, the new reading head goes off at c/2 to process the instructions again, and the cycle repeats.

The loose end in this design is that the reading heads will fly off into the void (to the east) once they're beyond the reading tape, which makes this geminoid a rake instead of a spaceship. But for orthogonal designs, that could be plugged by simply pointing two mirror-imaged copies at each other and having their reading heads annihilate. Add cleanup *WSSs to the back of each reading head as necessary.

Is this correct?
Tanner Jacobi
Coldlander, a novel, available in paperback and as an ebook. Now on Amazon.

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Static tape Gemini

Post by simsim314 » July 2nd, 2017, 4:51 am

Let me post my schematics:
Attachments
Static Gemini.png
Static Gemini.png (21.4 KiB) Viewed 6746 times

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Static tape Gemini

Post by simsim314 » July 2nd, 2017, 4:56 am

Kazyan wrote:The loose end in this design is that the reading heads will fly off into the void (to the east) once they're beyond the reading tape, which makes this geminoid a rake instead of a spaceship.
Reading head with self destruct is easy to achieve, check out caterloopillars (the negative helix is part of the reading head).

For example:

Code: Select all

x = 153, y = 621, rule = LifeHistory
6.C$5.C.C$5.C.C$6.C2$.2C7.2C$C2.C5.C2.C$.2C7.2C2$6.C$5.C.C$5.C.C$6.C
53$9.3C$9.C2.C$9.C$9.C3.C$9.C$10.C.C50$62.3C$62.C2.C$62.C$62.C$63.C.C
2$54.3C$53.C2.C$56.C$52.C3.C$56.C$53.C.C41$6.C$5.3C$4.2C.C$4.3C$4.3C$
5.2C44$96.C$95.3C$95.C.2C$96.3C$96.2C23$73.C$72.3C$72.C.2C$73.3C$73.
2C5$70.C$69.3C$69.C.2C$70.3C$70.2C53$133.C$132.C.C$132.C2.C$133.2C19$
124.3C$123.C2.C$126.C$122.C3.C$126.C$123.C.C24$142.C$141.3C$140.2C.C$
140.3C$140.3C$141.2C35$126.3C$126.C2.C$126.C$126.C3.C$126.C$127.C.C8$
144.3C$143.C2.C$146.C$146.C$143.C.C17$151.C$150.3C$149.2C.C$149.3C$
150.2C6$123.C$122.3C$121.2C.C$121.3C$122.2C60$82.C$81.3C$81.C.2C$82.
3C$82.3C$82.2C2$92.3C$91.C2.C$94.C$90.C3.C$94.C$91.C.C12$97.3C$97.C2.
C$97.C$97.C3.C$97.C$98.C.C63$143.3C$142.C2.C$145.C$141.C3.C$145.C$
142.C.C4$132.3C$131.C2.C$134.C$130.C3.C$130.C3.C$134.C$131.C.C!

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Static tape Gemini

Post by simsim314 » July 2nd, 2017, 5:25 am

As a side note: this design pattern could achieve any speed and direction if we use universal helices as follows:

1. Reading head convert SL -> vertical UH (universal helix) + *WSS dried horizontal UH, thus achieving any DX, DY in optimal time.
2. First we construct new construction unit SL at DX,DY using same trick as in 1 + move the construction unit by DY using another UH.
3. We construct at arbitrary DX,DY the new reading head.

Construction of the reading head is constant time while DX,DY can be arbitrary large (UH is quadratic while its construction is linear). Also the DX, DY we're talking about are ridiculously large, and the construction tape length is much smaller than the DX, DY yet this is still valid design pattern.

But drying out universal helix so that we could convert SL -> SL with arbitrary DX,DY is currently very futuristic. I think we should first focus on simplistic design, converting SL->SL (DX,DY) without any UH.

EDIT Maybe because of the robust size of the design the MWSS coding can't be done so easily, and we need to somehow use SL pairs, and two reading heads, so the coding MWSS would be at small distance, but the SLs themselves would be at large enough distance so they can be coded with two separated UH without collisions.

EDIT2 As a middle step we can only use arbitrary DX, so we will get arbitrary speed orthogonal ship, and then add horizontal UH.

User avatar
gmc_nxtman
Posts: 1150
Joined: May 26th, 2015, 7:20 pm

Re: Static tape Gemini

Post by gmc_nxtman » July 2nd, 2017, 9:29 am

I posted some Von Neumann-inspired musings about a static-tape replicator (I'm not sure if it any longer can be called a 'Geminoid') in the unsure discoveries thread, although they weren't particularly practical.

It might also be possible to make some sort of MWSS-splitter library, where each part of the tape is a one-time MWSS forward-and-backward splitter with a different mod-8 timing. That way, the single-channel recipe can be encoded directly in the tape instead of going through a binary decoder. Although it might be harder to make every possibility translatable by DX, DY, hopefully each splitter is a simple variation.

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Static tape Gemini

Post by simsim314 » July 2nd, 2017, 9:45 am

@gmc_nxtman I'm not sure I'm fully following your logic.

As for mod 8 problem, I think we should focus on entirely new MWSS pair coding which are same mod 8. There is an option like Kazyan pointed out to convert MWSS stream to glider stream, but on my opinion MWSS stream has more potential to code stuff than gliders. So a new recipe kit that makes block moves, and shoots gliders is needed, but this is not such a big deal - modifying simeks's arm search to MWSSs with same mod 8 state shouldn't be that hard. Statistically speaking, as the arm search tree growth exponentially - it shouldn't be more than 20% more expensive than the regular single channel glider coding.

Another question is how close together could two MWSS be located, and in my previous designs something like 40 ticks were sufficient, but we need more specific examples.

EDIT You're right it's not Gemini as it has no two sides of coding. Any name suggestions?

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Static tape Gemini

Post by simsim314 » July 4th, 2017, 4:33 am

Here is SL->back LWSS+glider+junk that looks promising:

Code: Select all

x = 21, y = 28, rule = B3/S23
4b2o$3b3o$3b2obo$4b3o$5bo6$17bobo$20bo$20bo$17bo2bo$18b3o8$bobo$o6b2o$
o3bobo2bo$o5bobo$o2bo3bo$3o!
EDIT I thought of a name: Gargoyle. This is basically evil winged humanoid lion that becomes alive during the night and made of stone during the day. This represents the dried reading head, which becomes alive only in the end, made of stone most of the time.

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Static tape linear replicator (Gargoyle)

Post by simsim314 » July 4th, 2017, 5:55 pm

Here is a prototype of the core part of the reading head. It converts SL->LWSS+glider and its minimal distance is 38 cells between SLs.

Code: Select all

x = 33, y = 283, rule = LifeHistory
5.C$5.C$5.C72$18.2C$17.3C$17.3C$17.3C$17.2C.C$18.3C$19.C6$16.2C$15.3C
$15.3C$15.3C$15.2C.C$16.3C$17.C39$.2C$3C$3C$3C$2C.C$.3C$2.C16$30.2C$
30.3C$30.3C$29.C.2C$29.3C$30.C20$8.2C$7.3C$7.2C.C$8.3C$9.C6$21.C.C$
24.C$24.C$21.C2.C$22.3C8$5.C.C$4.C6.2C$4.C3.C.C2.C$4.C5.C.C$4.C2.C3.C
$4.3C36$11.2C$10.C2.C$10.C.C$11.C35$11.2C$10.C2.C$10.C.C$11.C!
I now need to search for construction arm operations (push/pull/glider with all options) like simeks did with single glider lane:

Post Reply