Hydra: Difference between revisions

From BusyBeaverWiki
Jump to navigation Jump to search
No edit summary
Tag: Manual revert
No edit summary
Line 1: Line 1:
{{machine|1RB3RB---3LA1RA_2LA3RA4LB0LB0LA}}{{unsolved|Does Hydra run forever?}}{{TM|1RB3RB---3LA1RA_2LA3RA4LB0LB0LA|undecided}}
{{machine|1RB3RB---3LA1RA_2LA3RA4LB0LB0LA}}{{unsolved|Does Hydra run forever?}}{{TM|1RB3RB---3LA1RA_2LA3RA4LB0LB0LA|undecided}}
'''Hydra''' is a [[BB(2,5)]] machine that simulates the [[Collatz-like]] iteration
'''Hydra''' is a [[BB(2,5)]] [[Cryptid]]. Similarly to [[Antihydra]], it simulates repeatedly applying the function <math display="inline">H(n)=\Big\lfloor\frac{3}{2}n\Big\rfloor</math>, but starting at <math>n=3</math> and swapping the roles of the even and odd terms of this sequence. The obstacles to proving whether or not this [[Turing machine]] halts are equally as serious as that machine.
== Description ==
[[File:Hydra TransitionTable.png|right|200px|thumb|The transition table of Hydra.]]
Hydra basically tracks the progress of the integer ordered pair <math>(x,y)</math> starting at <math>(3,0)</math>, which is represented on the tape as <math>x</math> consecutive <math>0</math>s and to the right, <math>y</math> consecutive <math>3</math>s. As time passes, the head moves back and forth, replacing all of those <math>0</math>s with <math>3</math>s, two at a time. Because head visits a new cell on the left every time this happens, the number of <math>3</math>s on the tape is approximately <math display="inline">\frac{3}{2}x</math> when this process finishes. From here, most of those <math>3</math>s are swiftly turned back into <math>0</math>s, generating a new ordered pair. However, there are two ways this could happen. If <math>x</math> was even, then <math>y</math> will decrease by one or halt Hydra if it drops below 0. Otherwise, <math>y</math> will increase by 2. The problem of whether or not Hydra halts is unsolved, and can be restated like so:


<math display="block">\begin{array}{l}
If the quantities of even and odd numbers found are counted as the function
  C(2a+1, & b) & \to & A(3a+1, & b+2) \\
<math display="block">\begin{array}{l}h(2n)&=&3n\\h(2n+1)&=&3n+1\end{array}</math>
  C(2a,   & b) & \to & A(3a,   & b-1) & \text{if} & b>0 \\
is applied continually, starting at 3, then does the count of even numbers ever exceed twice the count of odd numbers?
  C(2a,   & 0) & \to          & \text{HALT}
