# Tetration Forum

Full Version: Approximation method for super square root
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I came up with this method for calculating x where x^x=y. It's similar to a method for calculating square roots. The procedure is as follows:

1. Pick the number y that you would like to find the super root of.

2. Find the self-power that is closest to and less than y. We call this t^t. For example, if y=4000 then t=5 and t^t=3125.

3. Calculate the difference between y and t^t. So for y=4000, t=5, we get 875.

4. Divide that difference by the interval between the self-power below y and the one above it. So for y=4000, this would be (6^6-5^5)=46656-3125=43531.

So with our example the result is 5+875/43531 which is about 5.0201. The actual value is 5.094, so the approximation is 1.5% off the actual value.

The approximation generally gets more accurate as y and t get higher. Within the regime of a specific t, the most inaccurate value will occur when y is about 27.4% through the interval (example, for t=5, the approximation is most inaccurate at y=11927+3125=15092). I haven't figured out why this is.

The accuracy at this point decreases with increasing t. The integer for which this yields the least accurate value is 2, at about 85%. This method is much more accurate than a first order Taylor approximation of the actual solution.

I haven't yet been able to apply this to higher order tetrations.
To compute the inverse function of a strictly increasing function $f$ a method that always works is bisection.
perhaps you start with an integer number $t_0$ as you described.
Then you know the real value $t$ such that $f(t)=y$ must lie in the interval $(t_0,t_0+1)$, set $u_0=t+1$.
Next you divide the interval $(t_0,u_0)$ into two halfes by $w_0=\frac{t_0+u_0}{2}$, and you know that $t$ must either be in the left half $(t_0,w_0)$ or in the right half $(w_0,u_0)$; in the first case must $f(t_0) and in the second case $f(w_0). You choose the new interval $(t_1,u_1)$ accordingly.
And do again bisection on it.
By repetition of bisection you can compute the $t$ to arbitrary precision (in the above argumentation I assumed that the solution is never on the boundary of the interval, in which case one can abort the bisection, having found the solution).

For a more concise description see wikipedia.
There are also other root-finding algortithms, like Newton method, etc.
(03/23/2010, 10:54 AM)bo198214 Wrote: [ -> ]To compute the inverse function of a strictly increasing function $f$ a method that always works is bisection.
perhaps you start with an integer number $t_0$ as you described.
Then you know the real value $t$ such that $f(t)=y$ must lie in the interval $(t_0,t_0+1)$, set $u_0=t+1$.
Next you divide the interval $(t_0,u_0)$ into two halfes by $w_0=\frac{t_0+u_0}{2}$, and you know that $t$ must either be in the left half $(t_0,w_0)$ or in the right half $(w_0,u_0)$; in the first case must $f(t_0) and in the second case $f(w_0). You choose the new interval $(t_1,u_1)$ accordingly.
And do again bisection on it.
By repetition of bisection you can compute the $t$ to arbitrary precision (in the above argumentation I assumed that the solution is never on the boundary of the interval, in which case one can abort the bisection, having found the solution).

For a more concise description see wikipedia.
There are also other root-finding algortithms, like Newton method, etc.

Yeah it's not the most accurate method, but it's done in one step without repetition or recursion, so it would be good more mental math enthusiasts.