# Periodic points of complex quadratic map

This article describes periodic points of some complex quadratic maps. A map is a formula for computing a value of a variable based on its own previous value or values; a quadratic map is one that involves the previous value raised to the powers one and two; and a complex map is one in which the variable and the parameters are complex numbers. A periodic point of a map is a value of the variable that occurs repeatedly after intervals of a fixed length.

These periodic points play a role in the theories of Fatou and Julia sets.

## Definitions

Let

$f_{c}(z)=z^{2}+c\,$

be the complex quadric mapping, where $z$  and $c$  are complex numbers.

Notationally, $f_{c}^{(k)}(z)$  is the $k$ -fold composition of $f_{c}$  with itself (not to be confused with the $k$ th derivative of $f_{c}$ )—that is, the value after the k-th iteration of the function $f_{c}.$  Thus

$f_{c}^{(k)}(z)=f_{c}(f_{c}^{(k-1)}(z)).$

Periodic points of a complex quadratic mapping of period $p$  are points $z$  of the dynamical plane such that

$f_{c}^{(p)}(z)=z,$

where $p$  is the smallest positive integer for which the equation holds at that z.

We can introduce a new function:

$F_{p}(z,f)=f_{c}^{(p)}(z)-z,$

so periodic points are zeros of function $F_{p}(z,f)$ : points z satisfying

$F_{p}(z,f)=0,$

which is a polynomial of degree $2^{p}.$

## Number of periodic points

The degree of the polynomial $F_{p}(z,f)$  describing periodic points is $d=2^{p}$  so it has exactly $d=2^{p}$  complex roots (= periodic points), counted with multiplicity.

## Stability of periodic points (orbit) - multiplier

The multiplier (or eigenvalue, derivative) $m(f^{p},z_{0})=\lambda$  of a rational map $f$  iterated $p$  times at cyclic point $z_{0}$  is defined as:

$m(f^{p},z_{0})=\lambda ={\begin{cases}f^{p\prime }(z_{0}),&{\mbox{if }}z_{0}\neq \infty \\{\frac {1}{f^{p\prime }(z_{0})}},&{\mbox{if }}z_{0}=\infty \end{cases}}$

where $f^{p\prime }(z_{0})$  is the first derivative of $f^{p}$  with respect to $z$  at $z_{0}$ .

Because the multiplier is the same at all periodic points on a given orbit, it is called a multiplier of the periodic orbit.

The multiplier is:

• a complex number;
• invariant under conjugation of any rational map at its fixed point;
• used to check stability of periodic (also fixed) points with stability index $abs(\lambda ).\,$

A periodic point is

• attracting when $abs(\lambda )<1;$
• super-attracting when $abs(\lambda )=0;$
• attracting but not super-attracting when $0
• indifferent when $abs(\lambda )=1;$
• rationally indifferent or parabolic if $\lambda$  is a root of unity;
• irrationally indifferent if $abs(\lambda )=1$  but multiplier is not a root of unity;
• repelling when $abs(\lambda )>1.$

Periodic points

• that are attracting are always in the Fatou set;
• that are repelling are in the Julia set;
• that are indifferent fixed points may be in one or the other. A parabolic periodic point is in the Julia set.

## Finding periodic points

solve these equations using numerical methods for solving polynomials - and even something simple such as Newton's method is going to converge a lot faster than finding the cycles just by iterating a single point (as is how bifurcations diagrams are usually made) under fc itself. Milo Brandt

Methods:

• simple iterating and checking convergence
• numerical methods
• symbolic computations, algebraic
• numerical methods for finding roots of polynomial equations

### Period-1 points (fixed points)

#### Finite fixed points

Let us begin by finding all finite points left unchanged by one application of $f$ . These are the points that satisfy $f_{c}(z)=z$ . That is, we wish to solve

$z^{2}+c=z,\,$

which can be rewritten as

$\ z^{2}-z+c=0.$

Since this is an ordinary quadratic equation in one unknown, we can apply the standard quadratic solution formula:

$\alpha _{1}={\frac {1-{\sqrt {1-4c}}}{2}}$  and $\alpha _{2}={\frac {1+{\sqrt {1-4c}}}{2}}.$

