In my last post I showed off this tantalizing picture:
This pattern of infinitely nested circles is called an Apollonian gasket. Over the next post or two I’ll explain some cool math behind actually constructing them. Mostly I will state things without proof—because I don’t yet know the proofs! [Perhaps this summer I will try to spend a day tracking down literature to understand the proofs and see how hard they would be to explain. But in any case, you can still appreciate the beautiful results without understanding the proofs!]
First of all, note that it’s possible to have four circles which are all mutually tangent (that is, each circle is tangent to each of the others). As mentioned before, this is one of those things I don’t have a proof for—but it is intuitive enough that you can probably convince yourself it’s true just by looking at some examples. Here’s one:
In the above example, the four circles are all externally tangent. However, we can also have three of the circles inside the fourth, like this:
(It also makes sense to consider the degenerate cases where one or two of the circles are straight lines—i.e. circles with an “infinite radius”—but we’ll leave those cases aside for this post.)
Let’s call such a set of four mutually tangent circles a kissing set. Given any three mutually tangent circles, it turns out there are exactly two other circles which would complete a kissing set. For example, if we start with these three mutually tangent circles:
then we could pick either of the red circles shown below to complete a kissing set:
At this point you might enjoy returning to the picture of the Apollonian gasket above, and finding kissing sets embedded in it!
So, given a kissing set, we can choose any one of the four circles, remove it, and add the other circle which is mutually tangent to the three remaining circles. That is, we can pick one of the four circles and replace it with its “alternate”. This process defines an infinite tree, where every node corresponds to a kissing set, and every node has four neighbors, corresponding to replacing each of the four circles with its alternate. I think (but have no proof) that this really is a tree, that is, no nodes are ever repeated.
To draw an Apollonian gasket, pick any kissing set (it doesn’t matter which!), and start exploring the tree from there. You can stop the recursion when the circles get too small to draw. Here’s a small part of the tree used to generate the gasket at the beginning of this post (turned sideways so it will fit better):
But, given three mutually tangent circles, how do we actually find a fourth circle to complete a kissing set? Given a kissing set, how can we compute the “alternate” circle for a given circle? That will be the subject of my next post!