Number of limit points of a continued exponential

Inspired by the work of C. Bender, I recently played with continued exponentials (like continued fractions but with exponential functions ;) ). Given all prefactors are equal to 1, the continued exponential reads $\exp(z \exp(z \exp(...))) $. This converges in a cardioid, but the more interesting thing happens outside the region of convergence, giving rise to the following problem:

Let $a_0 = 1$ and $a_{n+1} = \exp(z\cdot a_n)$. Given a $z\in\mathbb{C}$, how many limiting points does the sequence $\{a_i(z)\}$ have?

When coloring every region with a different number of limiting points in a different color, a fractal pattern emerges (see picture). The only divergent points (with values going off to $\infty$) are $\{x\in\mathbb{R}|x>1/e\}$. At the border between any two regions, there are smaller and smaller regions of higher number of limiting points so that there is an infinitesimal line around every region, where the sequence has an infinite number of limiting points.

The sequences approach N-circles for high n. That is: a sequence with 5 limiting points will always iterate through these 5 points in the same order at high n.

The picture I created took about 15 hours of calculations and as you can see there are still a lot of black regions, where my code was not able to determine the number of limiting points (and there are some wrong colorings at the cardioid, but that is not too bad). This is mainly due to slow convergence.

number of limiting points of the continued exponential resulting in a fractal pattern

My question to you: do you have any idea how to quickly find the number of limiting points (ie faster than calculating the sequence until the pattern becomes obvious)? Is there a way to find all points for which there are infinitely many limit points ie. calculate the borders of these regions directly?

To clarify: what I am doing so far is to calculate something like 300 elements of this sequence and check whether $||a_N - a_{N-m}|| < \epsilon\cdot ||a_N||$ for some predefined $\epsilon$ and any $m$. Of course I could just check this repeatedly while calculating the elements, but I want something that is more efficient.


Let $f(w) = \exp(z w)$. Note that $f'(w) = z f(w)$. If $p_1, p_2, \ldots, p_n$ form a periodic orbit of period $n$ (so that $f(p_j) = p_{j+1}$ for $1 \le j \le n-1$ with $f(p_n) = p_1$), that orbit is asymptotically stable if $|f'(p_1) \ldots f'(p_n)| = |z|^n |p_1 \ldots p_n| < 1$. The typical way to have a finite set of limiting points is to be in the basin of attraction of a periodic orbit. Now if $|w - p| < \epsilon$, $|f(w) - f(p)| < |z| \epsilon e^{|z|\epsilon} |f(p)|$. Suppose (after some iteration) your current point $w$ is close to the periodic point $p_1$. Then you can iterate: $\epsilon_1 = |w - p_1|$, $\epsilon_{j+1} = |z| \epsilon_j e^{|z| \epsilon_j} |p_{j+1}|$. If $\epsilon_{n+1} < \epsilon_1$, then the current point is in the basin of attraction.

Outside all basins of attraction, you will have points that won't be attracted to any asymptotically stable periodic orbit. They might get into unstable periodic orbits, but are more likely to have infinitely many limit points if they don't go off to $\infty$. I don't see a way of calculating them all directly.