Pandora's 3D box

by Marianne Freiberger


An amateur fractal programmer has discovered a new 3D version of the Mandelbrot set. Daniel White's new creation is based on similar mathematics as the original 2D Mandelbrot set, but its infinite intricacy extends into all three dimensions, revealing fractal worlds of amazing complexity and beauty at every level of magnification.

 A 3D Mandelbrot set

White's 3D version of the Mandelbrot set. Image © Daniel White.

 The Mandelbrot set

The Mandelbrot set (top left) and details you get when repeatedly zooming in. Image courtesy Wolfgang Beyer.

The original 2D Mandelbrot set, named after Benoît Mandelbrot who discovered it in the 1970s, is arguably the most famous fractal of them all. Unlike ordinary 2D shapes, whose outlines typically become smooth when you look at them closely enough even if they look crinkly at first, the Mandelbrot set displays the same level of complexity at every scale. Zooming in on it is like going on a never-ending journey into hidden worlds. This infinite complexity, together with a certain level of self-similarity — you can find copies of the original Mandelbrot set appearing again and again on smaller and smaller scales as you zoom in — is what earns the Mandelbrot set the name fractal.

 A 3D Mandelbrot set

An existing 3D version of Mandelbrot set. There is fractal structure in the horizontal plane, but in the vertical plane the object is smooth.

Several ways of creating 3D versions of the Mandelbrot set already exist, either by modifying the original 2D version, for example spinning it around an axis, or by translating the underlying mathematics into higher dimensions. But in most cases the "fractal-ness" of the resulting images does not extend into all three dimensions. You will see fractal structures when you look across the object along certain directions, but along other directions what you see is disappointingly smooth. White's new Mandelbulb, however, does appear to have genuine fractal features no matter which way you look at it, so in terms of fractal-ness, it's arguably got the biggest claim yet to being a true 3D analogue of the original Mandelbrot set.

The classical Mandelbrot set

So how did White produce his new beast? The classical two-dimensional Mandelbrot set is based on relatively simple mathematical objects: quadratic functions, like, for example,

  \[ f_0(z)=z^2. \]    
Rather than only considering ordinary real numbers for the variable $z$, you allow it to also take complex numbers as values, that is numbers of the form $z=x+iy$, where $i=\sqrt {-1}$. The term $x$ is called the real part of the number, and the term $iy$ is called the imaginary part of the number. You can add and multiply two complex numbers $a+ib$ and $c+id$ as you would ordinary numbers, grouping together those terms that have $i$ as a coefficient:
  \[ (a+ib)+(c+id) = (a+c)+i(b+d) \]    
  \[ (a+ib)(c+id) = ac + i(ad+bc)+i^2(bd) = (ac-bd)+i(ad+bc). \]    
Any real number doubles up as a complex number whose imaginary part is equal to 0, for example $0=0+i0.$ Similarly, a complex number can have its real part equal to 0, for example $i=0+1i$. (You can find out more about complex numbers in our teacher package.)

It now makes sense to consider a quadratic function like

  \[ f_0(z)=z^2 \]    
as a function of a complex variable $z.$ For example, letting $z=0$ you get
  \[ f_0(0)=0, \]    
letting $z=i$ gives
  \[ f_0(i)=i^2=-1, \]    
and letting $z=1+i$ gives
  \[ f_0(z)=(1+i)^2 = 1-1 + 2i=2i. \]    

Fixed points, cycles and escaping to infinity

But complex numbers also have a geometric interpretation: the number $a+ib$ corresponds to the point on the plane with coordinates $(a,b)$. It's this geometric interpretation that gives rise to the 2D Mandelbrot set. Here is how it is generated: Take any complex number $c=a+ib$ and mark it on the plane as the point $(a,b)$. Now look at the quadratic function

  \[ f_ c(z)=z^2+c \]    
and see what happens when you let $z=0$ and iterate the function $f_ c$: in other words, you look at the sequence $f_ c(0)$, $f_ c(f_ c(0))$, $f_ c(f_ c(f_ c(0)))$, and so on. First let's start with $c=0$, giving $f_0(z)=z^2$, which was our initial example above. Here $f_0(0)=0$, so for the next step in the iteration you get
  \[ f_0(f_0(0))=f_0(0)=0, \]    
and for the next step you get
  \[ f_0(f_0(f_0(0)))=f_0(f_0(0))=f_0(0)=0, \]    
and so on: the point 0 is a fixed point of the function. Now look at $c=i$, so
  \[ f_{i}(z)=z^2+i. \]    
In this case you get
  \[ f_ i(0)=i. \]    
Applying the function again gives
  \[ f_ i(i)=-1+i, \]    
another iteration gives
  \[ f_ i(-1+i)=-i, \]    
followed by
  \[ f_ i(-i)=-1+i. \]    
So while $0$ is not a fixed point of this second quadratic function, it does not go very far: after two iterations of the function, the sequence becomes trapped in a 2-cycle, forever oscillating between $-i$ and $-1+i$.

This is in stark contrast to what happens for $c=2$, where

  \[ f_2(z)=z^2+2. \]    
Here we have $f_2(0)=2$, $f_2(2)=4$, $f_2(4)=16$, $f_2(16)=256,$ etc. In this case the sequence of numbers does not become trapped anywhere, but moves further and further away from our initial point $0$. To phrase this in technical language, the orbit of 0 escapes to infinity.