== Attributions ==
Hydra and its high-level rules were first reported [https://discord.com/channels/960643023006490684/1084047886494470185/1231110668288135208 on Discord] by Daniel Yuan on 20 April 2024.
== Analysis ==
Let <math>C(a,b):=0^\infty\;\textrm{<A}\;2\;0^a\;3^b\;2\;0^\infty</math>. Then,<ref>S. Ligocki, "[https://www.sligocki.com/2024/05/10/bb-2-5-is-hard.html BB(2, 5) is Hard (Hydra)] (2024). Accessed 22 July 2024.</ref>
<math display="block">\begin{array}{|lll|}\hline
C(2a,0)&\xrightarrow{6a^2+20a+4}&0^\infty\;3^{3a+1}\;1\;\textrm{A>}\;2\;0^\infty,\\
C(2a,b+1)&\xrightarrow{6a^2+23a+10}&C(3a+3,b),\\
C(2a+1,b)&\xrightarrow{4b+6a^2+23a+26}&C(3a+3,b+2).\\\hline
\end{array}</math>
\end{array}</math>
<br>
By scaling and translating these rules we acquire the [[Hydra function]] that relates it to Antihydra.<ref>S. Ligocki, "[https://www.sligocki.com/2024/07/06/bb-6-2-is-hard.html BB(6) is Hard (Antihydra)]" (2024). Accessed 22 July 2024.</ref>
starting from <math>C(3,0)</math>, using configurations of the form <math>C(a+2,b) = 0^\infty \; <B \; 0^{3a} \; 3^b \; 2 \; 0^\infty</math>.<ref>S. Ligocki, "[https://www.sligocki.com/2024/05/10/bb-2-5-is-hard.html BB(2, 5) is Hard (Hydra)] (2024). Accessed 22 July 2024.</ref>
<div class="toccolours mw-collapsible mw-collapsed">'''Proof'''<div class="mw-collapsible-content">
Consider the partial configuration <math>P(m,n):=0^\infty\;3^m\;\textrm{A>}\;02\;0^n</math>. After 14 steps this configuration becomes
<math>0^\infty\;3^{m+3}\;\textrm{<A}\;2\;0^{n-2}</math>. We note the following shift rule:
<math display="block">\begin{array}{|c|}\hline3^s\;\textrm{<A}\xrightarrow{s}\textrm{<A}\;3^s\\\hline\end{array}</math>
Using this shift rule, we get <math>0^\infty\;\textrm{<A}\;3^{m+3}\;2\;0^{n-2}</math> in <math>m+3</math> steps. From here, we can observe that <math>\textrm{A>}\;0\;3^s</math> turns into <math>3\;\textrm{A>}\;0\;3^{s-1}</math> in three steps if <math>s\ge 1</math>. By repeating this process, we acquire this transition rule:
<math display="block">\begin{array}{|c|}\hline\textrm{A>}\;0\;3^s\xrightarrow{3s}3^s\;\textrm{A>}\;0\\\hline\end{array}</math>
With this rule, it takes <math>3m+9</math> steps to reach the configuration <math>0^\infty\;3^{m+3}\;\textrm{A>}\;02\;0^{n-2}</math>, which is the same configuration as <math>P(m+3,n-2)</math>. To summarize:
<math display="block">\begin{array}{|c|}\hline P(m,n)\xrightarrow{4m+26}P(m+3,n-2)\text{ if }n\ge 2.\\\hline\end{array}</math>
With <math>C(a,b)</math> we have <math>P(0,a)</math>. As a result, we can apply this rule <math display="inline">\big\lfloor\frac{1}{2}a\big\rfloor</math> times, which creates two possible scenarios:
#If <math>a\equiv0\ (\operatorname{mod}2)</math>, then in <math>\sum_{i=0}^{(a/2)-1}(4\times 3i+26)=\textstyle\frac{3}{2}a^2+10a</math> steps we arrive at <math display="inline">P\Big(\frac{3}{2}a,0\Big)</math>. The matching complete configuration is <math>0^\infty\;3^{(3/2)a}\;\textrm{A>}\;02\;3^b\;2\;0^\infty</math>, which in four steps becomes <math>0^\infty\;3^{(3/2)a+1}\;1\;\textrm{A>}\;3^b\;2\;0^\infty.</math> If <math>b=0</math> then we have reached the undefined <code>A2</code> transition in <math display="inline">\frac{3}{2}a^2+10a+4</math> steps total. Otherwise, continuing for three steps gives us <math>0^\infty\;3^{(3/2)+2}\;\textrm{<B}\;0\;3^{b-1}\;2\;0^\infty</math>. Another shift rule is required here:<math display="block">\begin{array}{|c|}\hline3^s\;\textrm{<B}\xrightarrow{s}\textrm{<B}\;0^s\\\hline\end{array}</math>This means the configuration becomes <math>0^\infty\;\textrm{<B}\;0^{(3/2)a+3}\;3^{b-1}\;2\;0^\infty</math> in <math display="inline">\frac{3}{2}a+2</math> steps, and <math>0^\infty\;\textrm{<A}\;2\;0^{(3/2)a+3}\;3^{b-1}\;2\;0^\infty</math>, equal to <math display="inline">C\Big(\frac{3}{2}a+3,b-1\Big)</math>, one step later. This gives a total of <math display="inline">\frac{3}{2}a^2+\frac{23}{2}a+10</math> steps.
#If <math>a\equiv1\ (\operatorname{mod}2)</math>, then in <math display="inline">\frac{3}{2}a^2+7a-\frac{17}{2}</math> steps we arrive at <math display="inline">P\Big(\frac{3a-3}{2},1\Big)</math>. The matching complete configuration is <math>0^\infty\;3^{(3a-3)/2}\;\textrm{A>}\;020\;3^b\;2\;0^\infty</math>, which in four steps becomes <math>0^\infty\;3^{(3a-1)/2}\;1\;\textrm{A>}\;0\;3^b\;2\;0^\infty</math>, and then <math>0^\infty\;3^{(3a-1)/2}\;1\;3^b\;\textrm{A>}\;02\;0^\infty</math> in <math>3b</math> steps. After 14 steps, we see the configuration <math>0^\infty\;3^{(3a-1)/2}\;1\;3^{b+3}\;\textrm{<A}\;2\;0^\infty</math>, which turns into <math>0^\infty\;3^{(3a-1)/2}\;1\;\textrm{<A}\;3^{b+3}\;2\;0^\infty</math> in <math>b+3</math> steps. In two steps we get <math>0^\infty\;3^{(3a+1)/2}\;\textrm{<B}\;0\;3^{b+2}\;2\;0^\infty</math>, followed by <math>0^\infty\;\textrm{<B}\;0^{(3a+3)/2}\;3^{b+2}\;2\;0^\infty</math> after another <math display="inline">\frac{3a+1}{2}</math> steps. We conclude with <math>0^\infty\;\textrm{<A}\;2\;0^{(3a+3)/2}\;3^{b+2}\;2\;0^\infty</math>, equal to <math display="inline">C\Big(\frac{3a+3}{2},b+2\Big)</math>, one step later. This gives a total of <math display="inline">4b+\frac{3}{2}a^2+\frac{17}{2}a+16</math> steps.
The information above can be summarized as
<math display="block">C(a,b)\rightarrow\begin{cases}0^\infty\;3^{(3/2)a+1}\;1\;\textrm{A>}\;2\;0^\infty&\text{if }a\equiv0\pmod{2}\text{ and }b=0,\\C\Big(\frac{3}{2}a+3,b-1\Big)&\text{if }a\equiv0\pmod{2}\text{ and }b>0,\\C\Big(\frac{3a+3}{2},b+2\Big)&\text{if }a\equiv1\pmod2.\end{cases}</math>
Substituting <math>a\leftarrow 2a</math> for the first two cases and <math>a\leftarrow 2a+1</math> for the third yields the final result.
</div></div>
== Trajectory ==
It takes 20 steps to reach the configuration <math>C(3,0)</math>, and from there, the [[Collatz-like]] rules are repeatedly applied. Simulating Hydra has shown that after 4000000 rule steps, we have <math>b=2005373</math>. Here are the first few:
<math display="block">\begin{array}{|c|}\hline C(3,0)\xrightarrow{55}C(6,2)\xrightarrow{133}C(12,1)\xrightarrow{364}C(21,0)\xrightarrow{856}C(33,2)\xrightarrow{1938}C(51,4)\xrightarrow{4367}C(78,6)\rightarrow\cdots\\\hline\end{array}</math>
The heuristic argument that suggests Antihydra is a [[probviously]] nonhalting machine can be applied here. This means that if <math>b</math> is to be thought of as moving randomly, then the probability of Hydra halting is <math display="inline">{\Big(\frac{\sqrt{5}-1}{2}\Big)}^{2005374}\approx 4.168\times 10^{-419099}</math>.


It is closely related to the machine [[Antihydra]].<ref>S. Ligocki, "[https://www.sligocki.com/2024/07/06/bb-6-2-is-hard.html BB(6) is Hard (Antihydra)]" (2024). Accessed 22 July 2024.</ref>
''To view an animation of the blank tape becoming <math>C(21,0)</math> in 572 steps, click [https://wiki.bbchallenge.org/w/images/2/2f/Hydra_0-572.gif here].''
 
==References==
The sequence calculated by Hydra is a [[consistent Collatz]] sequence, (which implies, among other things, that its odd/even pattern can be calculated in quasilinear time). In the first 60 million elements, there are 29995836 even values of <code>a</code> and 30004165 odd values; thus, is known that Hydra cannot halt within the first 90 million Collatz iterations.
 
An older simulator for the odd/even sequence used by Hydra is available [http://nethack4.org/esolangs/fasthydra.zip here], but it runs in <math>O(n^2)</math> time and thus is unusably slow compared to the consistent Collatz simulation approach.
 
== Name ==
 
The name ''Hydra'' references the Ancient Greek legend: just as the legendary creature was growing 2 heads after losing 1 head, the ''b'' counter that is kept on the right side of the tape either increases by 2 or decreases by 1 (approximately with equal frequency if modelled as a random process; in reality it depends on the parity of ''a''). The Hydra dies (halts) when the last head is cut.
 
==Sources==
<references/>
 
[[Category:Stub]]
[[Category:Cryptids]]
[[Category:Cryptids]]

Revision as of 17:43, 1 March 2025

Unsolved problem:
Does Hydra run forever?

1RB3RB---3LA1RA_2LA3RA4LB0LB0LA (bbch)

Hydra is a BB(2,5) Cryptid. Similarly to Antihydra, it simulates repeatedly applying the function , but starting at and swapping the roles of the even and odd terms of this sequence. The obstacles to proving whether or not this Turing machine halts are equally as serious as that machine.

Description

The transition table of Hydra.

Hydra basically tracks the progress of the integer ordered pair starting at , which is represented on the tape as consecutive s and to the right, consecutive s. As time passes, the head moves back and forth, replacing all of those s with s, two at a time. Because head visits a new cell on the left every time this happens, the number of s on the tape is approximately when this process finishes. From here, most of those s are swiftly turned back into s, generating a new ordered pair. However, there are two ways this could happen. If was even, then will decrease by one or halt Hydra if it drops below 0. Otherwise, will increase by 2. The problem of whether or not Hydra halts is unsolved, and can be restated like so:

If the quantities of even and odd numbers found are counted as the function

is applied continually, starting at 3, then does the count of even numbers ever exceed twice the count of odd numbers?

Attributions

Hydra and its high-level rules were first reported on Discord by Daniel Yuan on 20 April 2024.

Analysis

Let . Then,[1]

By scaling and translating these rules we acquire the Hydra function that relates it to Antihydra.[2]

Proof

Consider the partial configuration . After 14 steps this configuration becomes . We note the following shift rule:

Using this shift rule, we get in steps. From here, we can observe that turns into in three steps if . By repeating this process, we acquire this transition rule:
With this rule, it takes steps to reach the configuration , which is the same configuration as . To summarize:
With we have . As a result, we can apply this rule times, which creates two possible scenarios:

  1. If , then in steps we arrive at . The matching complete configuration is , which in four steps becomes If then we have reached the undefined A2 transition in steps total. Otherwise, continuing for three steps gives us . Another shift rule is required here:
    This means the configuration becomes in steps, and , equal to , one step later. This gives a total of steps.
  2. If , then in steps we arrive at . The matching complete configuration is , which in four steps becomes , and then in steps. After 14 steps, we see the configuration , which turns into in steps. In two steps we get , followed by after another steps. We conclude with , equal to , one step later. This gives a total of steps.

The information above can be summarized as

Substituting for the first two cases and for the third yields the final result.

Trajectory

It takes 20 steps to reach the configuration , and from there, the Collatz-like rules are repeatedly applied. Simulating Hydra has shown that after 4000000 rule steps, we have . Here are the first few:

The heuristic argument that suggests Antihydra is a probviously nonhalting machine can be applied here. This means that if is to be thought of as moving randomly, then the probability of Hydra halting is .

To view an animation of the blank tape becoming in 572 steps, click here.

References

  1. S. Ligocki, "BB(2, 5) is Hard (Hydra) (2024). Accessed 22 July 2024.
  2. S. Ligocki, "BB(6) is Hard (Antihydra)" (2024). Accessed 22 July 2024.