What does it mean for a function to be continuous?

Received wisdom is that this was sorted out in the nineteenth century by Cauchy and Weierstrass; even if the epsilon-delta definition is a bit of a mouthful for students, once they have mastered it there is no further problem.

But an interesting article by J. F. Harper in the most recent *BSHM Bulletin* (doi 10.1080/17498430.2015.1116053) looks at definitions used by Bolzano, Cauchy, Duhamel, Weierstrass, Heine, Jordan, Whittaker, Goursat, Pierpont, Hobson, Hardy, Hausdorff, Courant, Siddons, Rudin, Bartle and Sherbert, Carlson, Gowers, and Kudryatsev, and finds numerous inconsistencies, some of them between different works by the same author.

The procedure is to compare these authors’ definitions on four particular real functions:

- the function which is 0 at the origin and undefined elsewhere;
- the function which is 0 on the positive reals and undefined elsewhere;
- the function which is 0 on the rationals and undefined elsewhere;
- the function which is 0 at the origin and sin(1/
*x*) at the non-zero real number*x*.

But hang on; the first three are not functions on the real numbers!

So there is a more basic confusion, about what is meant by a function.

I recommend to you Littlewood’s article “From Fermat’s Last Theorem to the abolition of capital punishment”, which appears in his *Miscellany* (a book you should certainly read!). Littlewood quotes, as an “intellectual treat”, the muddled ramblings of Forsyth, in his *Theory of Functions of a Complex Variable*, stretching over two pages. Littlewood goes on to say,

Nowadays, of course, a function *y* = *y*(*x*) means there is a class of “arguments” *x*, and to each *x* there is one and only one “value” *y*. After some trivial explanations (or none?) we can be balder still, and say that a function is a class *C* of pairs (*x,y*) (order within the bracket counting), *C* being subject (only) to the condition that the *x*‘s of different points are different.

Actually, even these two definitions are not equivalent; the second allows all four functions above, while the first forbids the first three.

We normally define a function *f* : *X* → *Y*. The correct logical definition is as a set of ordered pairs, but we should replace Littlewood’s second condition by the condition that each element of *X* occurs once and only once as the first component of an ordered pair in the set. In other words, the domain is part of the definition of a function.

I tend to explain this to students by saying that a function is a black box: you put in an element *x*, and out comes an element *y*. (Unlike earlier mathematicians, we neither know nor care how the black box actually operates; it is defined solely by the inputs and corresponding outputs). But, like all good black boxes, it comes which a guarantee, which states that if an element of *X* is put in, then out will come an element of *Y*. If you put in an element which does not belong to *X*, the behaviour is not guaranteed; anything might happen (but to agree with the logical definition, it is perhaps better to say that nothing comes out).

This definition has the disadvantage that the codomain is also part of the definition of the function. So the squaring function from the natural numbers to the real numbers is a different function from the squaring function from the natural numbers to the natural numbers.

I am not too troubled by this. After all, in the standard constructions of the number systems, the natural number 1, the integer 1, the rational number 1, the real number 1, and the complex number 1 are completely different objects; yet we use them as if they are all the same thing, without getting into trouble.

If the domain is part of the definition of a function, then Harper’s first three functions are not functions from the real numbers to the real numbers. I would be much more interested to have genuine examples of real functions which discriminated among proposed definitions of continuity.

Here is how I view functions in the context of relation theory —

☞ Species of 2-adic relations

So we are in agreement.

I was surprised, when writing this, that Littlewood could be so sloppy …

Then when it comes to continuous functions, the last definition I learned made things relative to the topologies on the domains, inverse image of open sets being open, if I remember right …

For real functions, I prefer to palm the difficulty off onto the definition of limit, and say that a function is continuous if its limit at any point is equal to its value. But unlike the one you give, that doesn’t work for arbitrary topological spaces, where limits may fail to be unique.

I haven’t looked into the history outside of what little I experienced myself, but the “domains are part of the definition” philosophy appeared to come in with the rise of category theory. In related developments, this turned out to be a very natural standpoint for computer science, especially for programmers who favored a “strong-typing” approach to data structures and mathematical objects.

In some circles it seems to be standard to talk about a complex analytic ‘function’ without specifying the domain, when what is actually meant is a whole family of functions with different domains that are related to each other by means of analytic continuation. It is obviously convenient to be able to compose such ‘functions’ and to talk about singularities/branches cancelling out and so on, without having to chase the domains around.

Indeed. In the case of branchpoints we can sometimes make this into a function by changing the domain to a Riemann surface covering the plane or sphere. Other singularities are more difficult, and you have to talk about the plane punctured at some points (as indeed they do). In an ideal world we would probably use a different word for this kind of concept.

Sure, we can always define a manifold using an atlas of charts but all the chart functions would be defined in the usual way. Incidentally, this is one of the places where we begin to see the utility and perhaps the necessity of using triadic relations to hold everything together.