Visual walkthrough — Uniform continuity — difference from pointwise
Step 1 — The picture that starts everything: two dots and a box
WHAT. Draw the graph of some function . Pick two points on the horizontal axis and call them and . "" just means "the height of the curve above the point ". So above and sit two heights, and .
Two numbers now matter:
- the horizontal gap — how far apart the dots are sideways. The two vertical bars mean "distance", i.e. "always a positive amount, ignore direction".
- the vertical gap — how far apart the curve's heights are up–down.
WHY. Continuity is a promise about a trade: "keep the sideways gap small and I promise the up–down gap stays small." To reason about it we must first name these two gaps and see them as two sides of a box. That box is the whole story.
PICTURE. The red box below has width and height . Continuity controls the height by controlling the width.

Step 2 — Two dials: (the goal) and (the effort)
WHAT. Two Greek letters enter. They are just names for two positive numbers:
- (epsilon) — the height tolerance you are challenged to meet: "make the output gap smaller than ". It is handed to you by an opponent; you don't get to choose it.
- (delta) — the width you are allowed to use: "as long as the input gap is below ". You get to choose this.
The whole game: someone names ; you must answer with a so that Read the arrow as "guarantees". The symbol is "strictly less than".
WHY these two dials and not one? Because continuity is a cause-and-effect promise. One dial () sets the effect you want; the other () is the cause you're allowed to control. You cannot state the promise with a single number — you need the target and the effort.
PICTURE. Think of an -tall horizontal band around the height , and a -wide vertical band around . The rule says: any dot inside the -wide band must land inside the -tall band.

Step 3 — The ONE quantifier swap (drawn, not just stated)
WHAT. Now we ask the decisive question: when you choose , are you allowed to look at where the point is? To answer precisely we write the full rule for both flavours, keeping every piece — the tolerance , the width , the point sweep, and the closeness implication:
Reading each piece: = "for every", = "there is", = the height tolerance (Step 2), = the width you supply, and the arrow carries the same closeness promise in both — "if inputs are within then outputs are within ." Only the ordering of the boxed pieces differs:
- Pointwise: you first stand at a fixed point , then (given ) choose . Because sits after , your width may be re-chosen at every point — write it , " allowed to depend on both and the location ".
- Uniform: sits before the points are revealed, so one width must serve all pairs at once — write it : depends on the tolerance only, never on location.
WHY this matters visually. On a curve whose steepness changes, "one for the steep part" and "one for the flat part" are different sizes. Pointwise lets you switch region by region; uniform forbids switching. That single freedom-vs-restriction is what we now watch break.
PICTURE. Left panel: a flat region needs a wide ; a steep region needs a narrow . Pointwise picks each locally (both are fine). Uniform must pick ONE red — and the narrowest one wins.

Step 4 — Why steepness controls the height gap: the slope factor
WHAT. Take the concrete curve . Compute the output gap and factor it:
Term by term:
- is the input gap you control (Step 1).
- is an amplifier: it multiplies the input gap to produce the output gap. Where is large, a tiny input gap gets blown up into a large output gap.
WHY factor? Because is the one algebra move that separates "the gap I control" from "the multiplier I don't". Without factoring, is opaque; after factoring, the danger — the growing — is staring at us.
PICTURE. The output gap (height of the red box) is the input gap stretched by the local steepness . Slide the pair rightward and the same-width box grows taller and taller.

Step 5 — The break: no single survives on all of
WHAT. To force we would need
As (i.e. as we walk to the right forever), the allowed width . A single fixed cannot stay below a target that is heading to . So uniform continuity fails on .
Let's make the failure explicit — this is the negation of uniform continuity in action:
WHY this construction? We engineered two points close in input but far in output by parking them where the amplifier is large. That is precisely what "not uniformly continuous" means: for some , no works.
PICTURE. The narrow red input gap sits far right where the parabola is steep; its box is taller than the line no matter how narrow we make it.

Step 6 — The rescue: cap the amplifier by staying on
WHAT. Restrict to the closed interval . Now both , so the amplifier is bounded:
Therefore
Choose . Then gives . Crucially contains no — one width serves the entire interval. That is uniformity.
WHY it works now. On the curve cannot get infinitely steep; the amplifier tops out at . Capping the amplifier caps how much a fixed width can be stretched — so a fixed width is enough. This is the Heine–Cantor Theorem in miniature: on a compact (closed and bounded) interval, continuity is automatically upgraded to uniform continuity. The engine is the Lebesgue number lemma — cover by local -balls, extract a finite subcover, take the minimum ; a minimum of finitely many positive numbers is still positive. On unbounded that "minimum" becomes an infimum of infinitely many shrinking numbers, which can be — and Step 5 is exactly that collapse.
PICTURE. Chop into local balls each with its own ; finitely many cover the interval; the smallest red works everywhere.