It turns out that no matter which complex value you choose for $c$, one of two things happen: either the sequence of numbers you get when you iterate the function

  \[ f_ c(z)=z^2+c \]    
from the initial point $z=0$ escapes to infinity (as in the last example), or it remains confined to a bounded region of the plane (as in the first two examples). If you colour black all the points $c$ that create bounded sequences, you get the Mandelbrot set. (You can find out more in the Plus article Unveiling the Mandelbrot set.)

So the secret of the classical two-dimensional Mandelbrot set lies in the fact that complex numbers, which can be added and multiplied, can also be visualised as points on the plane. The addition and multiplication rules mean that it makes sense to look at functions like $f_ c(z)=z^2+c$ for complex numbers $z$ and $c$, and the geometric interpretation means that you can mark on the plane those points $c$ for which the function $f_ c$ behaves in a particular way.

The 3D version

 A detail of the 3D Mandelbrot set

A detail of White's 3D version of the Mandelbrot set. Image © Daniel White.

One way of creating a three-dimensional version of the Mandelbrot set is therefore to invent a new class of numbers, which correspond to points in three-dimensional space, rather than just the plane. Then define some meaningful way of adding and multiplying these numbers, so that it makes sense to consider functions such as $f_ c(z)=z^2+c$. You can now play the same game as before. Take a number $c$, corresponding to a point in three-dimensional space, and see what happens when you iterate the function $f_ c(z)$, starting from the initial value $z=0$, corresponding to the point $(0,0,0)$. If the sequence of values you get from the iteration does not escape to infinity, your point $c$ lies in your 3D version of the Mandelbrot set.

White and Nylander's formula for a 3D analogue of complex numbers

Consider the points $(x,y,z)$ and $(a,b,c)$ in 3D space. Define addition as follows:

  \[ (x,y,z)+(a,b,c)= (x+a, y+b, z+c). \]    
The formula for raising a number representing the point $(x,y,z)$ to the $nth$ power is
  \[ (x,y,z)^ n = r^ n(cos(n\theta )cos(n\phi ), sin(n\theta )cos(n\phi ), -sin(n\phi )), \]    
  \[ r=\sqrt {x^2+y^2+z^2}, \]    
  \[ \theta = arctan(y/x), \]    
  \[ \phi =arctan(z/\sqrt {x^2+y^2).} \]    
It now makes sense to consider functions of the form
  \[ f_ c(z)=z^ n+c, \]    
where $z$ and $c$ represent points in 3D space.

This is exactly what White did, using a 3D analogue of complex numbers, and tinkering around with ways of defining addition and multiplication that are akin to addition and multiplication of complex numbers. The initial results were slightly disappointing in terms of fractal detail. "I scoured everywhere to find signs of the 3D beast," says White, "but nothing turned up. Pretty 3D fractals were everywhere, but nothing quite as organic and rich as the original 2D Mandelbrot set." Eventually the mathematician Paul Nylander came to White's rescue. He suggested to adjust the "squaring part" in the formula $f_ c(z)=z^2+c$ to a higher power. Nylander and White struck gold with the power 8, that is with the formula $f_ c(z)=z^8+c.$ The resulting three-dimensional Mandelbulb seems to exhibit fractal detail that would impress even the most stringent of fractal hunters.

It's now a task for mathematicians to investigate the exact fractal nature of the beast, and to see whether it is of genuine mathematical interest, rather than just a stunning visual oddity. The pretty pictures that arise in this area of mathematics conceal a variety of mathematical concepts that mathematicians are eager to explore further. Many will argue that there is no single 3D version of the Mandelbrot set. It all depends on what you want to generalise to higher dimensions — particular fractal structures, or other aspects underlying the mathematics of these dynamical systems.

 A detail of the 3D Mandelbrot set

Another detail of White's 3D version of the Mandelbrot set. Image © Daniel White.

Meanwhile, White's quest continues. Having to move all the way up to the eighth power to get the required intricacy is slightly unsatisfactory, and it suggests that one could do better by modifying the technique. What's more, White's Mandelbulb still contains some "smeared-out" areas that aren't quite as intricate as one might wish for. "As exquisite as the detail is in our discovery, there's good reason to believe that it isn't the real McCoy," he says. "That means the biggest secret is still under wraps, open to anyone who has the inclination, and appreciation for how cool this thing would look. For sure I'll still keep looking."

You can find out more about the 3D Mandelbulb on Daniel White's website.


Paolo Bonzini said...

It is possible to describe this fractal also using quaternions. This is interesting in that it removes the need to define a special, non-standard exponentiation function.

See [PDF] (thanks to the people on and for proofreading!)

miner49er said...

What's the explanation for the fracvtal nature of the mandelbrot set? Is it an anomoly in the number system? Is it basically an error?

I have been fascinated by fractals for 20 years but never really thought about _why_ they (mandelbrot/escape-time) exist.

I wonder if discovering why they exist at all, may lead to a 'better' 3D analog?

David Makin said...

Those interested in more about the Mandelbulb and the search for the "true 3D" Mandelbrot including an almost complete history of the last couple of years search may wish to look here

Anonymous said...

I want this as screensaver,awesome