From a Metric to a Uniform Estimate
For a sequence of real-valued functions, there are two different ways to ask whether its terms become close. At each fixed input \(x\), the values may become close as the indices increase. Alternatively, one bound may control the differences at every input simultaneously. The second condition is uniform: it is exactly the Cauchy condition for the sup metric, when that metric is defined.
Let \(X\) be a nonempty set. Write \(B(X)\) for the set of bounded functions \(f:X\to\mathbb{R}\). For \(f,g\in B(X)\), their difference is bounded, so the following supremum is finite.
These definitions differ in where the bound is expressed: the metric uses one supremum, while the uniform condition states the bound at every input. The two conditions agree. The order of the quantifiers matters: \(N\) must work for every \(x\), not be chosen separately at each \(x\).
Proof. Suppose first that \((f_n)\) is Cauchy in \(d_\infty\). Given \(\varepsilon>0\), choose \(N\) so that \(d_\infty(f_m,f_n)<\varepsilon\) whenever \(m,n\ge N\). For every \(x\in X\), the value \(|f_m(x)-f_n(x)|\) is at most its supremum \(d_\infty(f_m,f_n)\). Therefore \(|f_m(x)-f_n(x)|<\varepsilon\) for every such \(x,m,n\), which is uniform Cauchyness.
Conversely, suppose \((f_n)\) is uniformly Cauchy, and let \(\varepsilon>0\). Apply its definition with \(\varepsilon/2\). There is \(N\) such that \(|f_m(x)-f_n(x)|<\varepsilon/2\) for every \(x\in X\) whenever \(m,n\ge N\). Taking the supremum gives \(d_\infty(f_m,f_n)\le\varepsilon/2<\varepsilon\). The intermediate non-strict inequality is important: a supremum of numbers strictly below a bound need not itself be strictly below that bound. The margin \(\varepsilon/2\) supplies the strict inequality required by the metric definition. \(\square\)
The proof uses only the definition of the supremum and the two Cauchy conditions. It does not say that a sequence converges, nor does it establish completeness of a function space. Those are separate questions.
Pointwise Cauchy Is Weaker
A sequence \((f_n)\) is pointwise Cauchy if, for each fixed \(x\in X\) and every \(\varepsilon>0\), there is an index \(N\) (which may depend on \(x\)) such that \(|f_m(x)-f_n(x)|<\varepsilon\) whenever \(m,n\ge N\). Uniform Cauchyness requires one \(N\) to work for all \(x\). Uniform Cauchyness implies pointwise Cauchyness by using the same \(N\) at each input, but the converse can fail.
Worked Example: Uniform Cauchyness of a Simple Sequence
On \(X=[0,1]\) with its usual topology, let \(f_n(x)=x/n\). Each \(f_n\) is bounded. For \(m,n\in\mathbb{N}\),
The last equality holds because \(0\le x\le1\), so the expression is at most \(|1/m-1/n|\), and equality occurs at \(x=1\). If \(m,n\ge N\), then \(1/m\le1/N\) and \(1/n\le1/N\), and the difference between these two numbers is at most \(1/N\). Given \(\varepsilon>0\), choose \(N\in\mathbb{N}\) with \(1/N<\varepsilon\). It follows that \(d_\infty(f_m,f_n)\le1/N<\varepsilon\) for all \(m,n\ge N\). Hence the sequence is uniformly Cauchy.
Numerical check: for \(m=4\) and \(n=10\), the coefficient difference is \(|1/4-1/10|=|5/20-2/20|=3/20\). At \(x=1\) the function difference is \(3/20\), and at every \(x\in[0,1]\) it is at most \(3/20\). Thus the supremum is indeed \(3/20\).
Worked Example: Pointwise Cauchy but Not Uniformly Cauchy
On \([0,1]\), let \(f_n(x)=x^n\). For a fixed \(x<1\), the numbers \(x^n\) tend to \(0\). More directly, if \(m>n\), then \(0\le x^m\le x^n\), so \(|x^m-x^n|\le x^n\), and \(x^n\) tends to \(0\). At \(x=1\), every term equals \(1\). Thus, at each fixed \(x\), the sequence is Cauchy in \(\mathbb{R}\), and so it is pointwise Cauchy.
It is not uniformly Cauchy. For each \(n\in\mathbb{N}\), choose \(x_n=2^{-1/n}\), which lies in \([0,1]\). Then \(x_n^n=1/2\) and \(x_n^{2n}=1/4\), so
For any proposed Cauchy index \(N\), take \(n\ge N\) and use the pair of indices \(n,2n\). The difference at \(x_n\) is \(1/4>1/5\). Therefore the uniform Cauchy condition fails for \(\varepsilon=1/5\), no matter how large \(N\) is.
Check: the same input \(x_n\) is allowed to depend on \(n\) because uniform control must hold at every input. The pointwise Cauchy condition does not test a moving input in this way; it fixes \(x\) first.
Uniform Bounds for Tails
A useful way to prove uniform Cauchyness is to bound all function values by a summable numerical sequence. The bound must be independent of \(x\). This method controls the whole difference between two terms, rather than only the difference between consecutive terms.
Proof. Since \(\sum_{k=1}^{\infty}a_k\) converges, its tails tend to zero: for every \(\varepsilon>0\), there is \(N\) such that \(\sum_{k=N+1}^{\infty}a_k<\varepsilon\). If \(m>n\ge N\), then for each \(x\in X\), the triangle inequality and the assumed bounds give
If \(n>m\ge N\), interchange \(m\) and \(n\) in the same estimate; if \(m=n\), the difference is \(0<\varepsilon\). Thus one \(N\) works for every pair of indices at least \(N\) and every \(x\), which is uniform Cauchyness. \(\square\)
Worked Example: A Geometric Tail Estimate
On \(X=[0,1]\), define \(g_k(x)=x^k/2^k\) and \(s_n(x)=\sum_{k=1}^{n}g_k(x)\). Since \(0\le x\le1\), we have \(0\le g_k(x)\le1/2^k\) at every input. The geometric series \(\sum_{k=1}^{\infty}1/2^k\) converges, so the proposition applies. In detail, when \(m>n\),
The geometric tail equals \(1/2^n\); for any \(\varepsilon>0\), choose \(N\) so that \(1/2^N<\varepsilon\). Then \(m,n\ge N\) implies \(|s_m(x)-s_n(x)|<\varepsilon\) for every \(x\), using the estimate with the smaller of the two indices.
Numerical check: take \(n=3\) and \(m=6\). At \(x=1\), the difference is \(1/16+1/32+1/64\). Rewriting with denominator \(64\) gives \(4/64+2/64+1/64=7/64\). For any \(x\in[0,1]\), each term \(x^k/2^k\) is at most \(1/2^k\), so the difference is at most \(7/64\). Equality occurs at \(x=1\), confirming that this is the supremum for this pair of indices.
A Common Pitfall: Consecutive Terms Are Not Enough
It is tempting to show that \(d_\infty(f_n,f_{n+1})\) tends to zero and infer that \((f_n)\) is Cauchy. That inference is invalid: the Cauchy condition compares every pair of sufficiently late terms, not just neighboring terms. For example, for \(f_n(x)=x^n\), the maximum of \(x^n-x^{n+1}=x^n(1-x)\) on \([0,1]\) occurs at \(x=n/(n+1)\). Differentiating on \((0,1)\) gives derivative \(x^{n-1}(n-(n+1)x)\), which is positive before that point and negative after it. Hence
and this quantity tends to \(0\). But the earlier computation gives \(d_\infty(f_n,f_{2n})\ge1/4\) for every \(n\), so the sequence is not Cauchy. The wrong calculation is to check only \(d_\infty(f_n,f_{n+1})\to0\) and conclude that all late terms are close. The correction is to bound \(d_\infty(f_m,f_n)\) for arbitrary \(m,n\) beyond a single index.
When checking a proposed uniform estimate, keep the quantifiers visible: choose \(N\) from \(\varepsilon\), then verify the bound for every pair \(m,n\ge N\) and every \(x\in X\). A bound that depends on \(x\), or that only handles adjacent indices, does not establish uniform Cauchyness.
Check Your Understanding
For each question, distinguish carefully between a bound at each fixed input and a bound that is uniform over the whole domain.
- State the difference between pointwise Cauchyness and uniform Cauchyness, including which quantities the index \(N\) may depend on.
- For \(f_n(x)=1/n\) on any nonempty set \(X\), compute \(d_\infty(f_m,f_n)\) and show that the sequence is uniformly Cauchy.
- For \(f_n(x)=x^n\) on \([0,1]\), verify that \(x_n=2^{-1/n}\) gives \(|f_n(x_n)-f_{2n}(x_n)|=1/4\).
- Suppose \(|g_k(x)|\le a_k\) for all \(x\), where \(a_k\ge0\) and \(\sum_k a_k\) converges. Which estimate proves the partial sums are uniformly Cauchy?
- Why does \(d_\infty(f_n,f_{n+1})\to0\) alone not imply that \((f_n)\) is Cauchy?