Student: So the Mandelbrot Set is made up of Julia Sets, which are prisoner sets. What is a prisoner?
Mentor: That is a simplified description, but you have all the main ideas. Let's talk about prisoners and escapees, and Gaston Julia and Pierre Fatou.
After World War I, Julia and Fatou were interested in iterating two variable (or complex) equations using recursion. They chose an equation and iterated it using various starting points. Mathematicians call this sort of problem a dynamical system . They found that if you looked at different starting points, different behaviors would emerge. Let's look at the simplest interesting case:
f(Z) = Z^2 + C
where C is any point (complex number) inside the circle of radius 2. We are only interested in those points because that is where we will be looking for the Mandelbrot set eventually.
Here's an experiment to try: Let C = (0,0) and start with the point (0,1). What happens?
Student: Let's see;
Z = (0,1) | f(0,1) = (0,1)^2 + (0,0) = (-1,0) + (0,0) = (-1,0) |
Z = (-1,0) | f(-1,0) = (-1,0)^2 + (0,0) = (1,0) + (0,0) = (1,0) |
Z = (1,0) | f(1,0) = (1,0)^2 + (0,0) = (1,0) + (0,0) = (1,0) |
Z = (1,0) | f(1,0) = (1,0)^2 + (0,0) = (1,0) + (0,0) = (1,0) |
I don't need to go any further; I get stuck at (1, 0).
Mentor: That's right. Try another starting point: (1,1) with the same C = (0,0).
Student: Let's see;
Z = (1,1) | f(1,1) = (1,1)^2 + (0,0) = (0,2) + (0,0) = (0,2) |
Z = (0,2) | f(0,2) = (0,2)^2 + (0,0) = (-4,0) + (0,0) = (-4,0) |
Z = (-4,0) | f(-4,0) = (-4,0)^2 + (0,0) = (16,0) + (0,0) = (16,0) |
Z = (16,0) | f(16,0) = (16,0)^2 + (0,0) = (256,0) + (0,0) = (256,0) |
Z = (256,0) | f(256,0) = (256,0)^2 + (0,0) = (65536,0) + (0,0) = (65536,0) |
I don't need to go any further; the first number will just get bigger with each iteration.
Mentor: Good. Actually, mathematics tells us that when the point gets outside of the circle of radius 2, it must "escape." So, you didn't have to go as far as you did to tell.
Now try one more starting point: (1/2,1/2)
Student: Let's see;
Z = (1/2,1/2) | f(1/2,1/2) = (1/2,1/2)^2 + (0,0) = (0,1/2) + (0,0) = (0,1/2) |
Z = (0,1/2) | f(0,1/2) = (0,1/2)^2 + (0,0) = (-1/4,0) + (0,0) = (-1/4,0) |
Z = (-1/4,0) | f(-1/4,0) = (-1/4,0)^2 + (0,0) = (1/16,0) + (0,0) = (1/16,0) |
Z = (1/16,0) | f(1/16,0) = (1/16,0)^2 + (0,0) = (1/256,0) + (0,0) = (1/256,0) |
Z = (1/256,0) | f(1/256,0) = (1/256,0)^2 + (0,0) = (1/65536,0) + (0,0) = (1/65536,0) |
I don't need to go any further; the first number will just get closer to 0 with each iteration.
Mentor: That's right! Now you have seen all of the ideas needed to understand prisoners and escapees. The three behaviors above are exactly what Julia and Fatou noticed about all kinds of functions of the form Z^2 + C. The iterations either:
- Get closer and closer to 0 -- we say they approach 0 . These are the prisoners.
- Get larger and larger -- we say they approach infinity escapees.
- Get trapped -- these points are the boundary points between the prisoners and escapees. The set of all of these points for a function is called the Julia Set.
Student: So for the function f(Z) = Z^2 + (0,0) the point (1,1) is an escapee, the point (1/2,1/2) is a prisoner and the point (0,1) is in the middle between?
Mentor: Yes! It turns out that for the function f(Z) = Z^2 + (0,0), the Julia set is the circle of radius 1 centered at (0,0). Every point inside the circle is a prisoner, every point outside the circle is an escapee, and every point on the circle is neither!
Student: Surely this isn't some sort of fractal?
Mentor: You're right. BUT! change the C to something other than (0,0) and you get really weird Julia sets. Try iterating a few different f(Z) = Z^2 + C functions using the Two Variable Function Pump and then have a look at some Julia sets using the Julia Set Builder . In the Julia set builder, the black set is the prisoner set and the colors around the prisoners are the escapees. The colors are chosen depending on how many iterations it took the starting point to get out of the circle of radius 2 -- which guarantees that it escapes.
Some of the more famous Julia sets are:
- C = (-1,0)
- C = (0,-1) -- the Dendrite
- C = (1/2, 0)
- C = (-0.1, 0.8) -- the Rabbit
- C = (.36, .1) -- the Dragon
One last comment: Julia sets are chaotic as well as fractal! The iterates for the points in the Julia set (the border between prisoners and escapees) jump around in very irregular ways, and if we change to another point close by in the Julia set, the behavior can be completely different. Remember that this is exactly what chaos was: Small changes in the starting point can produce large changes in the results. Again we see how something chaotic ends up having a predictable overall pattern!