So for $c\in \mathbb {C} \setminus \{1/4\}$  we have two finite fixed points $\alpha _{1}$  and $\alpha _{2}$ .

Since

$\alpha _{1}={\frac {1}{2}}-m$  and $\alpha _{2}={\frac {1}{2}}+m$  where $m={\frac {\sqrt {1-4c}}{2}},$

we have $\alpha _{1}+\alpha _{2}=1$ .

Thus fixed points are symmetrical about $z=1/2$ .

##### Complex dynamics

Here different notation is commonly used:

$\alpha _{c}={\frac {1-{\sqrt {1-4c}}}{2}}$  with multiplier $\lambda _{\alpha _{c}}=1-{\sqrt {1-4c}}$

and

$\beta _{c}={\frac {1+{\sqrt {1-4c}}}{2}}$  with multiplier $\lambda _{\beta _{c}}=1+{\sqrt {1-4c}}.$

Again we have

$\alpha _{c}+\beta _{c}=1.$

Distance between fixed points:

${\frac {1-\Delta }{2}}<{\frac {1}{2}}<{\frac {1+\Delta }{2}}$

is delta $\Delta$

where

$\Delta ={\sqrt {1-4c}}$  so
• for $c={\frac {1}{4}}$  distance is equal to zero: $\Delta ({\frac {1}{4}})={\sqrt {0}}=0$  =the points coincide ( parabolic case)
• for $c=0$  distance is equal to 1: $\Delta (1)={\sqrt {1}}=1$  = the superattracting case ( alfa is a center and beta in on the unit circle)

$P_{c}'(z)={\frac {d}{dz}}P_{c}(z)=2z,$

we have

$P_{c}'(\alpha _{c})+P_{c}'(\beta _{c})=2\alpha _{c}+2\beta _{c}=2(\alpha _{c}+\beta _{c})=2.$

This implies that $P_{c}$  can have at most one attractive fixed point.

These points are distinguished by the facts that:

• $\beta _{c}$  is:
• the landing point of the external ray for angle=0 for $c\in M\setminus \left\{1/4\right\}$
• the most repelling fixed point of the Julia set
• the one on the right (whenever fixed point are not symmetrical around the real axis), it is the extreme right point for connected Julia sets (except for cauliflower).
• $\alpha _{c}$  is:
• the landing point of several rays
• attracting when $c$  is in the main cardioid of the Mandelbrot set, in which case it is in the interior of a filled-in Julia set, and therefore belongs to the Fatou set (strictly to the basin of attraction of finite fixed point)
• parabolic at the root point of the limb of the Mandelbrot set
• repelling for other values of $c$

Special cases

An important case of the quadratic mapping is $c=0$ . In this case, we get $\alpha _{1}=0$  and $\alpha _{2}=1$ . In this case, 0 is a superattractive fixed point, and 1 belongs to the Julia set.

Only one fixed point

We have $\alpha _{1}=\alpha _{2}$  exactly when $1-4c=0.$  This equation has one solution, $c=1/4,$  in which case $\alpha _{1}=\alpha _{2}=1/2$ . In fact $c=1/4$  is the largest positive, purely real value for which a finite attractor exists.

#### Infinite fixed point

We can extend the complex plane $\mathbb {C}$  to the Riemann sphere (extended complex plane) $\mathbb {\hat {C}}$  by adding infinity:

$\mathbb {\hat {C}} =\mathbb {C} \cup \{\infty \}$

and extend $f_{c}$  such that $f_{c}(\infty )=\infty .$

Then infinity is:

• superattracting
• a fixed point of $f_{c}$ :
$f_{c}(\infty )=\infty =f_{c}^{-1}(\infty ).$

### Period-2 cycles

Period-2 cycles are two distinct points $\beta _{1}$  and $\beta _{2}$  such that $f_{c}(\beta _{1})=\beta _{2}$  and $f_{c}(\beta _{2})=\beta _{1}$ , and hence

$f_{c}(f_{c}(\beta _{n}))=\beta _{n}$

for $n\in \{1,2\}$ :

$f_{c}(f_{c}(z))=(z^{2}+c)^{2}+c=z^{4}+2cz^{2}+c^{2}+c.$

Equating this to z, we obtain

$z^{4}+2cz^{2}-z+c^{2}+c=0.$

