OCA talk:Sqrt replicator rule: Difference between revisions

From LifeWiki
Jump to navigation Jump to search
m Note incorrectness of name and explain reason for moving to OCA:Θ(sqrt(t)) replicator rule
Line 4: Line 4:


Yeah, it's quite an interesting rule (the replicator behaviour seems to be unique), and also outer-totalistic. [[User:77topaz|77topaz]] ([[User talk:77topaz|talk]]) 09:55, 3 March 2019 (UTC)
Yeah, it's quite an interesting rule (the replicator behaviour seems to be unique), and also outer-totalistic. [[User:77topaz|77topaz]] ([[User talk:77topaz|talk]]) 09:55, 3 March 2019 (UTC)
:The asymptotic growth is matched by that of rule 225, however this one is novel due to its isotropicness. [[User:DroneBetter|DroneBetter]] ([[User talk:DroneBetter|talk]]) 15:45, 29 September 2023 (UTC)
==Incorrectness of name==
Note that AwesoMan3000 created this page with the name "Logarithmic replicator rule" despite David Eppstein's page not anywhere describing it as such.
The width of the pattern in the equivalent INT rule given by AforAmpere is not in fact logarithmic, it grows with <tt>Θ({{sqrt|t}})</tt>. Where <tt>...</tt>, <tt>.o.</tt>, <tt>o.o</tt> and <tt>ooo</tt> refer to <tt>0</tt>, <tt>1</tt>, <tt>2</tt> and <tt>3</tt>, it is equivalent to the <tt>4</tt>-state range-<tt>1</tt> one-dimensional cellular automaton with rule integer <tt>0x190e002061040c0b86d0010e5980</tt>, here is a demonstration<pre>
from functools import reduce;from itertools import starmap,accumulate;redumulate=lambda f,l,i=None: accumulate(l,f,initial=i);print('\n'.join(starmap(lambda i,n: ' '*(l-i<<1)+''.join(map(lambda i: ' 123'[n>>(i<<1)&3],range(n.bit_length()+1>>1))),enumerate(redumulate(lambda n,i: reduce(int.__or__,map(lambda i: (0x190e002061040c0b86d0010e5980>>((n<<4>>(i<<1)&63)<<1)&3)<<(i+1<<1),range(n.bit_length()+4>>1))),range(l:=64),0b110)))))
</pre>
Anyway, where <tt>l(t)</tt> is the bit-length of the pattern on the <tt>t</tt>th iteration, we have the limiting bounds <tt>2 < {{frac|l(t)|{{sqrt|t}}}} < {{frac|2*{{sqrt|5}}|{{sqrt|3}}}}</tt>. <!--For <tt>n&ge;4</tt>, on the <tt>2<sup>n</sup></tt>th iteration, its width is in fact <tt>2<sup>(n-5)/2</sup>*(13*{{sqrt|2}}+18+(13*{{sqrt|2}}-18)*(-1)<sup>n</sup>)-10</tt>.-->
As such, I will move the page to [[OCA:Θ(sqrt(t)) replicator rule|OCA:<tt>Θ({{sqrt|t}})</tt> replicator rule]]. [[User:DroneBetter|DroneBetter]] ([[User talk:DroneBetter|talk]]) 15:45, 29 September 2023 (UTC)

Revision as of 15:45, 29 September 2023

Proper wiki article?

Would it be a good idea to make this a proper article? I'm not sure how notable this rule is (I do remember seeing some discussion about it on the forums or elsewhere) but I do want to point out that not only is this page the sole instance of a soft redirect on the wiki, but it's also to an external site and therefore doesn't even work because the template interprets it as an internal link. Ian07 (talk) 20:44, 15 February 2019 (UTC)

Yeah, it's quite an interesting rule (the replicator behaviour seems to be unique), and also outer-totalistic. 77topaz (talk) 09:55, 3 March 2019 (UTC)

The asymptotic growth is matched by that of rule 225, however this one is novel due to its isotropicness. DroneBetter (talk) 15:45, 29 September 2023 (UTC)

Incorrectness of name

Note that AwesoMan3000 created this page with the name "Logarithmic replicator rule" despite David Eppstein's page not anywhere describing it as such.

The width of the pattern in the equivalent INT rule given by AforAmpere is not in fact logarithmic, it grows with Θ(√t). Where ..., .o., o.o and ooo refer to 0, 1, 2 and 3, it is equivalent to the 4-state range-1 one-dimensional cellular automaton with rule integer 0x190e002061040c0b86d0010e5980, here is a demonstration

from functools import reduce;from itertools import starmap,accumulate;redumulate=lambda f,l,i=None: accumulate(l,f,initial=i);print('\n'.join(starmap(lambda i,n: ' '*(l-i<<1)+''.join(map(lambda i: ' 123'[n>>(i<<1)&3],range(n.bit_length()+1>>1))),enumerate(redumulate(lambda n,i: reduce(int.__or__,map(lambda i: (0x190e002061040c0b86d0010e5980>>((n<<4>>(i<<1)&63)<<1)&3)<<(i+1<<1),range(n.bit_length()+4>>1))),range(l:=64),0b110)))))

Anyway, where l(t) is the bit-length of the pattern on the tth iteration, we have the limiting bounds 2 < l(t)√t < 2*√5√3.

As such, I will move the page to OCA:Θ(√t) replicator rule. DroneBetter (talk) 15:45, 29 September 2023 (UTC)