Step 7 — The degenerate warning: bounded but NOT closed is not enough
WHAT. One might think " worked because it was small/bounded — so any bounded interval works." It does not. Consider on the open interval . It is bounded as a set, and is continuous there, yet near the curve shoots to infinity. Let us find the amplifier exactly, the same way we factored . Put the two fractions over a common denominator:
Term by term: is again the input gap you control; the amplifier is now , and as this blows up ( so ).
To force the output gap below we would need , and the right-hand side collapses to near the origin. Concretely, fix and any candidate ; pick
yet
which exceeds as soon as . Two points within the width, output gap huge — exactly the Step 5 mechanism, now driven by instead of .
WHY it fails. is bounded but not closed: the troublesome endpoint is missing, so nothing stops the amplifier from becoming arbitrarily large as we approach it. Compactness needs closed and bounded (via the Heine–Cantor Theorem); drop "closed" and the rescue of Step 6 collapses.
PICTURE. Two dots near with a tiny sideways gap; their heights on the spike are miles apart — the box is arbitrarily tall for arbitrarily thin width.

Step 8 — The other degenerate case: uniform WITHOUT bounded slope ()
WHAT. Symmetric warning in the other direction: "uniform continuity requires bounded slope." Not so. Take on . Its slope is as — unbounded — so it is not Lipschitz and the MVT shortcut doesn't apply. Yet it is uniformly continuous, and here is the clean derivation of the bound that saves it.
Assume (relabel if needed). Multiply the output gap by the conjugate — the standard trick that clears square roots:
Now compare with . Since we have (bigger inside, bigger root) and , so the denominator satisfies . A bigger denominator makes the fraction smaller:
In symmetric form: . The output gap is bounded by the square root of the input gap — gentler than linear, yet still shrinking to as the input gap shrinks, uniformly in location. Choose :
Again has no in it — uniform.
WHY show this. To fence off the whole space of possibilities: Lipschitz (bounded slope) is sufficient but not necessary. A curve can be infinitely steep at a point and still be uniformly continuous, provided the steepness is "integrable" enough that the square-root bound holds.
PICTURE. Near the curve is vertical, yet the output gap is capped by — the box height never outruns the tolerance.

The one-picture summary
Everything above compresses into a single comparison: is the amplifier bounded on the whole domain?
- Bounded → one works → uniform (right box of on ; also via the bound).
- Unbounded → must shrink to → not uniform ( on ; near ).

Recall Feynman retelling — the whole walkthrough in plain words
Draw a curve. Put two dots on it. A box appears between them: its width is how far apart they are sideways, its height is how far apart the curve's values are up–down. Continuity is a promise: keep the box narrow and I'll keep it short. Someone shouts a height limit ; you answer with a width that keeps every box under that height. The only question that separates the two flavours is: do you get to choose a different width in each region (pointwise), or must you pick one width for the entire page (uniform)? For , the local steepness is — it stretches your box taller the farther right you go. On the whole line it grows without limit, so any single width eventually produces a box that's too tall: continuous but not uniformly so. Chop the line down to and the steepness can't exceed ; now one width () tames every box — that's the compactness rescue (Heine–Cantor). But watch the traps: is bounded yet not closed, and still explodes near the missing edge (its amplifier ), so "small interval" isn't enough; and is infinitely steep at yet stays uniform because its box height only grows like the square root of the width. One idea rules them all: uniform continuity ⇔ the amplifier is bounded across the whole domain.
Connections
- Continuity (pointwise) — the weaker promise (Step 3) this walkthrough strengthens.
- Heine–Cantor Theorem — the compactness rescue of Step 6.
- Compactness / Lebesgue number lemma — the finite-subcover + minimum- engine.
- Lipschitz continuity — bounded amplifier as a sufficient test (Steps 6, 8).
- Mean Value Theorem — turns bounded slope into a Lipschitz bound.
- Cauchy sequences — uniform continuity preserves Cauchyness; pointwise need not.