|
|
Line 1: |
Line 1: |
| [[File:Hydra Spiral.png|thumb|200px|A spiral-like figure that gives the first few terms of the Hydra sequences with initial values 2, 5, 8, 11, and 17.]]
| | File:Hydra Spiral.png|thumb|200px|A spiral-like figure that gives the first few terms of the Hydra sequences with initial values 2, 5, 8, 11, and 17.]] |
| The '''Hydra function''' is a [[Collatz-like]] function defined as: | | The '''Hydra function''' is a [[Collatz-like]] function defined as: |
| <math display="block">\textstyle H(n)\equiv n+\left\lfloor\frac{1}{2}n\right\rfloor=\Big\lfloor\frac{3}{2}n\Big\rfloor=\begin{cases} | | <math display="block">\textstyle H(n)\equiv n+\left\lfloor\frac{1}{2}n\right\rfloor=\Big\lfloor\frac{3}{2}n\Big\rfloor=\begin{cases} |
Line 94: |
Line 94: |
| |Let <math>C_H(a,b):=0^\infty\;\textrm{<A}\;2\;0^{3(a-2)}\;3^b\;2\;0^\infty</math>: | | |Let <math>C_H(a,b):=0^\infty\;\textrm{<A}\;2\;0^{3(a-2)}\;3^b\;2\;0^\infty</math>: |
| <math display="block">\begin{array}{|lll|}\hline | | <math display="block">\begin{array}{|lll|}\hline |
| C_H(2^st,b+s)&\rightarrow&C_H(3^st,b),\\ | | C_H(2^st,b+s)&\xrightarrow{f_1(s,t)}&C_H(3^st,b),\\ |
| C_H(2^st+1,b)&\rightarrow&C_H(3^st+1,b+2s),\\\hline | | C_H(2^st+1,b)&\xrightarrow{f_2(s,t,b)}&C_H(3^st+1,b+2s),\\\hline |
| \end{array}</math> | | \end{array}</math> |
| | where <math display="inline">f_1(s,t)=\frac{3t(3^s-2^s)(18(3^s+2^s)t-65)}{5}-5s</math> and <math display="inline">f_2(s,t,b)=(b+s)4s+\frac{3t(3^s-2^s)(18(3^s+2^s)t-5)}{5}</math>. |
| |Let <math>A_H(a,b):=0^\infty\;1^a\;0\;1^{b-4}\;\textrm{E>}\;0^\infty</math>:<math display="block">\begin{array}{|lll|}\hline | | |Let <math>A_H(a,b):=0^\infty\;1^a\;0\;1^{b-4}\;\textrm{E>}\;0^\infty</math>:<math display="block">\begin{array}{|lll|}\hline |
| A_H(a,2^st)& \rightarrow& A_H(a+2s,3^st),\\ | | A_H(a,2^st)& \xrightarrow{f_3(s,t,a)}& A_H(a+2s,3^st),\\ |
| A_H(a+s,2^st+1)&\rightarrow& A_H(a,3^st+1),\\\hline | | A_H(a+s,2^st+1)&\xrightarrow{f_4(s,t)}& A_H(a,3^st+1),\\\hline |
| \end{array}</math> | | \end{array}</math> |
| | where <math display="inline">f_3(s,t,a)=(2a-3+2s)s+\frac{3t^2(9^s-4^s)}{5}</math> and <math display="inline">f_4(s,t)=\frac{3t^2(9^s-4^s)}{5}-7s</math>. |
| |} | | |} |
File:Hydra Spiral.png|thumb|200px|A spiral-like figure that gives the first few terms of the Hydra sequences with initial values 2, 5, 8, 11, and 17.]]
The Hydra function is a Collatz-like function defined as:

It is named as such due its connection to the unsolved halting problems for the
Cryptids Hydra and
Antihydra. Due to its simplicity, simulations for both of these
Turing machines utilize this function instead of what can initially be proven.
Relationship to Hydra and Antihydra
Using the Hydra function, we can obtain simplified rules for Hydra and Antihydra:
Hydra |
Antihydra
|
Let :
|
Let :
|
Proof
Recall the high-level rules for Hydra and Antihydra:
Hydra |
Antihydra
|
Let :
|
Let :
|
Already, both machines appear to have very similar functions. They have one parameter that increases exponentially with growth factor
and another that effectively takes a pseudo-random walk. Below, the exponentially increasing variables are described by integer sequences:
Hydra |
Antihydra
|

|

|
This makes illustrating the transformation easier. Now we will define a new integer sequence based on the old one and discover the recursive rules for that sequence. This new sequence is
and
for Hydra and Antihydra respectively. We start by using
instead and substituting
for its recursive formula. By doing so, we get:
Hydra |
Antihydra
|

|

|
After that, we can substitute
for its solution in terms of
. What results is the following:
Hydra |
Antihydra
|

|

|
We note that the if statements simplify to checking if
is even or odd. After simplifying, we are done:
Hydra |
Antihydra
|

|

|
Now that we have demonstrated a strong similarity in the behaviour of both Turing machines, we can return to using the high-level rules. Doing that while accounting for the step counts yields the final result.
Properties
The Hydra function can be rewritten as follows:

Now we will define

and

to be positive integers with

additionally being odd, and substitute

:

Because

is also the result of substituting

and

, we can iterate the Hydra function many times. Letting

, this means:

This optimization can be directly applied to the high-level rules for Hydra and Antihydra, producing this result:
Hydra |
Antihydra
|
Let :

where and .
|
Let :
where and .
|