Talk:Dependent reflector

From LifeWiki
Revision as of 22:11, 4 July 2023 by Confocal (talk | contribs) (→‎"Dependent glider shuttle" proposal: I'd like to see an explicit procedure that makes sense in plain two-state B3/S23, and can be applied to any oscillator with dependent reflectors to get an authoritative answer)
Jump to navigation Jump to search

More periods

Chris857 (talk) 16:06, 3 July 2023 (UTC)

I also saw https://conwaylife.com/forums/viewtopic.php?f=7&t=533&p=3682&hilit=reflector#p3625 which is a p59 reflector made of herschel tracks, which seems less interesting (and vary unwieldy) to include since the herschel spacing can be adjusted, so it seems less period dependent than the other examples here. Chris857 (talk) 20:08, 3 July 2023 (UTC)

"Dependent glider shuttle" proposal

Just to give my two cents here, "dependent reflector loop" seems to me like a much better name for this article than "dependent glider shuttle". Mainly this is because the patterns being referenced, p26 glider shuttle and p31 glider shuttle, are not actually shuttles and badly need to be renamed. Shuttles go back and forth, not round and round.

The first name was invented by codeholic back in 2014, and the second was just a copycat use of the same term by hotdogPi. Once those naming errors are repaired, it doesn't seem like there's going to be any reason to rename this article. These things really are loops made out of dependent reflectors, and that's a term that's been in use for a long time and is well recognized.

I'll probably give this a day to collect any other thoughts, then go ahead and rename those two non-glider-shuttles and patch up this article appropriately (unless I hear objections). Dvgrn (talk) 19:36, 3 July 2023 (UTC)

The LifeWiki currently has articles for p60 glider shuttle, p71 glider shuttle, p165 glider shuttle, p49 glider shuttle, p42 glider shuttle, p50 glider shuttle, p26 glider shuttle, p31 glider shuttle, and p59 glider shuttle, and there's a p88 shuttle shown in the Shuttle article.
The p60, p165, p42, p50, and p88 patterns really are shuttles. The p71, being a 180-degree dependent reflector, is maybe kind of an arguable case. But p49 and p59 just don't look right, any more than the p26 or p31 ones do -- those are clearly glider loops, not back-and-forth shuttles.
The "p49 glider shuttle" doesn't even use dependent reflectors, so "p49 glider loop" would seem to be a much more appropriate name for that case. Dvgrn (talk) 20:36, 3 July 2023 (UTC)
I'm the one who proposed the move, so here are my thoughts. The article describes oscillators that are made of dependent reflectors reflecting continuous streams of gliders. The glider streams are not signal streams, and the gliders are not signals, at least not with the "natural" interpretation where the information is encoded by presence or absence of a glider. Of course "dependent reflector" is an established useful term. However, as far as I know "dependent reflector loop" is a newly coined term, and I think it's confusing. I agree with forum posts that the gliders are not actually "looping" -- the dependent reflector does periodically produce new gliders as long as gliders come in, but a "hole" in the input stream doesn't become a "hole" in the output stream so the output stream is not really a continuation of the "loop". The oscillator does look like a loop geometrically, but I'm not sure the proposed term "dependent reflector loop" carries that meaning (without suggesting the wrong picture of a signal loop).
Personally, I like the alternative term "dependent glider shuttle", and (regarding other articles for existing oscillators of this type) I would prefer p26 glider shuttle and p31 glider shuttle to keep their current names. (Likewise for other oscillators of the same type that use dependent reflectors.) Confocal (talk) 20:55, 3 July 2023 (UTC)
We might need a few tie-breaker opinions to sort this one out, then. I'm still thinking that the application of the word "shuttle" to things that go round and round and not back and forth, was a small mistake by codeholic back in 2014, that got duplicated a few times. It seems like it was a terminological accident, and it's not too late to correct it.
I'm sympathetic to the idea of these things not being loops either -- at least, not signal loops. They're loops in the sense that a glider in spacetime location X allows (rather than directly causes) a glider to exist somewhat later in time in spacetime location Y ... and there's a chain of locations X, Y, Z, P, D, Q, etc. that lead right back around to X-plus-one-cycle again (after one full trip of the not-quite-signal around the not-exactly-loop). Instead of "glider at Y if and only if glider was at X", we have "glider at Y if glider was at X" but not the converse. Still seems pretty loopy to me. EDIT: Oops, that's not the converse, that's the inverse, right? "no glider at Y if no glider was at X (and no other differences)" is true for regular glider loops but not for these "dependent reflector loops".
That said, what do you think of the idea of titling this article just "Dependent reflector" instead of "dependent reflector loop"? Seems to me dependent reflectors need an article, and it seems like this article could perfectly well be it. Dvgrn (talk) 01:51, 4 July 2023 (UTC)
Agree that this can be transformed into an article about dependent reflectors, with the resulting oscillators shown as applications.
I think about a dependent reflector as a "source+sink" device that consumes an infinite glider stream and produces another infinite stream. It could be described as "a glider gun supported by a glider stream". So it is still possible to adjust the size (minimum population, bounding box) by moving parts. But it becomes impossible to say how many gliders are in the circuit. Similarly, one cannot tell how many ticks are needed for "one full trip". When there are no dependent reflectors in the closed chain, it is always possible to leave just one glider in the circuit, and divide the period of the resulting oscillator by the period of the original "fully packed" circuit to get the number of circulating gliders. With dependent reflectors that does not work.
If I had to invent a new term for such oscillators, maybe something with the word "chain" in it -- if there are "segments" of glider streams joined at ends, the whole oscillator becomes a "closed polygonal chain". But that's yet another new term.

For example forum search for "p26 glider shuttle" (link) gives a number of relevant results, so I'd prefer to keep the name as is, to follow existing usage. People were referring to that oscillator as "p26 glider shuttle" in discussions. Confocal (talk) 03:22, 4 July 2023 (UTC)
I'd be happy with a redirect from "p26 glider shuttle" to "p26 whatever we decide to call it instead" -- "p26 reflector chain" or whatever. But "p26 glider shuttle" doesn't really make any sense as a descriptive name, given the definition in the first section of shuttle. The second section was added relatively recently by Book, to try to make sense after the fact of the nonsensical use of "glider shuttle" that had crept in over the last decade.
To me, using "shuttle" when you mean something that doesn't go back and forth like a weaver's shuttle is ... well, a fairly easy mistake to make, but basically just an obvious mistake, worth correcting as soon as it gets noticed. Why does "shuttle" seem like a good word to apply? -- especially in the case of the p49 glider shuttle? It seems like just plain the wrong word to be using.
You won't find any use of "shuttle" to mean "something that lets lots of things travel around in a cyclical pattern" in, for example, the Life Lexicon. It's supposed to be just one active object traveling back and forth. Dvgrn (talk) 18:37, 4 July 2023 (UTC)
The proposed "p26 reflector chain" would be another completely new term that wasn't used before in discussions. The current name "p26 glider shuttle" does have the advantage that it was actually used. People did use that name to refer to the pattern (even if it might not be completely logical). Hence my preference to keep that name. Inventing a new term to solve a perceived logical inconsistency trades one issue for another -- what to do with the "Don't invent new terms and put them on LifeWiki" rule, if it is consistently ignored? Confocal (talk) 21:46, 4 July 2023 (UTC)
Also, I don't think I agree with another statement a few paragraphs up:
But it becomes impossible to say how many gliders are in the circuit. Similarly, one cannot tell how many ticks are needed for "one full trip".
It actually seems fairly straightforward in most cases to figure out how many active objects are making the rounds in one of these contraptions -- and, really, they can perfectly well still be called "signals", and it's not wrong to call one of these things a "loop", with the signals taking a well-defined amount of time (the "cycle length"?) going around the loop. There's nothing in the definition of signal that says that it has to be possible to remove the signal without damaging the circuit. Information is still flowing around the loop, it's just that the information for each glider is just the one-way implication that "there was an input glider in the right place N ticks ago because, well, I'm here now and the whole loop hasn't blown up yet".
For example, there are eight signals in (what is currently called) the p31_glider_shuttle, cycling every 248 ticks. You can see them all in the phase shown below, though half the time one of them will be hidden in the dependent reflector. That's not really any different from a glider getting temporarily hidden in a Snark's reflection mechanism.
x = 45, y = 43, rule = LifeSuper 28.2pA$27.2pA.pA5.2pA$28.pA.2pA4.2pA$29.2pA2$2.2pA8.pA6.2G3.3pA$2.2pA 6.3pA7.2G.pA3.pA$9.pA9.G3.pA3.pA$9.2pA12.pA.2pA7.2pA$34.pA.pA$29.pA6. pA$30.pA5.2pA$3.2pA23.3pA$2pA.2pA6.3pA$2.pA5.pA4.pA$8.pA3.pA$7.pA$6.pA 3.pA$6.pA.2pA26.pA$7.pA29.2pA$36.2pA2$7.2pA$6.2pA29.pA$8.pA26.2pA.pA$ 34.pA3.pA$37.pA$32.pA3.pA$31.pA4.pA5.pA$31.3pA6.2pA.2pA$14.3pA23.2pA$ 7.2pA5.pA$8.pA6.pA$8.pA.pA$9.2pA7.2pA.pA12.2pA$17.pA3.pA3.pA9.pA$17.pA 3.pA.2pA7.3pA6.2pA$18.3pA3.2pA6.pA8.2pA2$14.2pA$7.2pA4.2pA.pA$7.2pA5. pA.2pA$15.2pA! #C [[ THUMBSIZE 2 THEME 6 GRID GRIDMAJOR 0 SUPPRESS THUMBLAUNCH ]] #C [[ AUTOSTART PAUSE 2 GPS 15 LOOP 249 T 248 PAUSE 2 ]]
cycle length of p31 dependent reflector loop
(click above to open LifeViewer)

The cycle length is the time it takes the white glider to travel from the pink marked location around the loop and back to the marked location again. If there are any cases where the number of signals or the cycle length can't be unambiguously defined, I'd like to see them. Dvgrn (talk) 20:01, 4 July 2023 (UTC)

My objection is that, if it is impossible to remove a signal so that the remaining circuit still works in "the same" controllable way and its evolution can be interpreted in the same way, then it is impossible to do an authoritative experimental verification of any claim of the form "This circuit has exactly N gliders in it". If it's unverifiable, then it's not well-defined.
Even in the given example (p31 glider shuttle), "the number of gliders in the circuit" is not really well-defined. I could make an equally plausible counter-claim that it actually contains 12 gliders -- in the initial phase, 8 gliders are visible directly and 4 other gliders are hidden in the reactions of dependent reflectors. Or I could make a different claim, that the circuit actually contains 16 gliders, including 8 visible at T = 0 and 8 hidden in the reactions.
If the reflectors were not dependent, any such claim would be easy to verify (prove or disprove) experimentally: just remove gliders manually one by one and run the pattern by few ticks to get the "hidden" ones out, then remove those extracted gliders from the pattern, and run the pattern again by several ticks, and so on, until the circuit is empty and there are only periodic reflectors without any gliders; the number of gliders in the original patterns is the number of gliders you have to remove. In short, you can remove gliders one-by-one from any actual signal loop and count them, and this will always give the same result for a given signal loop; this is an experimental verification.
With dependent reflectors, that procedure fails, because you cannot anymore remove some gliders and continue running the remaining pattern to extract remaining "hidden" gliders; an attempt to do so will destruct the circuit. As a consequence, any claim "There are exactly N gliders" becomes unverifiable. (Maybe apart from finitely many such claims for small values of N, where the number of directly visible gliders already exceeds N. Even then, my main objection is that "the number of gliders in the circuit" is not well-defined in the first place for a circuit with dependent reflectors, so there's no actual integer that could be compared with a claimed value of N.) Confocal (talk) 21:03, 4 July 2023 (UTC)


I could make an equally plausible counter-claim that it actually contains 12 gliders -- in the initial phase, 8 gliders are visible directly and 4 other gliders are hidden in the reactions of dependent reflectors. Or I could make a different claim, that the circuit actually contains 16 gliders, including 8 visible at T = 0 and 8 hidden in the reactions.
You could make one of those claims, sure, but they are by no means "equally plausible". Period 248 is the only reasonable cycle length for the p31 dependent reflector loop in the embedded LifeViewer above. That's how long it takes for a glider's influence to travel all the way around the loop. It's also how long it takes for the influence of the absence of a glider to travel all the way around the loop -- assuming you prevent failed dependent reflectors from spewing chaos around, once they're no longer functioning correctly.
Remove a glider in the above pattern at T=0. If it isn't removed, we expect that signal to get back to its current location at T=248 -- and it does, as you can see by the progress of the white glider in the above animation. If it _is_ removed, we expect that there won't be a glider in that location at T=248 -- and indeed, if you try it, it turns out that there's a glider still there at T=217, but the T=248 one is the first one that turns up missing.
That's perfectly good experimental verification. Just because you can't use a particular experimental method that works only for non-dependent signal loops, doesn't mean that there aren't signals, or that there isn't information traveling in a loop. It's a more fragile loop, and they're dependent signals -- but that just means you'll have to adjust your experimental methods a little bit.
-- It looks like it was one of my insufficiently well thought out forum posts that sent you off in this wrong direction... my apologies! Dvgrn (talk) 21:17, 4 July 2023 (UTC)
The mention of "the white glider" suggests that the idea is to use a multi-coloured version of Life with multiple alive states, and track propagation of different cellstates. But then it is not plain Life anymore. Propagation of certain cellstates according to any fixed rules doesn't follow B3/S23, and is not an actual signal from the point of view of B3/S23 Life. Any "coloured Life" ruletable is in this sense arbitrary. Since it is arbitrary, it cannot enable an authoritative experimental verification. Different "coloured Life" rules would in general lead to differently propagating colours, and different answers. Confocal (talk) 21:40, 4 July 2023 (UTC)
Nope, the test of "remove the glider and track when the first glider would fail to appear on the output side of the dependent reflector" is a plain-vanilla Life test, and it gives unambiguous results. The colored glider is just a convenient way to see the effect -- don't let the specifics worry you. You can't actually hide extra signals in the dependent reflector as you're describing. If you remove the input glider, you don't get those hypothesized extra output gliders out of the dependent reflector. You only get the gliders corresponding to signals that were actually sent into the reflector and are traveling through it.

Again, if there are any actual cases -- not hypothesized theoretical cases -- where the number of signals or the cycle length can't be unambiguously defined, I'd like to see them. Dvgrn (talk) 21:50, 4 July 2023 (UTC)

If it actually can be made to work in a natural way in plain two-state B3/S23, I'd really like to see an explicit procedure. Right now, it sounds like a suggestion to use behaviour of a (mathematically arbitrary) multi-state Life extension to define something that was supposed to be intrinsically meaningful in plain B3/S23.
An actual example is the above p31 glider shuttle; I claim it contains four logically separate distinct glider streams, each of which is generated by a dependent reflector reaction and destroyed at the end by another dependent reflector reaction. I claim that gliders that enter a dependent reflector never come back again; the output stream consists of completely new gliders that were never outside before. However, my point is that neither "there are 8 gliders in the pattern" nor "there are 12 gliders in the pattern" nor "there are infinitely many gliders in the pattern" has an authoritative experimental verification. Confocal (talk) 22:11, 4 July 2023 (UTC)