Back to Contents.

RECURSION
The keys and what they do (you may have to click on
the square to activate):
  • [ -- rotate left a bit (do several times);
  • ] -- rotate right a bit (do several times);
  • r,g,b -- change outer color to red, green or blue;
  • space -- cycle edge color red, green, blue;
  • t -- try it;
  • 0 -- nonchaotic linear recursion;
  • 1 to 9 -- passing through chaos (see below);
A recursive process takes a value, modifies it,
gets a new value, takes that new value, modifies
it the same way to get yet a newer value, and takes
that and modifies it, etc, etc, and so forth.

When this shockwave app begins you should see
a red square with a blue interior. It appears
initially that nothing is happening, but in fact
several times a second a picture is being taken
of the 512x512 pixel area the square sits in,
and that picture is then pasted back onto the
red square. Sooooo... if the red square is tilted,
then the picture that will be pasted inside it
will be a tilted square, but now a bit more tilted.
And the next cycle a picture will be taken of a
tilted square inside a tilted square, and when that
is pasted on there will be three squares, etc.

Press the "]" key 7 or 8 times (if nothing happens,
click the square first, then press the key). You
should see nested squares spiralling in to an
infinitely small center (or it would be if your
computer monitor had infinite resolution).
This recursive nesting of squares is linear and orderly. It converges to a fixed image each time you release the "[" or "]" key.
The function f(x) = Ax(1 - x) is nonlinear (quadratic). If we restrict x to the domain 0 to 1, and the constant A to values from
0 to 4, then the range of f(x) will also be 0 to 1. Starting from some x ≠ 0 or 1, we generate a sequence of values in that
range by feeding f(x) successively back into itself. For A ≤ 3.0 the sequence converges to a single value, but for A > 3.0
strange things begins to occur. At A = 3.1, for example the sequence converges to two values, alternating between. Later this
shifts to 4 values, then 8, then 16, etc. But somwhere between A = 3.5 and A = 3.6 the sequence becomes chaotic. There are
windows of order within the subsequent chaos (each infinitely complicated with their own regions of chaos), but when some value of A
generates chaos the seuence never settles anywhere.

You can simulate this in this animation. Pressing any of the keys "1" to "9" leads to the function f(x) with A = 3.1 to 3.9.
This is then used to generate a rotation of the square. You should see chaotic behavior for the keys "6" through "9". Pressing "0"
gets back to linear orderliness (after 30 seconds without a key press linear orderliness is also restored (try it!)).