This equation is a polynomial of degree 4, and so has four (possibly non-distinct) solutions. However, we already know two of the solutions. They are $\alpha _{1}$  and $\alpha _{2}$ , computed above, since if these points are left unchanged by one application of $f$ , then clearly they will be unchanged by more than one application of $f$ .

Our 4th-order polynomial can therefore be factored in 2 ways:

#### First method of factorization

$(z-\alpha _{1})(z-\alpha _{2})(z-\beta _{1})(z-\beta _{2})=0.\,$

This expands directly as $x^{4}-Ax^{3}+Bx^{2}-Cx+D=0$  (note the alternating signs), where

$D=\alpha _{1}\alpha _{2}\beta _{1}\beta _{2},\,$
$C=\alpha _{1}\alpha _{2}\beta _{1}+\alpha _{1}\alpha _{2}\beta _{2}+\alpha _{1}\beta _{1}\beta _{2}+\alpha _{2}\beta _{1}\beta _{2},\,$
$B=\alpha _{1}\alpha _{2}+\alpha _{1}\beta _{1}+\alpha _{1}\beta _{2}+\alpha _{2}\beta _{1}+\alpha _{2}\beta _{2}+\beta _{1}\beta _{2},\,$
$A=\alpha _{1}+\alpha _{2}+\beta _{1}+\beta _{2}.\,$

We already have two solutions, and only need the other two. Hence the problem is equivalent to solving a quadratic polynomial. In particular, note that

$\alpha _{1}+\alpha _{2}={\frac {1-{\sqrt {1-4c}}}{2}}+{\frac {1+{\sqrt {1-4c}}}{2}}={\frac {1+1}{2}}=1$

and

$\alpha _{1}\alpha _{2}={\frac {(1-{\sqrt {1-4c}})(1+{\sqrt {1-4c}})}{4}}={\frac {1^{2}-({\sqrt {1-4c}})^{2}}{4}}={\frac {1-1+4c}{4}}={\frac {4c}{4}}=c.$

Adding these to the above, we get $D=c\beta _{1}\beta _{2}$  and $A=1+\beta _{1}+\beta _{2}$ . Matching these against the coefficients from expanding $f$ , we get

$D=c\beta _{1}\beta _{2}=c^{2}+c$  and $A=1+\beta _{1}+\beta _{2}=0.$

From this, we easily get

$\beta _{1}\beta _{2}=c+1$  and $\beta _{1}+\beta _{2}=-1$ .

From here, we construct a quadratic equation with $A'=1,B=1,C=c+1$  and apply the standard solution formula to get

$\beta _{1}={\frac {-1-{\sqrt {-3-4c}}}{2}}$  and $\beta _{2}={\frac {-1+{\sqrt {-3-4c}}}{2}}.$

Closer examination shows that:

$f_{c}(\beta _{1})=\beta _{2}$  and $f_{c}(\beta _{2})=\beta _{1},$

meaning these two points are the two points on a single period-2 cycle.

#### Second method of factorization

We can factor the quartic by using polynomial long division to divide out the factors $(z-\alpha _{1})$  and $(z-\alpha _{2}),$  which account for the two fixed points $\alpha _{1}$  and $\alpha _{2}$  (whose values were given earlier and which still remain at the fixed point after two iterations):

$(z^{2}+c)^{2}+c-z=(z^{2}+c-z)(z^{2}+z+c+1).\,$

The roots of the first factor are the two fixed points. They are repelling outside the main cardioid.

The second factor has the two roots

${\frac {-1\pm {\sqrt {-3-4c}}}{2}}.\,$

These two roots, which are the same as those found by the first method, form the period-2 orbit.

##### Special cases

Again, let us look at $c=0$ . Then

$\beta _{1}={\frac {-1-i{\sqrt {3}}}{2}}$  and $\beta _{2}={\frac {-1+i{\sqrt {3}}}{2}},$

both of which are complex numbers. We have $|\beta _{1}|=|\beta _{2}|=1$ . Thus, both these points are "hiding" in the Julia set. Another special case is $c=-1$ , which gives $\beta _{1}=0$  and $\beta _{2}=-1$ . This gives the well-known superattractive cycle found in the largest period-2 lobe of the quadratic Mandelbrot set.

### Cycles for period greater than 2

