Static tape linear replicator (Gargoyle)
Static tape linear replicator (Gargoyle)
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.
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.
Re: Static tape Gemini
So if I'm picturing this idea correctly, it looks something like this:
...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?
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!
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.
Coldlander, a novel, available in paperback and as an ebook. Now on Amazon.
Re: Static tape Gemini
Let me post my schematics:
- Attachments
-
- Static Gemini.png (21.4 KiB) Viewed 6759 times
Re: Static tape Gemini
Reading head with self destruct is easy to achieve, check out caterloopillars (the negative helix is part of the reading head).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.
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!
Re: Static tape Gemini
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.
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.
- gmc_nxtman
- Posts: 1150
- Joined: May 26th, 2015, 7:20 pm
Re: Static tape Gemini
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.
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.
Re: Static tape Gemini
@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?
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?
Re: Static tape Gemini
Here is SL->back LWSS+glider+junk that looks promising:
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.
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!
Re: Static tape linear replicator (Gargoyle)
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.
I now need to search for construction arm operations (push/pull/glider with all options) like simeks did with single glider lane:
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!