Analysis: A Coda

In musicology, a coda allows the composer to "work an idea through to its structural conclusions" and the listener to "take it all in" by creating a "sense of balance." I'm not a musician, but the term coda came to mind when writing this essay. This essay feels different than a summary or a synopsis or a preview, not just because I've already started my writing project on this blog, and certainly not because I've finished the project (I have a very, very long way to go), but I do have a good feel for what the overall balance ought to be.

What's going on in analysis? Why am I writing these essays? The short answer has to do with my long-standing fascination with continuity as a concept. I think the fuller answer requires retracing the broad steps through the subject, putting as much of the material in balance as possible.

We start with a collection. We find a way to describe sub-collections via the neighborhood concept. This concept has logical structure: the topology axioms. This gives the collection a basic description.

Now we turn attention to what's in the collection. The most useful thing we might do is index or count items. We now need to specify one collection by means of another. So we define a map i:JXi: J \to X that says "every index points to an item." Considering each nJn \in J at a time, we restructure items aXa \in X into a sequence (an)(a_n).

We have two logical structures to describe the collection now: the neighborhood view from above via topology XX and the sequential view from the side via index set JJ. The limit concept shows us how taking both logical viewpoints simultaneously points out particular elements -- limit points.

Yet the limit point derived this way considers the whole collection XX. What if we want to work with subcollections? It's easy to show the logical structure carrying through to the subcollection. At the same time, as we construct more diverse ways to construct a subcollection via mapping, within a particular topological space, we need to make certain that these mappings adequately admit a limit.

One function points to one item in the target collection for each item in the source collection f:EYf: E \to Y where EXE \in X. By analogy, we basically had the same situation with the indexing collection i:JXi: J \to X such that each index points to one item in the collection XX. Effectively, the input to ii was an index, using which ii "knew" to pick out an item in XX. Now seems different, as ff changes the value of aEXa \in E \sub X to some other value in YY ... but is it so different?

We really have a composition of mappings... one after another. i:JXi: J \to X and f:EYf: E \to Y so that l:(JX)Yl: (J \to X) \to Y which traditionally is signified by the limit expression

limnpf(an)=q \lim_{n \to p} f(a_n) = q

which says, in effect, "form a sequence (an)(a_n) from nJn \in J and aEXa \in E \subset X with limit pp. Evaluate every item in the sequence up to its limit with respect to ff. The results form a subsequence, whose limit is qq."

Once we get used to the mechanics of this construction, we ask ourselves, how can we tell which item is the limit point? We need to tell all these items apart from one another, as the application of the mapping ff may have obscured our view.

Let's take a view from below, say, from the perspective of the elements themselves. We'll do this in two parts: neighborhoods ought to be exclusive (Hausdorff) and maintain a certain amount of distance from one another. Hausdorff makes this viewpoint possible to "see" individual items in the collection, and the distance metric gives us a good view from below. We get a metric space: the three topology axioms, Hausdorff condition, and three metric axioms are satisfied.

We can now determine which element is the function ff limit point by systematically measuring distance before and after the mapping from EE to YY.

Before mapping, we define a delta neighborhood using the metric space EXE \subset X distance

0<dX(x,p)<δ 0 < d_X(x, p) < \delta

We need to do this for all inputs xx to ff. In particular, we need to do this with regards to the results of the mapping, which will have an epsilon neighborhood using its metric space's distance

dY(f(x),q)<ϵ d_Y(f(x), q) < \epsilon

Notice, for the delta neighborhood, pp enters as a limit on the domain of function ff and, for the epsilon neighborhood, qq enters as a limit on the range of the function evaluation f(x)f(x). The two work closely together: as we adjust ϵ\epsilon then δ\delta must adjust accordingly; otherwise ff doesn't make a whole lot of sense as a function, as any number of inputs point to vanishingly fewer outputs.

The question then becomes whether f(p)=limf(x)=qf(p) = \lim f(x) = q can be computed. Well... first we need to have the function defined at pp. We need to evaluate f(p)f(p). Then we realize all we need to do is check that the limit holds for pp

dY(f(x),f(p))<ϵ d_Y(f(x), f(p)) < \epsilon

as above for all xx with regards to

0<dX(x,p)<δ 0 < d_X(x, p) < \delta

In other words, asking whether f(p)=limf(x)=qf(p) = \lim f(x) = q can be computed is the same as observing, when we get to the limit point in the source from a delta neighborhood, we still end up in an epsilon neighborhood in the target. We're asking if the function is continuous at pp.

One more viewpoint. We could have a collection of functions. Why? Well, for example, we might have some knowledge of sources and some knowledge of targets but no knowledge of the mapping involved. We want to find an accurate and unique mapping. We want a limit for all possible maps.

So we enumerate a sequence of functions (fn(x))(f_n(x)) and hypothesize some limiting function

f(x)=limnfn(x) f(x) = \lim_{n \to \infty} f_n(x)

We also want to preserve continuity within the functions themselves -- this preservation isn't guaranteed, just the same as, by analogy, the preservation of order wasn't guaranteed when we switched from sequence limits to function limits.

Let's expand this question to

limtxlimnfn(t)=limnlimtxfn(t) \lim_{t \to x} \lim_{n \to \infty} f_n(t) = \lim_{n \to \infty} \lim_{t \to x} f_n(t)

Does this exchange work? In general, exchanging the limit arguments does not work. We need a stronger criteria for candidate functions to preserve accuracy in the mappings. We need (fn(x))(f_n(x)) to converge uniformly.

Once we have this uniform convergence, the capstone theorem is Weierstrauss' approximation theorem. As a nice dessert, we get a formal concept of an algebra that, incidentally, was hinted at by three continuity proofs from topological fields.

That's the heart of analysis! I should say that this all makes me extraordinarily happy. The whole body of knowledge - once we fill in the many, many details - is so precise and elegant, and its tools so incredibly useful, that I'm content to work through these ideas again and again.

Returning to my musical metaphor, this collection of ideas are like a grand symphony that reward repeated performances, now exploring this chord, or focusing on that section, or repeating those phrases, so we become increasingly cognizant of the whole art.