The degree of the equation $f^{(n)}(z)=z$  is 2n; thus for example, to find the points on a 3-cycle we would need to solve an equation of degree 8. After factoring out the factors giving the two fixed points, we would have a sixth degree equation.

There is no general solution in radicals to polynomial equations of degree five or higher, so the points on a cycle of period greater than 2 must in general be computed using numerical methods. However, in the specific case of period 4 the cyclical points have lengthy expressions in radicals.

In the case c = –2, trigonometric solutions exist for the periodic points of all periods. The case $z_{n+1}=z_{n}^{2}-2$  is equivalent to the logistic map case r = 4: $x_{n+1}=4x_{n}(1-x_{n}).$  Here the equivalence is given by $z=2-4x.$  One of the k-cycles of the logistic variable x (all of which cycles are repelling) is

$\sin ^{2}\left({\frac {2\pi }{2^{k}-1}}\right),\,\sin ^{2}\left(2\cdot {\frac {2\pi }{2^{k}-1}}\right),\,\sin ^{2}\left(2^{2}\cdot {\frac {2\pi }{2^{k}-1}}\right),\,\sin ^{2}\left(2^{3}\cdot {\frac {2\pi }{2^{k}-1}}\right),\dots ,\sin ^{2}\left(2^{k-1}{\frac {2\pi }{2^{k}-1}}\right).$

### general numerical methods

#### Method by Claude Heiland-Allen

What I do to create an periodic components of Mandelbrot set, for $f_{c}(z)=z^{2}+c$ :

• start iteration from $z_{0}:=0$ , with $m:=\infty$
• for each $n=1,2,3,...$  in order
• calculate $z_{n}:=f_{c}(z_{n-1})$
• if $|z_{n}|
• set $m:=|z_{n}|$
• use Newton's method to solve $w=f_{c}^{\circ n}(w)$  with initial guess $w^{(0)}:=z_{n}$  (this may fail to converge, in which case continue with the next $n$ ), the steps are $w^{(i+1)}:=w^{(i)}-{\frac {f_{c}^{\circ n}(w^{(i)})-w^{(i)}}{{f_{c}^{\circ n}}'(w^{(i)})-1}}$
• calculate the derivative of the cycle $\lambda :={f_{c}^{\circ n}}'(w)$
• if $|\lambda |<1$ , then the cycle is attractive and $c$  is within a hyperbolic component of period $n$ , stop (success).

Where:

• $\lambda$  may used as "interior coordinates" within the hyperbolic component.
• $w$  and $n$  can be used for interior distance estimation.

The point of using Newton's method is to accelerate the computation of $w$ , a point in the limit cycle attractor. Computing $w$  just by iterating $f_{c}$  could take many 1000s of iterations, especially when $\lambda$  is close to $1$ .

I have no complete proof of correctness (but this doesn't mean I think it is incorrect; the images seem plausible). It relies on the "atom domains" surrounding each hyperbolic component of a given period.

It also relies on the cycle reached by Newton's method being the same cycle as the limit cycle approached by iteration: this is true for the quadratic Mandelbrot set because there is only one finite critical point, $0$  ($\infty$  is a fixed point) and each attracting or parabolic cycle has a critical point in its immediate basin (see <https://math.stackexchange.com/a/3952801>), which means there can be at most one attracting or parabolic cycle.

For an implementation in C99 you can see my blog post at <https://mathr.co.uk/blog/2014-11-02_practical_interior_distance_rendering.html>

#### Speed up

Cardioid / bulb checking:

int GivePeriod(complex double c){

if (cabs2(c)>4.0) {return 0;} // exterior : out of first lemniscte
if (cabs2(1.0 - csqrt(1.0-4.0*c))<=1.0 ) {return 1;} // main cardioid
if (cabs2(4.0*c + 4)<=1.0){return 2;} // period 2 component

int period =  GivePeriodByIteration(c);

if ( period < 0) // last chance
{
iUnknownPeriod +=1;
//period = m_d_box_period_do(c, 0.5, iterMax_LastIteration); // not working good

}

// period > 0 means is periodic
// period = 0 means is not periodic = exterior = escaping to infinity
// period < 0 means period not found, maybe increase global variable iterMax_Period ( see local_setup)
return period;
}