➗ Mathematics · Graduate · MATH 410

Real Analysis

A rigorous course in the analysis of the real line, the logical foundation beneath calculus. Starting from the completeness of the real numbers, you will build sequences, series, limits, continuity, differentiation, and the Riemann integral entirely from epsilon-delta and epsilon-N definitions, proving the central theorems along the way. Every idea is defined precisely and illustrated with…

Start the interactive course (quizzes, progress, videos) →

Free forever. No sign-up, no ads. 17 lessons. The full lesson text is below so you can read it right here.

Module 1: The Real Number System and Completeness

Build the real numbers as a complete ordered field and master suprema and infima.

Ordered Fields and the Gap in the Rationals

  • State the field and order axioms that the rationals and reals share.
  • Prove that no rational number squares to 2.
  • Explain why the rationals have holes that motivate the real numbers.

Real analysis is calculus done honestly. Every limit, derivative, and integral you met before rested on one unstated assumption: that the real line has no gaps. This course makes that assumption explicit and derives everything from it. In this first lesson we set up the algebraic and order structure that the rationals and the reals share, and then we locate the exact property the rationals lack. That property, completeness, is the engine of the entire subject, and knowing precisely where Q fails will tell us exactly what R must supply.

Why we start from axioms

An axiom system is a short list of statements we agree to accept, chosen so that everything else can be proved from the list. Working this way has a practical payoff. When a proof goes wrong, you can trace the error to a specific unjustified step, because every legal step is either an axiom or a previously proved fact. It also has a mathematical payoff: a theorem proved from the axioms holds in every structure that satisfies them, not only in the picture of the number line you have carried since childhood.

Here is the working mindset of the course. A claim is not true because a graph suggests it or because a calculus class asserted it. It is true because it follows from the axioms by steps you can point to. Pictures stay valuable, and we will draw plenty, but their role changes: a picture proposes, a proof disposes. Much of learning analysis is learning to move comfortably between those two registers.

The field axioms

A field is a set F with two operations, addition and multiplication, satisfying the familiar rules: both operations are commutative and associative, multiplication distributes over addition, there are distinct identities 0 and 1, every element has an additive inverse, and every nonzero element has a multiplicative inverse. The rationals Q and the reals R are both fields; the integers Z are not, because 2 has no integer reciprocal.

It is worth pausing on what the field axioms buy. They are exactly the licenses that make ordinary algebra legal. Solving a + x = b produces x = b - a because additive inverses exist and addition is associative; solving ax = b for nonzero a produces x = b/a because multiplicative inverses exist. Every routine manipulation you will perform this term is a quiet appeal to one of these axioms, and it is healthy to derive one such fact in full at least once.

Proposition. In any field, a * 0 = 0 for every a.

Proof. Since 0 = 0 + 0, distributivity gives a * 0 = a * (0 + 0) = a * 0 + a * 0. Add -(a * 0), the additive inverse of a * 0, to both sides. The left side becomes a * 0 + (-(a * 0)) = 0. By associativity the right side becomes a * 0 + (a * 0 + (-(a * 0))) = a * 0 + 0 = a * 0. Reading the two sides together, 0 = a * 0. This completes the proof.

Notice what the proof did not use: no decimals, no number line, no prior beliefs about zero. Each equality cites an axiom by name. The point is not that anyone doubted a * 0 = 0. The point is that the axioms are strong enough to force it, and a proof at this level of care is something you can verify line by line rather than accept on authority. That standard of checkability is the habit this course builds.

The order axioms

An ordered field also carries a relation < that is compatible with the operations: for all a, b, c, exactly one of a < b, a = b, b < a holds (trichotomy); if a < b then a + c < b + c; and if a < b and c > 0 then ac < bc. From these few rules every inequality you know can be proved.

Read the three requirements as promises about how comparison interacts with arithmetic. Trichotomy promises that any two elements can be compared, with no ties beyond equality and no incomparable pairs. The translation rule promises that sliding two numbers by the same amount preserves their order. The scaling rule promises that stretching by a positive factor preserves order. Everything else about inequalities, including the sign flip when multiplying by a negative, must be extracted from these three promises. Let us extract two such facts now, since the course will use them constantly.

Proposition. In any ordered field, a^2 >= 0 for every a, and in particular 1 > 0.

Before the formal argument, the idea: trichotomy hands us exactly three possibilities for a, so we may argue by cases, and in each case the scaling rule does the work. Case analysis driven by trichotomy is a pattern you will reuse in many proofs to come.

Proof. By trichotomy either a = 0, a > 0, or a < 0. If a = 0 then a^2 = 0 >= 0. If a > 0, multiplying the inequality a > 0 by the positive number a gives a^2 > 0. If a < 0 then adding -a to both sides gives 0 < -a, so -a > 0; multiplying -a > 0 by the positive number -a gives (-a)^2 > 0, and (-a)^2 = a^2, so again a^2 > 0. In every case a^2 >= 0. Since 1 = 1^2 and 1 != 0, we get 1 > 0. This completes the proof.

Two remarks. First, the third case leaned on the identity (-a)^2 = a^2, which is itself a field fact, provable from distributivity and the behavior of additive inverses. Second, the corollary 1 > 0 looks modest but has teeth: adding 1 to both sides repeatedly shows 1 + 1, then 1 + 1 + 1, and so on are all positive and strictly increasing, so an ordered field contains a faithful copy of the natural numbers and is necessarily infinite. No finite field can be ordered.

Proposition. If a < b and c < 0, then bc < ac.

Proof. Since c < 0, adding -c to both sides gives 0 < -c, so -c is positive. Applying the scaling rule to a < b with the positive multiplier -c gives a(-c) < b(-c), that is, -ac < -bc. Now add ac + bc to both sides: the left side becomes bc and the right side becomes ac, so bc < ac. This completes the proof.

What we learned: the notorious sign flip is not an extra rule to memorize. It is the ordinary scaling rule applied to the positive number -c, followed by a translation. When a rule feels arbitrary, deriving it once from the axioms usually reveals it as a disguised form of a rule that feels natural. That experience, more than the particular propositions, is the reason to work through these small proofs.

The hole the rationals cannot fill

Everything above holds for Q: the rationals are a perfectly good ordered field. Yet they are riddled with gaps, and here is the cleanest example. We first isolate a small lemma the main proof leans on, because the step is easy to wave at and worth proving once.

Lemma. If p is an integer and p^2 is even, then p is even.

Proof. We prove the contrapositive: if p is odd, then p^2 is odd. An odd integer has the form p = 2m + 1 for some integer m. Then p^2 = 4m^2 + 4m + 1 = 2(2m^2 + 2m) + 1, which is odd. So an integer with an even square cannot be odd. This completes the proof.

Notice the maneuver. Rather than argue directly from the assumption that p^2 is even, we flipped to the contrapositive, which hands us a concrete algebraic form to compute with. Choosing the version of a statement that gives you something to hold is half of proof-writing, and you will see the same move again when we negate limit definitions later in the course.

Theorem. There is no rational number x with x^2 = 2.

Proof. Suppose, for contradiction, that x = p/q in lowest terms with x^2 = 2. Then p^2 = 2q^2, so p^2 is even, which forces p to be even by the lemma, say p = 2k. Substituting, 4k^2 = 2q^2, so q^2 = 2k^2, making q^2 even and hence q even, again by the lemma. But then p and q share the factor 2, contradicting lowest terms. Hence no such rational exists.

Pause on the architecture of that argument. The phrase "in lowest terms" is not decoration; it is the tripwire the contradiction needs. We are free to assume it because any fraction can be reduced, and once assumed, "both p and q are even" collides with it head on. A contradiction proof succeeds by planting, at the outset, exactly the stake that the final absurdity will strike.

To say the conclusion in the language of this course: the set S = {x in Q : x^2 < 2} is nonempty and bounded above within Q, yet no rational serves as its least upper bound. Any rational upper bound of S can be undercut by a slightly smaller rational that still bounds S, and any member of S can be topped by a slightly larger member. The candidates close in on a single location, and the location is unoccupied. Rationals get arbitrarily close to where sqrt(2) should be, from both sides, but no rational stands at the spot.

The reals are precisely the ordered field in which this failure never occurs. The property that seals the gaps is completeness, and stating it exactly is the goal of the next lesson.

A little history: the arithmetization of analysis

The gap we found is ancient. A follower of Pythagoras, sometimes named as Hippasus of Metapontum, is credited with discovering that the diagonal of a unit square is incommensurable with its side, which is the geometric face of the irrationality of sqrt(2). Greek mathematics absorbed the discovery by treating magnitudes geometrically, through the theory of proportions of Eudoxus preserved in Book V of Euclid.

Calculus, created in the seventeenth century, then ran for nearly two hundred years on intuition about motion and infinitesimals, and it ran into paradoxes its own tools could not adjudicate. The repair came in the nineteenth century. Cauchy's Cours d'analyse of 1821 recast limits in terms of inequalities. Weierstrass and his Berlin school made the epsilon-delta style the standard of rigor. In 1872 Dedekind and Cantor each published a construction of the real numbers out of the rationals, Dedekind by cuts that split Q in two, Cantor by Cauchy sequences of rationals.

Dedekind traced his motivation to teaching calculus in 1858, when he realized he could not honestly prove even the monotone convergence theorem without a precise account of the continuum. The program he helped complete, replacing appeals to geometric intuition with definitions built from arithmetic, is called the arithmetization of analysis. This course walks the trail that program blazed, in roughly the order history discovered it mattered.

Common wrong turns

A few habits account for most early losses of rigor. Each is easy to fall into precisely because the facts involved are so familiar; watch for them in your own writing.

  • Assuming what is to be proved. If a line of your argument restates the conclusion, or silently uses it, the proof is circular. A reliable check: for each line, ask which axiom or earlier line justifies it.
  • Using facts not yet available. In this lesson we may cite the field axioms, the order axioms, and what we have derived from them, nothing else. Writing sqrt(2) as though it already names a number assumes the very existence the chapter is questioning.
  • Leaving "lowest terms" unstated. The irrationality proof needs the reduced-fraction assumption on record; without it, the final "both even" has nothing to contradict.
  • Skipping the parity lemma. The step from p^2 even to p even is true but not free, and its analogues can fail: 6^2 = 36 is divisible by 4, yet 6 is not. Divisor 2 works because 2 is prime.

Try it

Exercise. Prove that the sum of a rational number and an irrational number is irrational.

Scratch work first. "Irrational" is a negative statement: no representation as a ratio of integers exists. Negative statements usually submit to contradiction, so suppose the sum were rational and hunt for something impossible. The only raw material around is closure of Q under arithmetic, so aim the contradiction there.

Solution. Let r be rational and x irrational, and suppose toward a contradiction that s = r + x is rational. Since Q is closed under subtraction (write r = p/q and s = u/v with integer numerators and nonzero integer denominators; then s - r = (uq - pv)/(vq) is again such a ratio), the number s - r is rational. But s - r = x, so x is rational, contradicting the hypothesis. Hence r + x is irrational. This completes the proof.

As a check on the boundaries of the claim, note that the sum of two irrationals can be rational: sqrt(2) + (-sqrt(2)) = 0. The proof above never covered that case, and the failure of the analogous statement shows the proof was using the rationality of r in an essential way, exactly where it invoked closure.

Looking ahead

You now hold the shared axioms of Q and R and a certified example of a gap. The next lesson introduces suprema and infima, states the completeness axiom, and begins extracting consequences. From that single further sentence about least upper bounds we will eventually pull the Bolzano-Weierstrass theorem, the extreme value theorem, and the integrability of continuous functions. Keep the image of the punctured line nearby: analysis is the study of what a line with no punctures makes possible.

Sources

  1. Lebl, J. (2026). Basic properties (Section 1.1). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Trench, W. F. (2013). 1.1: The real number system. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  3. Bogomolny, A. (n.d.). Square root of 2 is irrational. Cut the Knot. cut-the-knot.org
  4. O'Connor, J. J., & Robertson, E. F. (2005). The real numbers: Pythagoras to Stevin. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  5. Rodriguez, C. (2020). Lecture 3: Cantor's remarkable theorem and the rationals' lack of the least upper bound property [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  6. O'Connor, J. J., & Robertson, E. F. (1998). Richard Dedekind. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. Rudin, W. (1976). Principles of mathematical analysis (3rd ed.). McGraw-Hill. find source ↗
Key terms
Field
A set with addition and multiplication obeying the usual arithmetic axioms, including inverses.
Ordered field
A field with an order relation compatible with the two operations.
Trichotomy
For any a and b exactly one of a < b, a = b, b < a holds.
Rational number
A number expressible as p/q with integers p and q, q not zero.
Proof by contradiction
Assuming the negation of a claim and deriving an impossibility.

Suprema, Infima, and the Completeness Axiom

  • Define upper bounds, lower bounds, supremum, and infimum precisely.
  • State the completeness axiom for the real numbers.
  • Prove statements using the epsilon characterization of the supremum.

Completeness is the axiom that distinguishes R from Q. Last lesson we watched the rationals close in on a location that no rational occupies. To outlaw that behavior we need vocabulary that describes, precisely, what it means for a set to press against a boundary. That vocabulary is the language of bounds, and the single most important definition in it is the supremum. Let S be a nonempty subset of R throughout.

Bounds and least upper bounds

A number M is an upper bound of S if s <= M for every s in S. The number M is the supremum (or least upper bound), written sup S, if it is an upper bound and no smaller number is an upper bound. Symmetrically, m is a lower bound if m <= s for all s, and the infimum inf S is the greatest lower bound. The supremum need not belong to S: for the open interval (0, 1) we have sup = 1 and inf = 0, though neither lies in the set.

Two comments before we use these words. First, the definite article in "the supremum" needs justification, and it has one.

Proposition. A set has at most one supremum.

Proof. Suppose M_1 and M_2 are both suprema of S. Each is an upper bound, and each is less than or equal to every upper bound. Applying the second property of M_1 to the upper bound M_2 gives M_1 <= M_2; applying the second property of M_2 to M_1 gives M_2 <= M_1. By trichotomy, M_1 = M_2. This completes the proof.

Second, keep the supremum distinct from the maximum, the largest element of a set when one exists. If a maximum exists it equals the supremum, but a supremum can exist when no maximum does, as (0, 1) shows. This distinction is the whole point of the definition: the supremum is the object that survives even when the set fails to contain a largest member. Suprema generalize maxima to sets that press against a boundary without touching it.

Proving a supremum from the definition

The definition packages two obligations, and a complete proof must discharge both: show the candidate is an upper bound, then show nothing smaller is. Here is the template on the simplest interesting example.

Claim. sup (0, 1) = 1.

Proof. First, every s in (0, 1) satisfies s < 1, so 1 is an upper bound. Second, let M be any number with M < 1; we show M fails to be an upper bound. If M < 0, the element 1/2 of the set exceeds M, and we are done with this case.

If instead 0 <= M < 1, consider the midpoint t = (M + 1)/2. Then t - M = (1 - M)/2 > 0 and 1 - t = (1 - M)/2 > 0, so M < t < 1, and t > 0 because M >= 0. So t lies in (0, 1) and exceeds M. Either way M is not an upper bound, so every upper bound is at least 1, and 1 is the least. This completes the proof.

The intuition behind the second half deserves a name: in a dense order, strictly below any candidate short of the boundary there is room to fit a witness. The midpoint construction manufactures that witness explicitly. Producing an explicit witness, rather than gesturing at one, is what separates a proof from a plausibility argument, and the skill transfers directly to the epsilon arguments ahead.

The completeness axiom

Completeness Axiom. Every nonempty subset of R that is bounded above has a supremum in R.

This single sentence is what Q lacks. The set S = {x in Q : x^2 < 2} is bounded above, but within Q it has no least upper bound; in R its supremum is sqrt(2). The axiom asserts existence and nothing more; it does not tell you the value, and much of the craft of analysis is extracting information about a supremum you cannot name in closed form.

Both hypotheses are essential, and it is instructive to see each fail. A set with no upper bound, such as N, has no supremum: there is nothing to be least among. The empty set fails differently: every real number is vacuously an upper bound of it, and the collection of all reals has no least member, so the empty set has no supremum either. When you invoke completeness in a proof, the two lines "nonempty" and "bounded above" are load-bearing and must be checked, not assumed.

The axiom mentions only suprema, but the infimum version rides along for free, by a reflection argument worth writing out once.

Theorem. Every nonempty subset of R bounded below has an infimum, namely inf S = -sup(-S), where -S = {-s : s in S}.

Proof. Let m be a lower bound of S. For every s in S we have m <= s, and multiplying by -1 flips the inequality: -s <= -m. So -m is an upper bound of the nonempty set -S, and completeness supplies u = sup(-S).

We claim -u = inf S. For any s in S, -s <= u, so s >= -u: thus -u is a lower bound. And if m is any lower bound of S, then -m bounds -S from above, so u <= -m, hence m <= -u. So -u is the greatest lower bound. This completes the proof.

The picture: negation reflects the line through 0, exchanging left with right, lower bounds with upper bounds, greatest with least. Any theorem about suprema converts to a theorem about infima by one pass through this mirror, so we are free to state results for suprema only.

The epsilon characterization of the supremum

The following restatement is the workhorse of nearly every proof. It says the supremum is approached arbitrarily closely from inside the set.

Lemma. Let S be nonempty and bounded above. Then M = sup S if and only if (i) s <= M for all s in S, and (ii) for every epsilon > 0 there exists s in S with s > M - epsilon.

Before the proof, hear what (ii) is saying. "No smaller number is an upper bound" quantifies over numbers below M, and every number below M has the form M - epsilon for exactly one epsilon > 0. So (ii) is the least-ness clause, rewritten so that the small positive quantity epsilon appears explicitly. The rewriting matters because the rest of analysis speaks in epsilons, and this lemma is the adapter that lets suprema plug into that language.

Proof. Suppose M = sup S. Then (i) holds because M is an upper bound. For (ii), given epsilon > 0, the number M - epsilon is smaller than M, so it is not an upper bound; hence some s in S exceeds it, giving s > M - epsilon. Conversely, suppose (i) and (ii) hold. Condition (i) makes M an upper bound. If some M' < M were also an upper bound, set epsilon = M - M' > 0; by (ii) there is s > M - epsilon = M', contradicting that M' bounds S. So M is the least upper bound. This completes the proof.

Read condition (ii) as a promise: no matter how tight a tolerance epsilon you name, the set contains a point within epsilon of the supremum. That is the mechanism by which suprema power the limit arguments to come. Let us see the lemma earn its keep immediately.

Theorem. Let A and B be nonempty sets bounded above, and let A + B = {a + b : a in A, b in B}. Then sup(A + B) = sup A + sup B.

Proof. Write u = sup A and v = sup B. For any a in A and b in B we have a <= u and b <= v, so a + b <= u + v. Thus u + v is an upper bound of A + B, and since the supremum is the least upper bound, sup(A + B) <= u + v.

For the reverse inequality, let epsilon > 0. By the lemma, choose a in A with a > u - epsilon/2 and b in B with b > v - epsilon/2. Then a + b belongs to A + B and a + b > u + v - epsilon, so sup(A + B) > u + v - epsilon. This holds for every epsilon > 0.

If we had sup(A + B) < u + v, then choosing epsilon = u + v - sup(A + B) > 0 would give sup(A + B) > sup(A + B), absurd. Hence sup(A + B) >= u + v, and the two inequalities force equality. This completes the proof.

Study the closing move: from "greater than u + v - epsilon for every positive epsilon" we concluded "at least u + v." An inequality that survives every positive tolerance tightens to a non-strict inequality in the limit, and the two-line contradiction shows why. This maneuver appears so often that analysts perform it silently; you should perform it explicitly until it is reflex.

A little history: Dedekind's cuts

The completeness axiom can be adopted, as we have done, or earned. In 1872 Richard Dedekind published a construction in which a real number is a cut: a partition of the rationals into two nonempty classes, every member of the left class below every member of the right, with the left class having no largest element. Rational numbers correspond to cuts made at a rational location; sqrt(2) corresponds to the cut whose left class is {x in Q : x <= 0 or x^2 < 2}.

In Dedekind's framework the least upper bound property becomes a theorem: the supremum of a bounded family of cuts is the union of their left classes. Cantor, the same year, built the reals instead from Cauchy sequences of rationals, and the two constructions yield structures with identical behavior. Up to the appropriate notion of isomorphism there is exactly one complete ordered field. That uniqueness is why speaking of "the" real numbers is honest, and why this course may take completeness as an axiom without loss.

Common wrong turns

The definitions in this lesson are short, but misusing them is easy. The following errors appear constantly in early proof attempts.

  • Writing "let M be the largest element of S." Bounded sets need not have largest elements; that is why suprema exist as a concept. Reach for sup S, and only claim it lies in S with proof.
  • Proving only half the definition. Showing your candidate bounds the set proves sup S <= M, not equality. The least-ness half, usually via the epsilon characterization, is where the analysis lives.
  • Forgetting the hypotheses of completeness. Invoking sup S for a set not shown nonempty and bounded above is an error even when the final answer is correct.
  • Concluding a strict inequality in the limit. From s > M - epsilon for all epsilon > 0 the correct conclusion about the set's supremum is >=, never >. Strictness rarely survives a limiting process.

Try it

Exercise. Show that if M is an upper bound of S and M belongs to S, then M = sup S.

Scratch work first. We hold two facts: M bounds S, and M is a member. The definition asks for least-ness among upper bounds, so take an arbitrary upper bound and compare it with M. Membership is the lever: an upper bound must dominate every member, including M itself.

Solution. By hypothesis M is an upper bound of S. Let M' be any upper bound. Since M' dominates every element of S and M is an element of S, we get M <= M'. So M is an upper bound that is less than or equal to every upper bound, which is the definition of the supremum. This completes the proof.

The exercise also sharpens the earlier distinction: the supremum belongs to the set exactly when the set has a maximum, and in that case the two notions coincide. For (0, 1) no such M exists, which is a second way of seeing that its supremum, 1, lies outside.

Looking ahead

You now own the completeness axiom in its working form: existence from boundedness, plus an epsilon lever for extracting points near the supremum. The next lesson pulls the first surprising consequences, the Archimedean property and the density of the rationals, and from there the axiom flows into every convergence theorem in the course. Whenever a later proof produces a limit seemingly from nowhere, trace it back; you will find this lesson's axiom underneath.

Sources

  1. Lebl, J. (2026). The set of real numbers (Section 1.2). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Trench, W. F. (2013). 1.1: The real number system. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  3. Rodriguez, C. (2020). Lecture 4: The characterization of the real numbers [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  4. Weisstein, E. W. (n.d.). Supremum. MathWorld: A Wolfram Web Resource. mathworld.wolfram.com
  5. Zakon, E. (2004). Chapter 2: Real numbers and fields. Mathematical Analysis I, Mathematics LibreTexts. math.libretexts.org
  6. O'Connor, J. J., & Robertson, E. F. (2005). The real numbers: Attempts to understand. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. Abbott, S. (2015). Understanding analysis (2nd ed.). Springer. find source ↗
Key terms
Upper bound
A number M with s <= M for every element s of the set.
Supremum
The least upper bound of a set, written sup S.
Infimum
The greatest lower bound of a set, written inf S.
Completeness axiom
Every nonempty subset of R bounded above has a supremum in R.
Epsilon characterization
For any epsilon > 0 the set contains a point within epsilon of its supremum.

The Archimedean Property and Density of the Rationals

  • Prove the Archimedean property from completeness.
  • Show that 1/n can be made arbitrarily small.
  • Prove that the rationals are dense in the reals.

Completeness is not just an abstract guarantee; it has concrete consequences that we use constantly. The first is that the natural numbers are unbounded in R, a fact that feels self-evident and nonetheless requires proof from the axioms. The second is that the rationals, despite their gaps, are sprinkled densely along the entire line. This lesson proves both, and equips you with the two small tools, shrinking 1/n and locating rationals, that nearly every epsilon argument in the rest of the course will borrow.

Why this needs proof at all

Here is the reason the unboundedness of N cannot be waved through: there exist ordered fields in which it fails. Take all rational functions p(t)/q(t) with real coefficients, and declare a function positive when its values are positive for all sufficiently large t. This makes the set an ordered field. In it, the element t outgrows every constant, so t is an upper bound for the copy of N sitting inside: the naturals are bounded there. Such fields are called non-Archimedean, and they contain infinitesimals, positive elements smaller than 1/n for every n.

So the order axioms alone do not force the naturals to be unbounded. Something about R specifically must be responsible, and that something is completeness. The field of rational functions is an ordered field but not complete; the argument below shows precisely where completeness enters. Watching a familiar fact fail in a nearby structure is the fastest way to appreciate why it is a theorem and not a triviality.

The Archimedean property

Theorem (Archimedean property). For every real number x there is a natural number n with n > x.

The proof is by contradiction, and its engine is the epsilon characterization of the supremum from last lesson, used with epsilon = 1. The shape to anticipate: if the naturals were bounded, they would have a least upper bound, and a least upper bound of a set closed under adding 1 is an absurd object, because the set climbs past anything one unit below its ceiling and then one unit above it.

Proof. Suppose not. Then some x is an upper bound for the set N of natural numbers. Since N is nonempty and bounded above, completeness gives a supremum M = sup N. Because M - 1 < M, it is not an upper bound, so there is a natural number n with n > M - 1. But then n + 1 > M, and n + 1 is also a natural number, contradicting that M bounds N. Hence N is unbounded, which is exactly the claim. This completes the proof.

Notice the division of labor. Completeness furnishes the supremum M; the closure of N under adding 1 converts "within 1 of the ceiling" into "above the ceiling." Neither ingredient alone suffices. In Q, incidentally, the naturals are also unbounded, for elementary reasons; the point of the theorem is that in R the fact follows from the axioms we have chosen, with no appeal to how the reals were built.

Corollary. For every epsilon > 0 there is a natural number n with 1/n < epsilon. Indeed, applying the theorem to x = 1/epsilon gives n > 1/epsilon, and rearranging yields 1/n < epsilon. This corollary is the engine of countless convergence proofs, since it lets us shrink 1/n below any target.

Make the corollary concrete once. If epsilon = 0.003, then 1/epsilon = 333.33..., so any natural number n >= 334 gives 1/n < 0.003. The pattern generalizes: the threshold is always "any n beyond 1/epsilon," and in the next lesson this exact computation becomes the standard closing move of epsilon-N proofs.

One more consequence deserves its own line, because the density proof depends on it: every real number has an integer part. Precisely, for each real x there is a unique integer k with k <= x < k + 1. Existence: by the theorem, integers exceed x and integers exceed -x, so the set of integers at most x is nonempty and bounded above, and a least integer greater than x exists because a nonempty set of integers bounded below has a least element. Uniqueness follows since two distinct integers differ by at least 1.

Density of the rationals

The rationals have gaps, yet they are sprinkled everywhere along the line. Between any two distinct reals sits a rational. The idea of the proof is worth absorbing before the details: choose a denominator q so fine that steps of size 1/q cannot jump over the interval (a, b), then take the first step that lands past a. Fineness comes from the Archimedean corollary; "first step past a" comes from the integer part.

Theorem (Density of Q). If a < b are real numbers, there is a rational p/q with a < p/q < b.

Proof. Since b - a > 0, the Archimedean corollary gives a natural number q with 1/q < b - a, so 1 < q(b - a). Let p be the smallest integer greater than qa (such an integer exists by the integer part argument above). Then p - 1 <= qa < p. The right inequality gives qa < p, hence a < p/q. From p - 1 <= qa we get p <= qa + 1 < qa + q(b - a) = qb, so p/q < b. Therefore a < p/q < b. This completes the proof.

Trace the two inequalities separately, because each has its own source. The lower bound a < p/q is immediate from choosing p past qa. The upper bound is where minimality earns its keep: because p is the first integer past qa, it cannot have overshot by a full unit, and a step of one unit in p corresponds to a step of 1/q < b - a on the line, too short to clear the interval.

Run the construction numerically once. Take a = 3.14 and b = 3.15, so b - a = 0.01. We need 1/q < 0.01; take q = 101. Then qa = 317.14, and the least integer greater than this is p = 318. The rational produced is 318/101 = 3.1485..., which indeed lies strictly between 3.14 and 3.15. The proof is an algorithm, and running it once by hand makes the two inequalities feel inevitable rather than clever.

The same reasoning shows the irrationals are dense too, so both kinds of numbers are woven tightly together throughout the line: every interval, however short, contains infinitely many of each. Your assignment carries out the irrational case by a shifting trick.

A worked supremum, start to finish

The new tools combine with last lesson's epsilon characterization to settle suprema and infima of concrete sets. Here is the canonical example, written at full rigor.

Claim. Let S = {1/n : n in N} = {1, 1/2, 1/3, ...}. Then inf S = 0.

Proof. Every element 1/n is positive, so 0 is a lower bound of S. Now let m > 0 be any candidate lower bound. By the Archimedean corollary there is n with 1/n < m, and 1/n belongs to S, so m fails to be a lower bound. Hence every lower bound is at most 0, and since 0 is a lower bound, inf S = 0. This completes the proof.

Note the anatomy, the same two-part obligation as always: a bound, then optimality of the bound, with the Archimedean corollary supplying the witness that defeats each rival candidate. Note also that 0 is not an element of S; infima, like suprema, are boundary values that the set may approach without containing.

A little history: from Eudoxus to the infinitesimal's return

The property is named for Archimedes, who stated a version for geometric magnitudes in On the Sphere and Cylinder, crediting the idea to Eudoxus: given two magnitudes, some multiple of the smaller exceeds the larger. It underwrote the method of exhaustion, the Greek forerunner of integration. The modern name "Archimedean axiom" was popularized by Otto Stolz in the 1880s, precisely when analysts were sorting out which ordered structures deserve to be called number systems.

Infinitesimals, banished by the arithmetization of analysis, returned with honor in the 1960s when Abraham Robinson constructed the hyperreal numbers, a non-Archimedean extension of R in which calculus can be developed with genuine infinitesimals and rigorous rules for handling them. Nonstandard analysis is a legitimate alternative foundation, resting on tools from mathematical logic. This course stays on the Weierstrass road, but it is worth knowing the other road exists and that "non-Archimedean" names a rich landscape, not a pathology.

Common wrong turns

The tools of this lesson are small, which makes it tempting to deploy them loosely. The following slips recur in written work.

  • Choosing "n = 1/epsilon." The quantity 1/epsilon is rarely a natural number. The Archimedean property licenses choosing a natural number n > 1/epsilon; say that, and the issue disappears.
  • Citing unboundedness of N as "obvious." In this course it is a theorem with a name. Cite the Archimedean property, since we have seen ordered fields where the claim is false.
  • Misquoting density. Density places a rational in every open interval (a, b) with a < b. It does not place a rational in an arbitrary set, and it needs a != b: no theorem squeezes a rational between a number and itself.
  • Forgetting why p exists. "The smallest integer greater than qa" exists by the integer part argument, which itself rests on the Archimedean property. Quietly assuming it is circular reasoning in disguise.

Try it

Exercise. Prove that for every real x > 0 there is a natural number n with 1/2^n < x.

Scratch work first. The Archimedean corollary shrinks 1/n; we want the faster-shrinking 1/2^n. If we can compare the two, showing 2^n > n for all n, then 1/2^n < 1/n and the corollary finishes. The comparison is a one-line induction.

Solution. First, 2^n > n for every natural n, by induction. Base: 2^1 = 2 > 1. Step: if 2^n > n, then 2^{n+1} = 2 * 2^n > 2n = n + n >= n + 1. Now let x > 0. By the Archimedean corollary choose n with 1/n < x. Since 2^n > n > 0, taking reciprocals reverses the inequality: 1/2^n < 1/n < x. This completes the proof.

The lesson of the exercise: the Archimedean corollary is a template, not a single fact. Any quantity you can trap beneath 1/n inherits the ability to be made smaller than every positive tolerance, and halving processes, which appear in bisection arguments later in the course, are the most common customers.

Looking ahead

You now hold the two levers this course pulls most often: 1/n can be driven below any positive tolerance, and every interval contains rationals. The next lesson spends both immediately, defining what it means for a sequence to converge and proving first limits directly from the definition. When you meet "choose N with 1/N < epsilon" there, you will know the exact theorem being invoked and the completeness axiom standing behind it.

Sources

  1. Rodriguez, C. (2020). Lecture 5: The Archimedean property, density of the rationals, and absolute value [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  2. Lebl, J. (2026). The set of real numbers (Section 1.2). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  3. Lebl, J. (2026). Absolute value and bounded functions (Section 1.3). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  4. Trench, W. F. (2013). 1.3: The real line. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  5. O'Connor, J. J., & Robertson, E. F. (1999). Archimedes. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  6. O'Connor, J. J., & Robertson, E. F. (1999). Eudoxus. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. Zakon, E. (2004). Chapter 2: Real numbers and fields. Mathematical Analysis I, Mathematics LibreTexts. math.libretexts.org
Key terms
Archimedean property
For every real x there is a natural number n with n > x; the naturals are unbounded.
Corollary
A result that follows quickly from a theorem just proved.
Dense
A set is dense in R if every open interval contains a point of the set.
Natural numbers
The counting numbers 1, 2, 3, and so on.
Least integer above
The smallest integer strictly greater than a given real number.

Module 2: Sequences and Convergence

Define the limit of a sequence with epsilon and N, then prove the core convergence theorems.

The Epsilon-N Definition of a Limit

  • State the epsilon-N definition of sequence convergence.
  • Prove convergence of specific sequences directly from the definition.
  • Prove that limits are unique.

A sequence is a function from the natural numbers to the reals, written (a_n). The heart of analysis is making the phrase "the terms get close to L" completely precise. Closeness by itself is cheap: a_n = 1/n is close to 0.001 for a while. What we mean is closeness of any demanded tightness, achieved from some point on and never abandoned. Here is the definition on which the entire subject rests; this lesson unpacks it slowly, because every later definition is a variation on it.

The definition

Definition. A sequence (a_n) converges to L, written lim a_n = L, if for every epsilon > 0 there exists a natural number N such that for all n >= N we have |a_n - L| < epsilon.

Unpack the logic slowly. The challenger names a tolerance epsilon > 0, however small. You must respond with a threshold N so that from the N-th term onward, every term lies within epsilon of L. The quantity |a_n - L| is the distance from the term to the proposed limit, so the condition says that distance is eventually smaller than any positive number. Crucially N is allowed to depend on epsilon: tighter tolerances generally need larger thresholds.

The order of the quantifiers is the entire content. "For every epsilon there exists N" lets the response be tailored to the challenge. Reverse them and you get "there exists N such that for every epsilon > 0, all n >= N satisfy |a_n - L| < epsilon," which forces |a_n - L| to be smaller than every positive number at once, that is, zero: the sequence would have to equal L exactly from some index on. That is a vastly stronger and mostly useless condition. Quantifier order is not pedantry; it is the difference between "approaches" and "arrives."

Also notice which indices the definition disciplines: only n >= N. The first billion terms may do anything. Convergence is a property of tails, and changing finitely many terms of a sequence never affects whether it converges or what its limit is. When you feel an urge to inspect early terms, the definition is telling you they are irrelevant.

A useful mental image: around L, draw a horizontal band from L - epsilon to L + epsilon. Convergence says that for each band, no matter how thin, the sequence eventually enters and never again leaves. Different bands may demand different entry times, which is exactly the dependence of N on epsilon. A sequence that keeps exiting some fixed band, however occasionally, does not converge to L, a fact we will exploit when proving divergence below.

Scratch work versus formal proof

Every direct convergence proof is written twice. In private, you start from the goal |a_n - L| < epsilon, simplify the left side, and solve for n: this is scratch work, and it runs backwards, from what you want to what you need. In public, you run the logic forwards: announce N, then verify the estimate. The finished proof conceals the scratch work, which is why textbook proofs look clairvoyant. They are not; the author solved for N in the margin first, and so will you.

Scratch work is also where you learn that solving exactly is optional. If |a_n - L| is messy, replace it by something larger and simpler, and force the simpler thing below epsilon. The inequality only needs to point the right way: a bound that is generous but manageable beats an exact expression you cannot invert. You will see this replacement move in the second proof below and constantly thereafter.

A first direct proof

Claim. lim (1/n) = 0.

Scratch work. We want |1/n - 0| = 1/n < epsilon. Solving for n: we need n > 1/epsilon. So any natural number N beyond 1/epsilon should work, and the Archimedean corollary from last lesson guarantees one exists. Now the forward version.

Proof. Let epsilon > 0 be given. By the Archimedean corollary choose a natural number N with 1/N < epsilon. Then for every n >= N we have |1/n - 0| = 1/n <= 1/N < epsilon. Since epsilon was arbitrary, the definition is satisfied and lim (1/n) = 0. This completes the proof.

Notice the shape of the argument, which every direct proof repeats: let epsilon be given, produce N (from the scratch work), then verify the bound for all n >= N. Two details deserve attention. The chain 1/n <= 1/N < epsilon quietly used that n >= N implies 1/n <= 1/N, a monotonicity fact. And N is not unique: any larger threshold also works, so there is no such thing as "the" correct N, only sufficient ones.

A second direct proof

Claim. lim ((2n + 1)/n) = 2.

Scratch work. First simplify the distance: |(2n + 1)/n - 2| = |(2n + 1 - 2n)/n| = 1/n. The problem has collapsed onto the previous one: we need 1/n < epsilon, so N > 1/epsilon suffices.

Proof. Here |(2n + 1)/n - 2| = |1/n| = 1/n. Given epsilon > 0, choose N with 1/N < epsilon. For n >= N, 1/n <= 1/N < epsilon, so the terms are within epsilon of 2. Hence the limit is 2. This completes the proof.

The pattern to internalize: simplify the distance |a_n - L| to a recognizable quantity, then reuse a known threshold. With practice, a whole library of distances reduces to 1/n, 1/n^2, or r^n, and the epsilon-N ritual becomes an assembly of stock parts. That is not a loss of rigor; it is rigor becoming routine.

Limits are unique

Before the theorem, the picture. Suppose a sequence tried to converge to two different values L and L'. Draw a tube of radius epsilon around each. If epsilon is less than half the distance between them, the tubes are disjoint, and no term can inhabit both at once. But convergence to each value forces the whole tail into each tube. The formal proof makes that collision precise, and the choice of epsilon is exactly "half the separation."

Theorem. A convergent sequence has exactly one limit.

Proof. Suppose a_n to L and a_n to L' with L != L'. Set epsilon = |L - L'|/2 > 0. There is N_1 with |a_n - L| < epsilon for n >= N_1, and N_2 with |a_n - L'| < epsilon for n >= N_2. For n >= max(N_1, N_2), the triangle inequality gives |L - L'| <= |L - a_n| + |a_n - L'| < epsilon + epsilon = |L - L'|, so |L - L'| < |L - L'|, an absurdity. Therefore L = L'. This completes the proof.

Two moves here recur throughout analysis. Taking n >= max(N_1, N_2) is how separate promises about tails are made simultaneous: each hypothesis supplies its own threshold, and the maximum honors both. And the triangle inequality |x - z| <= |x - y| + |y - z| is the device that converts "both near a_n" into "near each other." Whenever you must compare two quantities through an intermediary, expect the triangle inequality to appear.

Proving divergence: negating the definition

To show a sequence does not converge to L, negate the definition carefully, flipping each quantifier: there exists epsilon > 0 such that for every N there is some n >= N with |a_n - L| >= epsilon. In words: some fixed tolerance is violated infinitely often. You get to pick the single epsilon; the burden of "for every N" is discharged by exhibiting, past each threshold, one bad index.

Claim. The sequence a_n = (-1)^n converges to no real number.

Proof. Fix any candidate L and take epsilon = 1. Given any N, the indices N and N + 1 include one even and one odd, so among a_N, a_{N+1} both values 1 and -1 occur. If both were within 1 of L, the triangle inequality would give 2 = |1 - (-1)| <= |1 - L| + |L - (-1)| < 1 + 1 = 2, absurd. So some n >= N has |a_n - L| >= 1. Since L was arbitrary, the sequence diverges. This completes the proof.

A little history: where epsilon came from

Bolzano in 1817 and Cauchy in his 1821 Cours d'analyse phrased limits with inequalities in prose: a variable quantity's difference from its limit becomes and remains smaller than any assigned quantity. The symbol epsilon is Cauchy's; a durable tradition holds that it abbreviates erreur, the error one is willing to tolerate. Weierstrass, lecturing in Berlin in the 1860s and 1870s, made the fully quantified epsilon style the norm and stripped away the residual language of motion. Nothing "moves" in the definition you have learned, and that stillness is deliberate: statements about completed inequalities can be checked, negated, and combined mechanically, where images of flowing points cannot.

Common wrong turns

Epsilon-N proofs fail in predictable ways. Audit your drafts against this list until the habits set.

  • Letting N depend on n. The threshold is chosen once, before n is quantified. If your N has an n in it, the proof is circular.
  • Proving one epsilon. Verifying the definition for epsilon = 0.01 proves nothing; the argument must run for arbitrary epsilon > 0, which is why proofs open with "let epsilon > 0 be given."
  • Writing the scratch work as the proof. A backwards chain starting from |a_n - L| < epsilon assumes the conclusion. Solve backwards in the margin, then present forwards.
  • Sloppy absolute values. |a_n - L| < epsilon means L - epsilon < a_n < L + epsilon, two inequalities. Dropping the absolute value and proving only one side is a silent half-proof.
  • Demanding the smallest N. The definition asks for existence, not optimality. Hunting for minimal thresholds wastes effort and invites arithmetic slips.

Try it

Exercise. Prove from the definition that lim ((n + 1)/(2n)) = 1/2.

Scratch work first. Simplify the distance: |(n + 1)/(2n) - 1/2| = |(n + 1 - n)/(2n)| = 1/(2n). We need 1/(2n) < epsilon, that is, n > 1/(2 epsilon). So choose N > 1/(2 epsilon); the Archimedean property provides one.

Solution. Let epsilon > 0 be given. Choose a natural number N > 1/(2 epsilon), so that 1/(2N) < epsilon. Then for all n >= N, |(n + 1)/(2n) - 1/2| = 1/(2n) <= 1/(2N) < epsilon. By the definition, lim ((n + 1)/(2n)) = 1/2. This completes the proof.

Check your own version against three standards: the proof opens by receiving an arbitrary epsilon, the chosen N contains no n, and the final chain of inequalities runs forward from the choice to the conclusion. Those three checkpoints catch nearly every structural error in beginner epsilon-N writing.

Looking ahead

You can now verify a proposed limit and refute one. What the definition cannot do is manufacture limits for you: each proof needed the value L in advance. The next lessons build machinery that produces limits, algebraic rules for combining known ones, and then existence theorems, monotone convergence and Bolzano-Weierstrass, that conjure limits from structure alone. The epsilon-N ritual you practiced here is the verification engine under all of it.

Sources

  1. Lebl, J. (2026). Sequences and limits (Section 2.1). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 7: Convergent sequences of real numbers [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. Trench, W. F. (2013). 4.1: Sequences of real numbers. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  4. Dawkins, P. (n.d.). Calculus II: Sequences. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  5. O'Connor, J. J., & Robertson, E. F. (1997). Augustin-Louis Cauchy. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  6. O'Connor, J. J., & Robertson, E. F. (1998). Karl Weierstrass. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. Hunter, J. K. (n.d.). Chapter 3: Sequences [Lecture notes]. An Introduction to Analysis, University of California, Davis. math.ucdavis.edu
Key terms
Sequence
A function from the natural numbers to the reals, written (a_n).
Converges
For every epsilon > 0 there is N with |a_n - L| < epsilon for all n >= N.
Limit
The unique value L that a convergent sequence approaches.
Threshold N
The index, depending on epsilon, beyond which all terms are within epsilon of the limit.
Triangle inequality
For all reals, |x + y| <= |x| + |y|, and hence |x - z| <= |x - y| + |y - z|.

Limit Theorems and Bounded Sequences

  • Prove that every convergent sequence is bounded.
  • State and apply the algebraic limit theorems.
  • Use the squeeze theorem for sequences.

Proving every limit from scratch would be exhausting, and after the last lesson you know exactly how the scratch feels. This lesson builds a toolkit: a few theorems that let you compute limits by combining known ones, each justified once by an epsilon argument so that you never need to repeat it. The proofs are worth reading closely, not only to certify the rules but because they introduce three devices, the boundedness lemma, the add-and-subtract bridge, and the epsilon-splitting trick, that reappear in every chapter of analysis.

Convergent implies bounded

First, a structural fact. Convergence disciplines the tail of a sequence, and a disciplined tail plus a finite head should confine the whole sequence. Here is the precise statement and the proof that carries out that plan.

Theorem. Every convergent sequence is bounded, meaning there is B with |a_n| <= B for all n.

Proof. Let a_n to L. Apply the definition with epsilon = 1: there is N with |a_n - L| < 1 for all n >= N, hence |a_n| < |L| + 1 for those n by the triangle inequality. The finitely many earlier terms a_1, ..., a_{N-1} are bounded by their maximum absolute value. Taking B = max(|a_1|, ..., |a_{N-1}|, |L| + 1) bounds the whole sequence. This completes the proof.

Why epsilon = 1? No reason beyond convenience: any fixed positive tolerance yields some tube around L that traps the tail, and one tube is all boundedness needs. Note also the quiet use of finiteness: a maximum of finitely many numbers exists, while an infinite set of terms need not have one. That is why the argument splits the sequence into a finite head and a controlled tail, a decomposition you will reuse often.

The converse fails: the bounded sequence a_n = (-1)^n does not converge, because its terms alternate between -1 and 1 and never settle. Boundedness is a necessary condition for convergence, never a sufficient one, and keeping the two straight matters on exams and in research alike.

The algebraic limit theorems

Suppose a_n to A and b_n to B. Then limits respect arithmetic:

  • Sum: a_n + b_n to A + B.
  • Product: a_n b_n to A B.
  • Scalar: c a_n to c A for any constant c.
  • Quotient: a_n / b_n to A / B, provided B != 0.

Proof of the sum rule. Let epsilon > 0. Choose N_1 with |a_n - A| < epsilon/2 for n >= N_1, and N_2 with |b_n - B| < epsilon/2 for n >= N_2. For n >= max(N_1, N_2), the triangle inequality gives |(a_n + b_n) - (A + B)| <= |a_n - A| + |b_n - B| < epsilon/2 + epsilon/2 = epsilon. Hence the sum converges to A + B. This completes the proof.

The trick of splitting epsilon into epsilon/2 + epsilon/2 is a recurring move. Each hypothesis is asked for a little more than the conclusion needs, so that the two contributions together land under the target. Where does the foresight come from? Scratch work, as always: bound the error first, see that it splits into two pieces, then budget epsilon across the pieces.

The product rule is the first proof where boundedness earns its keep, and the estimate is worth writing in full.

Proof of the product rule. The bridge is adding and subtracting the mixed term a_n B: |a_n b_n - A B| = |a_n b_n - a_n B + a_n B - A B| <= |a_n| |b_n - B| + |B| |a_n - A|. Since (a_n) converges it is bounded: there is M > 0 with |a_n| <= M for all n.

Now let epsilon > 0. Choose N_1 with |b_n - B| < epsilon/(2M) for n >= N_1, and N_2 with |a_n - A| < epsilon/(2(|B| + 1)) for n >= N_2. For n >= max(N_1, N_2), the display above gives |a_n b_n - A B| < M * epsilon/(2M) + |B| * epsilon/(2(|B| + 1)) < epsilon/2 + epsilon/2 = epsilon. This completes the proof.

Two touches deserve comment. The factor |a_n| in the first piece varies with n, so we tamed it with the uniform bound M from the boundedness theorem; that is why the theorem was proved first. And the denominator 2(|B| + 1) rather than 2|B| is insurance against B = 0: never divide by a quantity that might vanish. Small defensive choices like these are the difference between a proof and a proof with a hole.

The scalar rule is the product rule with a constant sequence. The quotient rule reduces to the product rule once one shows 1/b_n to 1/B, and the key step there is a lemma of independent value: if b_n to B != 0, then eventually |b_n| > |B|/2, so the reciprocals are defined and uniformly controlled from some index on. The lemma comes from applying the definition with epsilon = |B|/2, another instance of choosing a convenient fixed tolerance.

Proof of the lemma. Apply the definition of b_n to B with epsilon = |B|/2 > 0: there is N such that |b_n - B| < |B|/2 for all n >= N. For those n, the reverse triangle inequality gives |b_n| >= |B| - |b_n - B| > |B| - |B|/2 = |B|/2. This completes the proof. With the lemma in hand, |1/b_n - 1/B| = |B - b_n| / (|b_n| |B|) < 2 |b_n - B| / |B|^2 for n >= N, and the right side is driven below any tolerance by the convergence of (b_n).

A word on provenance: these rules were used informally for two centuries before anyone proved them. Cauchy's 1821 textbook stated versions of them for convergent variables, and the fully quantified proofs you are reading stabilized with Weierstrass's Berlin lectures in the 1860s. The historical order, computation first and justification later, mirrors the order in which most people learn analysis, and the point of this course is to pay the logical bill, once, in full.

One more rule rounds out the kit, the order limit theorem: if a_n <= b_n for all n and both sequences converge, then lim a_n <= lim b_n. Order survives the limit, but only in its non-strict form; we will return to that caveat below.

The squeeze theorem

Theorem (Squeeze). If x_n <= a_n <= y_n for all large n, and x_n to L and y_n to L, then a_n to L.

Proof. Let epsilon > 0. Choose N_1 with |x_n - L| < epsilon for n >= N_1, and N_2 with |y_n - L| < epsilon for n >= N_2, and let N_3 be an index beyond which the sandwich x_n <= a_n <= y_n holds. For n >= max(N_1, N_2, N_3) we have L - epsilon < x_n <= a_n <= y_n < L + epsilon, so |a_n - L| < epsilon. This completes the proof.

The proof is short because the picture is short: both fences collapse onto L, and whatever is penned between the fences is dragged along. For example, since -1/n <= (sin n)/n <= 1/n and both outer sequences tend to 0, the squeeze theorem gives lim ((sin n)/n) = 0 even though sin n itself does not converge. Trapping an awkward sequence between two tame ones is often the easiest route to its limit.

The toolkit in action

Worked example. Evaluate lim (sqrt(n^2 + n) - n). The terms are differences of two quantities that each diverge, so no rule applies directly; first rewrite. Multiply and divide by the conjugate: sqrt(n^2 + n) - n = (n^2 + n - n^2) / (sqrt(n^2 + n) + n) = n / (sqrt(n^2 + n) + n). Dividing top and bottom by n gives 1 / (sqrt(1 + 1/n) + 1).

Now control sqrt(1 + 1/n) by a squeeze. Since 1 <= 1 + 1/n, we get sqrt(1 + 1/n) >= 1. And since (1 + 1/(2n))^2 = 1 + 1/n + 1/(4n^2) >= 1 + 1/n, taking square roots gives sqrt(1 + 1/n) <= 1 + 1/(2n). Both fences tend to 1, so sqrt(1 + 1/n) to 1 by the squeeze theorem. Then the sum and quotient rules give lim (sqrt(n^2 + n) - n) = 1/(1 + 1) = 1/2.

Read the solution as a division of labor: algebra converts the expression into a shape the theorems recognize, the squeeze handles the one genuinely analytic ingredient, and the limit theorems assemble the answer. Most limit computations at this level decompose the same way, and identifying which ingredient is the analytic one is the real skill being trained.

Common wrong turns

The limit theorems come with hypotheses, and each hypothesis is a tripwire when ignored.

  • Splitting a limit that does not exist. Writing lim (a_n + b_n) = lim a_n + lim b_n requires both pieces to converge. With a_n = n and b_n = -n, the sum converges to 0 while neither piece converges; the equation would be nonsense.
  • Quotients with vanishing denominators. The quotient rule demands B != 0. When b_n to 0, anything can happen, and each case needs its own analysis.
  • Upgrading order to strict order. From a_n < b_n the limits satisfy only lim a_n <= lim b_n. With a_n = 0 and b_n = 1/n, every term is strictly larger on the right, yet the limits are equal. Strictness rarely survives a limit.
  • Quoting the squeeze without both fences. A one-sided bound proves nothing about convergence; the theorem needs an upper and a lower sequence with the same limit.

Try it

Exercise. Prove that if a_n to A, then |a_n| to |A|. Then decide whether the converse holds.

Scratch work first. We need ||a_n| - |A|| small. The reverse triangle inequality says exactly that ||x| - |y|| <= |x - y| for all reals, so the new distance is dominated by the old one, and the old one is already under control. When a new quantity is bounded by a converging one, the proof writes itself.

Solution. Let epsilon > 0. Since a_n to A, choose N with |a_n - A| < epsilon for all n >= N. For those n, the reverse triangle inequality gives ||a_n| - |A|| <= |a_n - A| < epsilon. Hence |a_n| to |A|. This completes the proof. The converse fails: |(-1)^n| = 1 converges to 1, while (-1)^n diverges, as proved last lesson.

The counterexample half is not decoration. A claim and its converse are separate assertions, and the habit of asking "does the arrow reverse?" after every theorem is one of the quiet disciplines that distinguishes reading analysis from doing it.

Looking ahead

The toolkit lets you evaluate limits whose values you can guess, and the squeeze theorem handles some you cannot. Still missing is an existence theory: a way to know a limit exists when no candidate is in sight. That is where completeness re-enters. The next lesson proves the monotone convergence theorem, the first machine that outputs limits from structure alone, and the lessons after it extend the machinery to arbitrary bounded sequences.

Sources

  1. Lebl, J. (2026). Facts about limits of sequences (Section 2.2). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 8: The squeeze theorem and operations involving convergent sequences [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. Trench, W. F. (2013). 4.1: Sequences of real numbers. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  4. Dawkins, P. (n.d.). Calculus II: More on sequences. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  5. Hunter, J. K. (n.d.). Chapter 3: Sequences [Lecture notes]. An Introduction to Analysis, University of California, Davis. math.ucdavis.edu
  6. O'Connor, J. J., & Robertson, E. F. (1998). Karl Weierstrass. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. Bartle, R. G., & Sherbert, D. R. (2011). Introduction to real analysis (4th ed.). Wiley. find source ↗
Key terms
Bounded sequence
A sequence with |a_n| <= B for some fixed B and all n.
Algebraic limit theorems
Rules letting limits of sums, products, scalars, and quotients be computed termwise.
Scalar multiple rule
If a_n to A then c a_n to c A for any constant c.
Squeeze theorem
A sequence trapped between two sequences sharing a limit shares that limit.
Divergent sequence
A sequence that does not converge to any real number.

Monotone Sequences and the Monotone Convergence Theorem

  • Define monotone increasing and decreasing sequences.
  • Prove the monotone convergence theorem from completeness.
  • Apply it to show a recursively defined sequence converges.

The definition of a limit lets you verify a proposed value, but it does not tell you a limit exists when you have no candidate. This is a real gap: many of the most important numbers in analysis, including e and the values of infinite series, arrive precisely as limits nobody can name in advance. Completeness fills the gap for a large and useful class of sequences, and this lesson proves the first existence theorem of the course.

Monotone sequences

A sequence (a_n) is increasing if a_n <= a_{n+1} for all n, and decreasing if a_n >= a_{n+1} for all n. A sequence that is either is called monotone. Monotone sequences are the well-behaved ones: they can only head in a single direction.

Mind the weak inequalities: a constant sequence counts as both increasing and decreasing under this convention, and when the inequalities are strict we say strictly increasing or decreasing. For examples, a_n = 1 - 1/n is strictly increasing, a_n = 1/n is strictly decreasing, and a_n = (-1)^n is neither, since it rises and falls forever. To verify monotonicity in practice, examine the difference a_{n+1} - a_n or, for positive terms, the ratio a_{n+1}/a_n, and prove the appropriate comparison for every n, usually by induction or by algebra valid for all n at once.

The monotone convergence theorem

The intuition first. An increasing sequence pushes upward. If nothing blocks it, it climbs past every bound. If a ceiling blocks it, the terms must pile up somewhere at or below the ceiling, and the natural meeting point is the lowest ceiling, the supremum of the set of terms. Completeness guarantees that lowest ceiling exists; the proof then checks the terms genuinely accumulate at it, using the epsilon characterization of the supremum from Lesson 2.

Theorem. A monotone increasing sequence that is bounded above converges, and its limit is sup {a_n}. Likewise a decreasing sequence bounded below converges to its infimum.

Proof (increasing case). Let (a_n) be increasing and bounded above. The set of terms {a_n} is nonempty and bounded above, so by completeness it has a supremum L = sup {a_n}. We show a_n to L. Let epsilon > 0. By the epsilon characterization of the supremum, L - epsilon is not an upper bound, so there is an index N with a_N > L - epsilon.

Since the sequence is increasing, for every n >= N we have a_n >= a_N > L - epsilon. Also a_n <= L because L is an upper bound. Combining, L - epsilon < a_n <= L, so |a_n - L| < epsilon. Hence a_n to L. This completes the proof.

Study how little the proof needed. One witness a_N above L - epsilon, supplied by the supremum; monotonicity then drags the entire tail above L - epsilon, and the upper bound caps it below L + epsilon. The decreasing case follows by the mirror argument, or by applying the increasing case to (-a_n) and using inf S = -sup(-S) from Lesson 2. This is the first existence theorem for limits: it produces a limit from boundedness and monotonicity alone, with no formula in sight.

There is a clean dichotomy hiding here. An increasing sequence has exactly two possible fates: bounded above and convergent, or unbounded and divergent to infinity, meaning for every M there is N with a_n > M for all n >= N. No oscillation, no third option. When you know a sequence is monotone, the entire question of convergence reduces to the single question of boundedness, which is usually settled by induction.

Here is a consequence you have used since childhood without knowing it. An infinite decimal such as 0.3333... is, by definition, the limit of its truncations 0.3, 0.33, 0.333, ..., an increasing sequence bounded above by 0.4. The monotone convergence theorem is what guarantees that limit exists, so this theorem is the reason infinite decimal notation names actual numbers. A notation the whole world uses rests on the result you have just proved, which is as concrete as an existence theorem gets.

The nested interval property

The theorem has a geometric corollary that later lessons lean on heavily. Call intervals I_n = [a_n, b_n] nested if each contains the next: I_1 contains I_2, which contains I_3, and so on.

Theorem (Nested intervals). If I_n = [a_n, b_n] are nested closed intervals, their intersection is nonempty. If in addition the lengths b_n - a_n to 0, the intersection is a single point.

Proof. Nesting means a_1 <= a_2 <= ... <= b_2 <= b_1: the left endpoints increase, the right endpoints decrease, and every a_m is at most every b_n, since from the max(m, n)-th interval onward both constraints apply. So (a_n) is increasing and bounded above by b_1; by monotone convergence it converges to some a, and a = sup {a_n}. Likewise (b_n) decreases to b = inf {b_n}, and a <= b.

Every point of [a, b] lies in every I_n, because it is at least each a_n and at most each b_n; in particular the intersection is nonempty. If moreover b_n - a_n to 0, then b - a = lim (b_n - a_n) = 0 by the algebraic limit theorems, so a = b and the intersection is exactly the point a. This completes the proof.

Closedness is not decorative: the nested open intervals (0, 1/n) have empty intersection, since any candidate point x > 0 is expelled once 1/n < x, courtesy of the Archimedean property. The property is also a sharp test of completeness: in Q, nested closed rational intervals can squeeze down on sqrt(2) and intersect in nothing rational at all. Keep this theorem in your pocket; next lesson it powers the bisection proof of the Bolzano-Weierstrass theorem.

Worked application: a recursive sequence

Define a_1 = 1 and a_{n+1} = sqrt(2 + a_n). Does it converge? No closed formula for a_n is in sight, which is exactly the situation the monotone convergence theorem was built for. The plan: prove the sequence is bounded above, prove it is increasing, conclude a limit exists, and only then compute the limit from the recursion.

  1. Bounded above by 2. Check by induction: a_1 = 1 < 2, and if a_n < 2 then a_{n+1} = sqrt(2 + a_n) < sqrt(4) = 2.
  2. Increasing. Since 0 <= a_n < 2, we have a_{n+1}^2 - a_n^2 = 2 + a_n - a_n^2 = -(a_n - 2)(a_n + 1) > 0, so a_{n+1} > a_n.
  3. Conclusion. The sequence is increasing and bounded above, so by the theorem it converges to some L.

To find L, take limits in a_{n+1} = sqrt(2 + a_n): since both sides tend to L, we get L = sqrt(2 + L), so L^2 = 2 + L, giving L^2 - L - 2 = 0 and (L - 2)(L + 1) = 0. The limit must be positive, so L = 2. The theorem told us the limit exists; the recursion then pinned its value.

The order of operations here is not stylistic, it is logical. The step "take limits on both sides" is licensed by the algebraic limit theorems only after the limit is known to exist. To see what goes wrong otherwise, try the same shortcut on a_1 = 1, a_{n+1} = 2 a_n + 1. The fixed-point equation L = 2L + 1 gives L = -1, yet the sequence 1, 3, 7, 15, ... marches to infinity and its terms are all positive. The equation answered a question nobody was entitled to ask; existence comes first, always.

A little history: the theorem that demanded the axiom

This theorem is the reason the completeness axiom was isolated in the first place. Dedekind dated his dissatisfaction to 1858, when, teaching calculus at the Zurich Polytechnic, he found that the standard argument for the convergence of bounded increasing sequences rested on geometric self-evidence and nothing more. His cuts, published in 1872, were designed precisely so that this lesson's theorem would have an honest proof. When you cite the monotone convergence theorem, you are quoting the historical pivot where analysis stopped borrowing from geometry and started paying its own way.

Common wrong turns

The theorem is easy to state and easy to misapply. The recurring errors:

  • Solving the fixed-point equation first. As the example above shows, the equation L = f(L) is meaningful only after convergence is established. Existence, then evaluation.
  • Checking a few terms for monotonicity. Computing a_1 < a_2 < a_3 is evidence, not proof. The comparison must be established for all n, typically by induction, and the induction needs its base case stated.
  • Treating the supremum as attained. The limit of an increasing sequence is the supremum of its terms, but the sequence need never reach it: 1 - 1/n never equals 1.
  • Forgetting the other hypothesis. Bounded alone fails ((-1)^n), and monotone alone fails (a_n = n). The theorem spends both hypotheses, and a proof invoking it must check both.

Try it

Exercise. Let a_1 = 3 and a_{n+1} = (a_n + 6)/2. Prove the sequence converges and find its limit.

Scratch work first. Compute a term or two: a_2 = 4.5, a_3 = 5.25. The terms rise and seem to head toward 6, so conjecture: increasing, bounded above by 6. Both should yield to induction, since the recursion averages a_n with 6, and averaging with a larger number pulls you up without overshooting.

Solution. Bounded above by 6, by induction: a_1 = 3 < 6, and if a_n < 6 then a_{n+1} = (a_n + 6)/2 < (6 + 6)/2 = 6. Increasing: a_{n+1} - a_n = (a_n + 6)/2 - a_n = (6 - a_n)/2 > 0, since a_n < 6 for every n by the induction above. By the monotone convergence theorem the sequence converges to some L. Taking limits in the recursion, L = (L + 6)/2, so 2L = L + 6 and L = 6. This completes the proof.

Notice how the two induction arguments feed each other in the right order: boundedness was proved first because the monotonicity computation needed the inequality a_n < 6. Reading your own proofs for this kind of dependency, which fact must come first and why, is a habit worth building now, while the arguments are short.

Looking ahead

Monotone convergence trades a formula for structure: direction plus a bound buys existence. Most sequences are not monotone, so the next lesson extracts monotone behavior from arbitrary sequences using subsequences, and proves the Bolzano-Weierstrass theorem: every bounded sequence has a convergent subsequence. The nested interval property proved above will reappear there as the engine of the bisection argument, completeness once again wearing a geometric face.

Sources

  1. Lebl, J. (2026). Sequences and limits (Section 2.1). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Trench, W. F. (2013). 4.1: Sequences of real numbers. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  3. Rodriguez, C. (2020). Lecture 7: Convergent sequences of real numbers [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  4. O'Connor, J. J., & Robertson, E. F. (1998). Richard Dedekind. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  5. O'Connor, J. J., & Robertson, E. F. (2005). The real numbers: Attempts to understand. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  6. Dawkins, P. (n.d.). Calculus II: More on sequences. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  7. Zakon, E. (2004). Chapter 3: Vector spaces and metric spaces. Mathematical Analysis I, Mathematics LibreTexts. math.libretexts.org
Key terms
Increasing sequence
A sequence with a_n <= a_{n+1} for every n.
Decreasing sequence
A sequence with a_n >= a_{n+1} for every n.
Monotone
Being either increasing or decreasing throughout.
Monotone convergence theorem
A bounded monotone sequence converges, to its supremum or infimum.
Recursive sequence
A sequence defined by a starting value and a rule giving each term from the previous ones.

Subsequences and the Bolzano-Weierstrass Theorem

  • Define subsequences and relate them to convergence.
  • Prove that every sequence has a monotone subsequence.
  • Prove the Bolzano-Weierstrass theorem.

Not every bounded sequence converges, but something almost as good is always true: a bounded sequence must contain a convergent piece. That single sentence, the Bolzano-Weierstrass theorem, is the workhorse existence principle of analysis, and Modules 4 through 6 will call on it again and again. Making it precise requires the idea of a subsequence, which is also a sharp tool in its own right for proving divergence. This lesson develops both, and proves the main theorem twice, because each proof teaches a different lasting technique.

Subsequences

A subsequence of (a_n) is obtained by selecting an infinite, strictly increasing list of indices n_1 < n_2 < n_3 < ... and keeping only those terms, giving (a_{n_k}). For instance, the even-indexed terms a_2, a_4, a_6, ... form a subsequence. Strict increase matters: you may skip terms but never revisit or repeat one, and you must keep infinitely many.

One small index fact does quiet work in nearly every subsequence proof: n_k >= k for all k. The proof is a one-line induction. Base: n_1 is a natural number, so n_1 >= 1. Step: if n_k >= k, then n_{k+1} > n_k >= k, and being an integer strictly greater than k, it satisfies n_{k+1} >= k + 1. In words: a strictly climbing list of naturals climbs at least as fast as the counting numbers.

Fact. If a_n to L, then every subsequence also converges to L.

Proof. Let epsilon > 0. Convergence supplies N with |a_n - L| < epsilon for all n >= N. Now take any k >= N. By the index fact, n_k >= k >= N, so the subsequence term a_{n_k} is one of the controlled terms: |a_{n_k} - L| < epsilon. Hence a_{n_k} to L. This completes the proof.

The contrapositive is a handy divergence test: if two subsequences head to different limits, the sequence diverges. The sequence (-1)^n diverges precisely because its even terms tend to 1 while its odd terms tend to -1. This is usually the fastest divergence argument available, faster than negating the epsilon-N definition by hand, and it is the standard first move when a sequence visibly oscillates.

Every sequence has a monotone subsequence

The first route to Bolzano-Weierstrass is a beautiful combinatorial lemma: monotonicity is hiding inside every sequence whatsoever, bounded or not. The proof turns on a simple notion. Call an index m a peak if a_m >= a_n for all n > m: a term that sees over everything after it, the way a scenic overlook clears all the terrain downstream.

Lemma. Every sequence of reals has a monotone subsequence.

Proof sketch. Either there are infinitely many peaks or only finitely many, and each case delivers a monotone subsequence of its own kind. If there are infinitely many peaks m_1 < m_2 < m_3 < ..., then listing the peak terms in order gives a decreasing subsequence: each peak dominates every later term, and later peaks are later terms, so a_{m_1} >= a_{m_2} >= a_{m_3} >= ....

If instead there are only finitely many peaks, choose n_1 past the last peak. Since n_1 is not a peak, some later index n_2 > n_1 has a_{n_2} > a_{n_1}. Since n_2 is also past every peak, it is not a peak either, so some n_3 > n_2 has a_{n_3} > a_{n_2}. Chaining these choices forever produces a strictly increasing subsequence. Either way a monotone subsequence exists. This completes the sketch.

Notice the shape of the argument: a clean dichotomy, with each horn engineered to emit one of the two kinds of monotonicity. Nothing about boundedness has been used yet; that hypothesis enters only in the next step, which is exactly the right division of labor.

The Bolzano-Weierstrass theorem

Theorem (Bolzano-Weierstrass). Every bounded sequence of real numbers has a convergent subsequence.

Proof. Let (a_n) be bounded. By the lemma it has a monotone subsequence (a_{n_k}). This subsequence inherits the bound of the original sequence, so it is a bounded monotone sequence, and by the monotone convergence theorem it converges. Hence (a_n) has a convergent subsequence. This completes the proof.

Two lessons of machinery, the peak lemma and monotone convergence, snap together in three lines. When a proof compresses this much, the compression is the point: the work was done in advance, in reusable parts.

A second proof: bisection

The theorem deserves a second proof, both because the technique generalizes far beyond the real line and because it shows completeness acting through the nested interval property of last lesson. The idea: trap infinitely many terms in an interval, halve the interval, keep a half that still holds infinitely many terms, and repeat. The halves shrink to a point, and that point is forced to be a subsequential limit.

Proof. Since (a_n) is bounded, all terms lie in some closed interval I_0 = [A, B], and I_0 contains a_n for infinitely many indices n (indeed all of them). Split I_0 at its midpoint into two closed halves. If both halves held terms for only finitely many indices, then I_0 would too, which is false; so at least one half contains terms for infinitely many indices. Choose such a half and call it I_1. Repeating, we get nested closed intervals I_0, I_1, I_2, ..., each containing a_n for infinitely many n, with length of I_k equal to (B - A)/2^k, which tends to 0.

By the nested interval property, the intersection of all I_k is a single point x. Now build the subsequence. Choose n_1 with a_{n_1} in I_1. Given n_k, the interval I_{k+1} contains terms with infinitely many indices, so infinitely many of them exceed n_k; choose one and call it n_{k+1}. This yields n_1 < n_2 < ... with a_{n_k} in I_k for every k.

Finally, both a_{n_k} and x lie in I_k, so |a_{n_k} - x| <= (B - A)/2^k. Given epsilon > 0, choose K with (B - A)/2^K < epsilon, possible by the Archimedean property since 2^K > K. For k >= K, |a_{n_k} - x| < epsilon. Hence a_{n_k} to x. This completes the proof.

Pause on the two justified choices. "At least one half has infinitely many" is a pigeonhole fact: a union of two sets with finitely many indices each would have finitely many. And "pick an index larger than n_k" works because an infinite set of naturals cannot be contained in the finite set {1, ..., n_k}. Beginning proofs often wave at both steps; a complete argument names them.

Why keep both proofs? The peak-lemma proof is shorter and specific to the ordered line. The bisection proof needs no order at all, only the ability to chop a bounded region into finitely many shrinking pieces, and so it survives the move to higher dimensions, where it proves that bounded sequences in the plane or in R^n have convergent subsequences by bisecting boxes. Techniques, not statements, are what generalize, and bisection is the technique to remember.

The property proved here has a name you will meet again: a set is sequentially compact when every sequence drawn from it has a subsequence converging to a point of the set. The theorem says closed bounded intervals are sequentially compact, and closedness is what keeps the limit inside: the sequence 1/n in the open interval (0, 1) has all its subsequential limits at 0, which that set fails to contain.

This theorem is a cornerstone. It is the reason closed bounded intervals are compact, and compactness is what makes continuous functions on such intervals attain their maxima and behave uniformly, results you will prove in Module 4. A useful picture: no matter how the terms of a bounded sequence bounce around inside an interval, infinitely many of them must cluster near some single point, and that cluster point is the limit of the subsequence.

A number line from 0 to 1 with scattered sequence terms clustering near the point 0.7 0 1 cluster point

A little history: Bolzano and Weierstrass

Bernard Bolzano, a priest and mathematician working in Prague, stated a version of the theorem in an 1817 pamphlet whose goal was a purely analytic proof of the intermediate value theorem, decades ahead of its time and largely unread. Weierstrass, unaware of much of Bolzano's work, rediscovered the principle in his Berlin lectures of the 1860s and made it a pillar of the rigorous calculus he was building; his students spread it across Europe. The double name honors both the isolated pioneer and the teacher who made the idea unavoidable. The bisection argument you just read is essentially Weierstrass's classroom proof.

Common wrong turns

Subsequence arguments have a few standard failure modes, all preventable.

  • Repeating or reordering indices. The indices n_k must be strictly increasing. Selecting the same favorable term over and over builds a constant list, not a subsequence of the original.
  • Concluding convergence of the whole sequence. Bolzano-Weierstrass yields a convergent subsequence. The sequence (-1)^n is bounded, has many convergent subsequences, and diverges all the same.
  • Skipping the pigeonhole justification. In bisection, "choose the half with infinitely many terms" needs the observation that not both halves can be index-finite. State it; the proof is incomplete without it.
  • Confusing "infinitely many terms" with "all but finitely many." Each I_k contains terms for infinitely many indices, while infinitely many other terms may live elsewhere. The subsequence is built exactly to thread through the crowded intervals.

Try it

Exercise. Let a_n = sin(n pi / 2), whose values cycle through 1, 0, -1, 0, 1, 0, -1, 0, .... Exhibit three subsequences with three different limits, and conclude the sequence diverges.

Scratch work first. The pattern repeats with period 4: indices 1, 5, 9, ... give 1; indices 3, 7, 11, ... give -1; even indices give 0. Constant subsequences converge to their constant, so the three limits should be 1, -1, and 0.

Solution. Take n_k = 4k + 1: every term is a_{n_k} = 1, a constant sequence, so it converges to 1. Take n_k = 4k + 3: every term is -1, converging to -1. Take n_k = 2k: every term is 0, converging to 0. Each index list is strictly increasing, so each is a legitimate subsequence. Since two subsequences (indeed three) have different limits, the Fact of this lesson says the full sequence converges to no value. This completes the proof.

A bounded sequence can therefore scatter its affection among several cluster points; Bolzano-Weierstrass promises at least one, never exactly one. The set of subsequential limits of a bounded sequence is itself an object of study, and its largest and smallest members, the limit superior and limit inferior, will cross your path in later courses.

Looking ahead

Bolzano-Weierstrass converts boundedness, a static hypothesis, into convergence along a subsequence, a dynamic conclusion. The next lesson uses it to prove the Cauchy criterion: a sequence whose terms eventually crowd one another must converge outright. That criterion finally frees convergence proofs from needing the limit in advance, completing the toolkit this module set out to build.

Sources

  1. Lebl, J. (2026). Limit superior, limit inferior, and Bolzano-Weierstrass (Section 2.3). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 9: Limsup, liminf, and the Bolzano-Weierstrass theorem [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. O'Connor, J. J., & Robertson, E. F. (2005). Bernard Bolzano. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  4. O'Connor, J. J., & Robertson, E. F. (1998). Karl Weierstrass. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  5. Weisstein, E. W. (n.d.). Bolzano-Weierstrass theorem. MathWorld: A Wolfram Web Resource. mathworld.wolfram.com
  6. Trench, W. F. (2013). 4.1: Sequences of real numbers. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  7. Rudin, W. (1976). Principles of mathematical analysis (3rd ed.). McGraw-Hill. find source ↗
Key terms
Subsequence
A sequence formed by keeping terms at a strictly increasing set of indices.
Peak index
An index m with a_m >= a_n for all later n, used to extract a decreasing subsequence.
Bolzano-Weierstrass theorem
Every bounded sequence of reals has a convergent subsequence.
Cluster point
A value near which infinitely many terms of a sequence accumulate.
Divergence test
If two subsequences have different limits, the full sequence diverges.

Cauchy Sequences and Completeness Revisited

  • State the definition of a Cauchy sequence.
  • Prove that every convergent sequence is Cauchy.
  • Explain why every Cauchy sequence of reals converges.

The limit definition requires you to know the limit L in advance, and the monotone convergence theorem requires monotonicity. Many sequences offer neither. Cauchy's insight was to characterize convergence internally, using only how the terms relate to each other, with no reference to any external value: if the terms of a sequence eventually crowd arbitrarily close to one another, the sequence should be converging to something, whether or not anyone can name it. Completeness is exactly the promise that this "something" exists in R. This lesson makes the idea precise and proves it.

The definition

Definition. A sequence (a_n) is Cauchy if for every epsilon > 0 there exists N such that for all m, n >= N we have |a_m - a_n| < epsilon.

The terms of a Cauchy sequence get arbitrarily close to one another, not to a named target. Intuitively the sequence bunches up. Note the two indices m and n: both range freely beyond N, so the whole tail is squeezed into an interval of width epsilon. That double freedom is the definition's teeth, and it is precisely what the most common misreading gives away.

The misreading is to check only consecutive terms, verifying |a_{n+1} - a_n| to 0. That condition is strictly weaker. Consider a_n = sqrt(n). Consecutive gaps shrink: sqrt(n+1) - sqrt(n) = 1/(sqrt(n+1) + sqrt(n)), which tends to 0. Yet distant terms drift apart without bound: taking m = 4n gives a_m - a_n = sqrt(4n) - sqrt(n) = 2 sqrt(n) - sqrt(n) = sqrt(n), which exceeds any tolerance once n is large. Small steps can still walk to infinity, provided there are enough of them.

A second, historic example of the same trap: the partial sums s_n = 1 + 1/2 + ... + 1/n of the harmonic series. Consecutive gaps are 1/(n+1) to 0, but comparing s_{2n} with s_n gives s_{2n} - s_n = 1/(n+1) + ... + 1/(2n) >= n * (1/(2n)) = 1/2, since each of the n summands is at least 1/(2n). So with epsilon = 1/2, no threshold N ever works: the sequence is not Cauchy. Module 3 will read this computation as a divergence proof for the harmonic series.

Both failures share a diagnosis: the Cauchy condition quantifies over all pairs in the tail, and any verification must respect that. When you test a proposed Cauchy sequence, imagine an adversary choosing the pair m, n after seeing your N; your estimate must survive their worst choice, not merely the neighborly choice m = n + 1.

Convergent sequences are Cauchy

Theorem. Every convergent sequence is Cauchy.

Proof. Suppose a_n to L and let epsilon > 0. Choose N with |a_n - L| < epsilon/2 for all n >= N. Then for m, n >= N, the triangle inequality gives |a_m - a_n| <= |a_m - L| + |L - a_n| < epsilon/2 + epsilon/2 = epsilon. Hence the sequence is Cauchy. This completes the proof.

The mechanism deserves a sentence: two terms near the same landmark are near each other, at most twice the distance to the landmark, and the landmark here is L. The epsilon/2 budgeting exists solely so the two legs of the triangle inequality sum to epsilon. This direction is the easy one, and it holds in any setting where distances obey the triangle inequality; no completeness is involved yet.

Cauchy sequences converge: the completeness of R

The deep direction is the converse, and it is equivalent to the completeness axiom. Before the proof, the plan, because the proof is a template worth memorizing. Step one: a Cauchy sequence is bounded, by the head-and-tail argument from Lesson 5 of Module 2. Step two: boundedness hands us a convergent subsequence via Bolzano-Weierstrass, which manufactures a candidate limit L out of thin air. Step three: the Cauchy condition welds the whole sequence to that subsequence, so everything converges to L. Candidate, then capture.

Theorem (Cauchy criterion). Every Cauchy sequence of real numbers converges.

Proof. Let (a_n) be Cauchy. First it is bounded: taking epsilon = 1, there is N with |a_n - a_N| < 1 for n >= N, so those terms lie within 1 of a_N, and the finitely many earlier terms are bounded as well. By Bolzano-Weierstrass the bounded sequence has a subsequence a_{n_k} to L. We claim the whole sequence converges to that same L. Let epsilon > 0.

Since the sequence is Cauchy, choose N_1 with |a_m - a_n| < epsilon/2 for m, n >= N_1. Since the subsequence converges, choose an index n_k >= N_1 with |a_{n_k} - L| < epsilon/2. Then for any n >= N_1, |a_n - L| <= |a_n - a_{n_k}| + |a_{n_k} - L| < epsilon/2 + epsilon/2 = epsilon. Hence a_n to L. This completes the proof.

Look at the role each hypothesis played. Boundedness came for free from the Cauchy condition with one fixed tolerance. Bolzano-Weierstrass, which secretly carries the completeness axiom inside it, produced the limit candidate; nothing else in the proof could have. The final paragraph is pure triangle inequality: the subsequence term a_{n_k} serves as the landmark, close to L by subsequential convergence and close to every late a_n by the Cauchy property. One landmark, two short legs, and the tail is captured.

It is worth asking which earlier theorem could be dropped from the chain. None: the proof used boundedness, then Bolzano-Weierstrass, which rested on the monotone subsequence lemma and monotone convergence, which rested on the completeness axiom. The criterion is the visible tip of a logical tower. Tracing such dependencies is a genuinely graduate habit: when you later work in spaces where one floor of the tower is missing, you will know at once which theorems above it survive.

The two theorems together give the Cauchy criterion: a sequence of reals converges if and only if it is Cauchy. This is enormously useful because it lets you prove convergence without guessing the limit. It is also conceptually central: in an Archimedean ordered field, the Cauchy criterion is equivalent to the least upper bound property, so "every Cauchy sequence converges" is a legitimate alternative formulation of completeness, and it is the formulation that survives in settings with no order at all.

The criterion at work: contractive sequences

Here is the criterion earning its keep on a whole class of sequences at once. Call (a_n) contractive if there is a constant r with 0 < r < 1 such that |a_{n+2} - a_{n+1}| <= r |a_{n+1} - a_n| for all n: each step is at most a fixed fraction of the previous step.

Theorem. Every contractive sequence converges.

Proof. Write d = |a_2 - a_1|. Iterating the contraction hypothesis gives |a_{n+1} - a_n| <= r^{n-1} d, by induction. For m > n, the triangle inequality across the intermediate terms gives |a_m - a_n| <= |a_{n+1} - a_n| + |a_{n+2} - a_{n+1}| + ... + |a_m - a_{m-1}| <= d(r^{n-1} + r^n + ... + r^{m-2}). The geometric block is at most the full geometric tail: r^{n-1} d (1 + r + r^2 + ...) = r^{n-1} d/(1 - r).

Since 0 < r < 1, r^{n-1} to 0, so given epsilon > 0 we may choose N with r^{N-1} d/(1 - r) < epsilon. For all m > n >= N, |a_m - a_n| <= r^{n-1} d/(1 - r) <= r^{N-1} d/(1 - r) < epsilon. The sequence is Cauchy, hence convergent by the criterion. This completes the proof.

Notice what we never needed: any idea of what the limit is. Contractive iterations are how numerical methods like Newton's method are analyzed, and this theorem is a first cousin of the Banach fixed point theorem you will meet in later courses. The pattern, telescoping the gap |a_m - a_n| through intermediate steps and summing a geometric bound, is one to file away permanently.

A little history: from Cauchy's confidence to Cantor's construction

Cauchy stated the criterion in his 1821 Cours d'analyse and treated its sufficiency as evident: terms that crowd together must crowd around something. He could not prove it, and no proof was possible at the time, because no precise definition of the real numbers existed for the limit to live in. The gap was filled in 1872, when Cantor defined real numbers as Cauchy sequences of rationals, two sequences naming the same number when they interleave within every tolerance. In Cantor's framework the criterion becomes provable, essentially by construction.

The vindication runs deeper. When mathematicians later abstracted distance itself, in the metric spaces of Frechet's 1906 thesis, order and suprema were no longer available, but distances and Cauchy sequences still made sense. Completeness in modern mathematics means "every Cauchy sequence converges," and spaces are routinely completed by adjoining ideal limits for their Cauchy sequences, exactly as R completes Q. What began as Cauchy's unproved confidence became the definition.

Common wrong turns

Cauchy arguments are short, which leaves little room to hide errors and much room to make them.

  • Testing only consecutive terms. |a_{n+1} - a_n| to 0 does not imply Cauchy, as sqrt(n) and the harmonic partial sums show. Both free indices m, n >= N must be controlled.
  • Smuggling in the limit. If your proof that a sequence is Cauchy mentions its limit, the proof is circular or the criterion was pointless. The whole value of the condition is limit-free verification.
  • Expecting monotonicity. Cauchy sequences may oscillate forever while converging, like (-1)^n/n. Do not import hypotheses the definition does not grant.
  • Forgetting where completeness lives. In Q, the sequence of decimal truncations of sqrt(2) is Cauchy and converges to nothing rational. "Cauchy implies convergent" is a property of the space, not of the sequence alone.

Try it

Exercise. Prove directly from the definition that a_n = 1/n is Cauchy, without invoking its limit.

Scratch work first. For m, n >= N, both 1/m and 1/n lie in the interval (0, 1/N]. Two numbers inside an interval of length 1/N differ by less than 1/N, so it suffices to make 1/N < epsilon, which the Archimedean property arranges.

Solution. Let epsilon > 0. Choose a natural number N with 1/N < epsilon. For any m, n >= N, both 1/m and 1/n lie in (0, 1/N], so |1/m - 1/n| < 1/N < epsilon. (In detail: if, say, 1/m <= 1/n, then 0 <= 1/n - 1/m < 1/n <= 1/N.) Hence the sequence is Cauchy. This completes the proof.

Compare this with the convergence proof of Lesson 4 in Module 2: the effort is nearly identical here, but the Cauchy version generalizes to situations where no limit is visible, which is exactly when the criterion is worth its weight.

Looking ahead

The module's toolkit is complete: direct verification, algebraic rules, squeeze, monotone convergence, Bolzano-Weierstrass, and now a limit-free criterion. Module 3 aims all of it at infinite series, where the sequence in question is a sequence of partial sums and the Cauchy criterion becomes the master test behind comparison, ratio, and the rest. The harmonic computation you saw above will be the first casualty.

Sources

  1. Lebl, J. (2026). Cauchy sequences (Section 2.4). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 10: The completeness of the real numbers and basic properties of infinite series [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. O'Connor, J. J., & Robertson, E. F. (1997). Augustin-Louis Cauchy. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  4. O'Connor, J. J., & Robertson, E. F. (1998). Georg Cantor. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  5. O'Connor, J. J., & Robertson, E. F. (2005). The real numbers: Stevin to Hilbert. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  6. Weisstein, E. W. (n.d.). Cauchy sequence. MathWorld: A Wolfram Web Resource. mathworld.wolfram.com
  7. Hunter, J. K. (n.d.). Chapter 3: Sequences [Lecture notes]. An Introduction to Analysis, University of California, Davis. math.ucdavis.edu
Key terms
Cauchy sequence
For every epsilon > 0 there is N with |a_m - a_n| < epsilon for all m, n >= N.
Cauchy criterion
A sequence of reals converges if and only if it is Cauchy.
Internal characterization
A description of convergence using only the terms, without naming the limit.
Completeness (metric sense)
Every Cauchy sequence converges within the space.
Tail of a sequence
All terms from some index N onward.

Module 3: Infinite Series

Define convergence of series through partial sums and develop the standard convergence tests.

Series and Convergence of Partial Sums

  • Define the sum of a series as the limit of its partial sums.
  • Evaluate geometric series and the telescoping series.
  • Prove the n-th term test for divergence.

An infinite series is an attempt to add infinitely many numbers. Taken literally, the attempt is incoherent: addition is defined for two numbers at a time, and no amount of repetition performs infinitely many additions. The escape is the same one analysis always uses. We add finitely many terms, watch the running totals, and ask whether those totals converge. Nothing new is assumed; convergence of a series is, by definition, convergence of an associated sequence, and every theorem of Module 2 instantly applies. This lesson sets up the definition and works the three examples that anchor the whole theory.

Partial sums

Given a sequence (a_k), its partial sums are s_n = a_1 + a_2 + ... + a_n. The series sum a_k converges to S if the sequence of partial sums converges to S, and then we write sum a_k = S. If the partial sums diverge, the series diverges. So every question about series is secretly a question about the sequence (s_n).

Keep the two sequences in the story separate: the terms (a_k) and the partial sums (s_n). Everything the series does happens to the partial sums; the terms are only the increments. The notation sum a_k = S is an honest abbreviation for lim s_n = S, and when confusion strikes, unabbreviate. A surprising number of series errors dissolve the moment the partial sums are written down explicitly.

Because series convergence is sequence convergence, the algebraic limit theorems transfer immediately: if sum a_k = S and sum b_k = T, then sum (a_k + b_k) = S + T and sum (c a_k) = cS for any constant c. Also, changing finitely many terms never affects whether a series converges, since late partial sums shift by a fixed constant; it does, in general, change the value of the sum. Convergence is a tail property, the sum itself is not.

The geometric series

The most important example is the geometric series sum r^k starting at k = 0. Its partial sums admit a closed form, and the derivation is a two-line piece of algebra worth owning. Let s_n = 1 + r + r^2 + ... + r^{n-1}. Multiply by r: r s_n = r + r^2 + ... + r^n. Subtract: all middle terms cancel, leaving s_n - r s_n = 1 - r^n, so for r != 1, s_n = (1 - r^n)/(1 - r).

Everything now rides on the behavior of r^n, and rigor demands we prove the key fact rather than gesture at it. Claim: if |r| < 1 then r^n to 0. Proof. For r = 0 this is immediate. Otherwise write |r| = 1/(1 + h) with h = 1/|r| - 1 > 0. Bernoulli's inequality, provable by induction, gives (1 + h)^n >= 1 + nh, so |r^n| = 1/(1 + h)^n <= 1/(1 + nh). Given epsilon > 0, the Archimedean property supplies N with 1/(1 + Nh) < epsilon, and for n >= N the bound follows. This completes the proof.

Result. For |r| < 1, sum (from k=0 to infinity) r^k = 1/(1 - r), since s_n = (1 - r^n)/(1 - r) to (1 - 0)/(1 - r) by the algebraic limit theorems. For example sum (1/2)^k = 1/(1 - 1/2) = 2. If |r| >= 1, the terms r^k do not tend to 0, and the series diverges by the n-th term test proved below.

One consequence deserves its moment: the repeating decimal 0.999... means the series 9/10 + 9/100 + 9/1000 + ..., which is geometric with first term 9/10 and ratio 1/10, summing to (9/10)/(1 - 1/10) = 1. The famous identity 0.999... = 1 is not a curiosity or a convention; it is a computed limit of partial sums, and the definition of a series is exactly what makes the question well posed.

A telescoping series

Example. Evaluate sum (from k=1 to infinity) 1/(k(k+1)). Using partial fractions, 1/(k(k+1)) = 1/k - 1/(k+1). The partial sum collapses:

s_n = (1 - 1/2) + (1/2 - 1/3) + ... + (1/n - 1/(n+1)) = 1 - 1/(n+1).

As n to infinity, s_n to 1, so the series sums to 1. When consecutive terms cancel like this, the series is called telescoping, and its sum is read off the surviving endpoints.

Two remarks keep the technique honest. First, the collapse happens inside a finite sum, where regrouping is licensed by ordinary associativity; no infinite rearrangement is being smuggled in. Second, the method has two steps, not one: collapse the partial sum, then take its limit. A telescoping form whose surviving term does not converge, such as sum (from k=1) [sqrt(k+1) - sqrt(k)] with partial sum sqrt(n+1) - 1, correctly reports divergence. Telescoping is a way to compute partial sums; the verdict still belongs to the limit.

The Cauchy criterion for series

Since series convergence is convergence of partial sums, the Cauchy criterion of the last lesson translates directly, and the translation is the master test behind next lesson's machinery. For m > n, the difference of partial sums is a block of consecutive terms: s_m - s_n = a_{n+1} + a_{n+2} + ... + a_m.

Theorem (Cauchy criterion for series). The series sum a_k converges if and only if for every epsilon > 0 there is N such that for all m > n >= N, |a_{n+1} + a_{n+2} + ... + a_m| < epsilon.

In words: every sufficiently late block of consecutive terms, of any length, must have small total. The proof is nothing but the sequence criterion applied to (s_n), plus the display above. The power of the reformulation is that it speaks entirely in terms of the a_k, with the limit nowhere in sight, which is what makes comparison arguments possible.

The n-th term test

Theorem (Divergence test). If sum a_k converges, then a_k to 0. Equivalently, if a_k does not tend to 0, the series diverges.

Proof. Suppose sum a_k = S, so s_n to S and also s_{n-1} to S. Then a_n = s_n - s_{n-1} to S - S = 0. This completes the proof.

Notice the proof is one algebraic identity plus the limit theorems, and notice it is also the shortest case of the Cauchy criterion: blocks of length one must be small. That containment shows the test's true rank. It inspects the flimsiest possible blocks, so it can only ever certify divergence, never convergence.

Warning: the converse is false. Terms tending to 0 do not guarantee convergence. The harmonic series sum 1/k has terms tending to zero, yet its blocks refuse to shrink: as computed last lesson, s_{2n} - s_n >= 1/2 for every n, so the Cauchy criterion fails at epsilon = 1/2 and the series diverges. The n-th term test can only prove divergence, never convergence, and the harmonic series is the permanent reminder posted at the boundary.

A little history: two millennia of suspicion

Series are where infinity first touched calculation, and the contact was uneasy. Zeno's paradox of the runner, who must first cover half the course, then half the remainder, and so on, is the geometric series 1/2 + 1/4 + 1/8 + ... = 1 read as philosophy. Around 1350, Nicole Oresme proved the harmonic series diverges by the grouping argument you will formalize next lesson, a result so far ahead of its context that it was forgotten and reproved centuries later.

The eighteenth century, led by Euler's spectacular manipulations, treated series as formal expressions to be combined at will, and mostly got away with it. The reckoning arrived with examples like Grandi's series 1 - 1 + 1 - 1 + ...: group it as (1 - 1) + (1 - 1) + ... to see 0, or as 1 - (1 - 1) - (1 - 1) - ... to see 1.

Under this lesson's definition the dispute closes quickly. The partial sums of Grandi's series alternate 1, 0, 1, 0, ... and converge to nothing, so the modern verdict is divergence, and the paradox evaporates: the "different sums" were manipulations performed on an object that had no sum to begin with. Cauchy and Abel made convergence a precondition for arithmetic with series, which is the discipline this module teaches.

Common wrong turns

Series inherit every subtlety of sequences and add bookkeeping of their own. The recurring slips:

  • Using the n-th term test backwards. From a_k to 0 nothing follows. The test has one direction, and the harmonic series stands as the counterexample to the other.
  • Doing arithmetic on divergent series. Regrouping or canceling inside sum a_k presumes convergence, as Grandi's series shows. Verify convergence first, then manipulate.
  • Losing track of the starting index. The formula 1/(1 - r) is for a geometric series starting at k = 0 with first term 1. Starting elsewhere rescales the sum: sum (from k=1) r^k = r/(1 - r).
  • Concluding a sum from a collapsed partial sum. Telescoping delivers s_n in closed form; the series still stands or falls with lim s_n. Write the limit step explicitly.

Try it

Exercise. Evaluate sum (from k=1 to infinity) 1/(k(k+2)).

Scratch work first. The denominator is a product of terms two apart, so try partial fractions: 1/(k(k+2)) = A/k + B/(k+2) gives A = 1/2, B = -1/2. The gap of two means cancellation will skip a step, so expect two surviving positive terms at the front and two vanishing terms at the back.

Solution. Write 1/(k(k+2)) = (1/2)(1/k - 1/(k+2)). The partial sum is s_n = (1/2)[(1/1 - 1/3) + (1/2 - 1/4) + (1/3 - 1/5) + ... + (1/n - 1/(n+2))]. Every negative 1/(k+2) cancels the positive 1/k two slots later, leaving s_n = (1/2)[1 + 1/2 - 1/(n+1) - 1/(n+2)]. As n to infinity, the two tail fractions vanish, so s_n to (1/2)(3/2) = 3/4. Hence the series converges and sum 1/(k(k+2)) = 3/4. This completes the solution.

Checking the shape of the answer is a good habit: the terms are smaller than those of sum 1/(k(k+1)), whose sum is 1, so a value below 1 is plausible, and 3/4 passes the test. Estimates that sanity-check exact answers are not extra work; they are how errors get caught before anyone else sees them.

Looking ahead

You now have the definition, one family with a closed form, one collapsing trick, a master criterion, and one divergence test. That is nowhere near enough: most series admit no closed form for s_n, so their convergence must be judged indirectly, by comparing them against series already understood. Building that comparison machinery, comparison, ratio, root, integral, and the absolute-versus-conditional divide, is the business of the next lesson.

Sources

  1. Lebl, J. (2026). Series (Section 2.5). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Trench, W. F. (2013). 4.3: Infinite series of constants. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  3. Rodriguez, C. (2020). Lecture 10: The completeness of the real numbers and basic properties of infinite series [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  4. Dawkins, P. (n.d.). Calculus II: Series, the basics. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  5. Dawkins, P. (n.d.). Calculus II: Special series. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  6. Weisstein, E. W. (n.d.). Geometric series. MathWorld: A Wolfram Web Resource. mathworld.wolfram.com
  7. O'Connor, J. J., & Robertson, E. F. (2003). Nicholas Oresme. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
Key terms
Partial sum
The finite sum s_n = a_1 + ... + a_n of the first n terms.
Series convergence
The series converges if its sequence of partial sums converges.
Geometric series
A series sum r^k; it converges to 1/(1 - r) exactly when |r| < 1.
Telescoping series
A series whose consecutive terms cancel, leaving only boundary terms.
n-th term test
If a series converges then its terms tend to 0; failing this forces divergence.

Convergence Tests for Series

  • Prove the harmonic series diverges and understand p-series.
  • Apply the comparison, ratio, and integral tests.
  • Distinguish absolute from conditional convergence.

Most series have no closed-form partial sum, so we judge convergence indirectly with tests. Every test in this lesson is, at bottom, the same maneuver: compare a mystery series against one whose behavior is settled, usually a geometric or p-series, and let the comparison transmit the verdict. Each test comes with a proof from the tools of Module 2, and the proofs are worth reading because they tell you exactly when a test applies and why it can fail to speak.

The harmonic series diverges

Theorem. The harmonic series sum 1/k diverges, even though 1/k to 0.

Proof (grouping). Group the terms in blocks whose lengths are powers of two: (1/2) + (1/3 + 1/4) + (1/5 + ... + 1/8) + .... Each parenthesized block is at least 1/2, since for example 1/3 + 1/4 > 1/4 + 1/4 = 1/2 and 1/5 + 1/6 + 1/7 + 1/8 > 4 * (1/8) = 1/2. Adding enough blocks makes the partial sums exceed any bound, so the series diverges. This completes the proof.

The argument is due to Nicole Oresme around 1350, and it is the same computation that showed the partial sums fail the Cauchy criterion: the block from 1/(n+1) to 1/(2n) always totals at least 1/2. Divergence here is slow, the partial sums grow like the logarithm, and slowness is the lesson: a series can diverge while looking numerically tame for its first million terms. Eyeballing partial sums is not a test.

More generally the p-series sum 1/k^p converges if and only if p > 1. So sum 1/k^2 converges while sum 1/k and sum 1/sqrt(k) diverge. The p-series family is the standard yardstick for polynomial-rate decay, as the geometric family is for exponential decay.

The comparison test

Comparison test. Suppose 0 <= a_k <= b_k for all large k. If sum b_k converges then sum a_k converges; if sum a_k diverges then sum b_k diverges.

Proof. Discarding finitely many terms changes neither verdict, so assume 0 <= a_k <= b_k for all k. The partial sums s_n = a_1 + ... + a_n are increasing, since each increment a_k is nonnegative, and likewise the partial sums t_n of sum b_k. If sum b_k converges to T, then s_n <= t_n <= T for every n: the increasing sequence (s_n) is bounded above, so by the monotone convergence theorem it converges, which is convergence of sum a_k. The second statement is the contrapositive of the first. This completes the proof.

Notice where positivity entered: it made the partial sums monotone, converting convergence into mere boundedness. That is the entire secret of nonnegative series, and it is why the comparison test carries a nonnegativity hypothesis that cannot be waived. Example. sum 1/(k^2 + 1) converges because 1/(k^2 + 1) < 1/k^2 and the p-series sum 1/k^2 converges.

The ratio test

Ratio test. For a series with nonzero terms, suppose |a_{k+1}/a_k| to L. If L < 1 the series converges absolutely; if L > 1 it diverges; if L = 1 the test is inconclusive.

Proof. Suppose L < 1 and fix r with L < r < 1, say r = (L + 1)/2. Since the ratios converge to L, taking epsilon = r - L in the limit definition gives N such that |a_{k+1}/a_k| < r for all k >= N. Multiplying the inequalities |a_{k+1}| < r|a_k| forward from N gives |a_k| <= |a_N| r^{k-N} for k >= N. The right side is a constant times a convergent geometric series with ratio r < 1, so sum |a_k| converges by comparison.

If L > 1, the same argument with r = (L + 1)/2 > 1 shows |a_k| is eventually increasing, so the terms do not tend to 0 and the series diverges by the n-th term test. For L = 1 no verdict is possible: sum 1/k and sum 1/k^2 both have ratio limits equal to 1, and one diverges while the other converges. This completes the proof.

Read the proof's moral: the ratio test is the geometric comparison test in disguise, automated. It manufactures the dominating geometric series for you, with ratio squeezed between L and 1. The buffer r is essential; comparing against ratio L itself would fail, since the actual ratios may hover slightly above their limit. Example. sum 1/k! has ratio a_{k+1}/a_k = 1/(k+1) to 0 < 1, so it converges. (Its sum is the number e - 1.)

The root test

Root test. Suppose |a_k|^{1/k} to L. If L < 1 the series converges absolutely; if L > 1 it diverges; if L = 1 the test is inconclusive.

Proof. If L < 1, fix r = (L + 1)/2, so L < r < 1. Convergence of the roots gives N with |a_k|^{1/k} < r for k >= N, and raising to the k-th power, |a_k| < r^k. Comparison with the geometric series sum r^k gives absolute convergence. If L > 1, then |a_k|^{1/k} > 1 for large k, so |a_k| > 1 infinitely often, the terms do not tend to 0, and the series diverges. The p-series pair with p = 1, 2 again shows L = 1 decides nothing, since k^{1/k} to 1. This completes the proof.

Ratio and root serve the same clients, series with exponential-type decay, and the root test is the marginally stronger instrument: whenever the ratio limit exists the root limit exists and equals it, while series with wildly varying consecutive ratios can still have well-behaved roots. In practice, reach for the ratio test when factorials appear and for the root test when the k-th power sits in plain sight.

The integral test

Integral test. If f is positive, continuous, and decreasing with f(k) = a_k, then sum a_k and the improper integral of f from 1 to infinity either both converge or both diverge.

The picture behind it: over each interval [k, k+1], the rectangle of height f(k) encloses the curve and the rectangle of height f(k+1) fits beneath it, so the partial sums bracket the integral from both sides: a_2 + ... + a_n <= integral (from 1 to n) f <= a_1 + ... + a_{n-1}. Boundedness therefore passes back and forth between the increasing partial sums and the increasing integrals, and the monotone convergence theorem finishes on either side. The full proof waits until the Riemann integral is constructed in Module 6, and nothing in that construction depends on this test, so no circularity threatens.

This is the cleanest way to settle p-series: the integral of x^{-p} from 1 to b is (b^{1-p} - 1)/(1 - p) for p != 1, which stays bounded as b grows exactly when p > 1, and is ln b, unbounded, at p = 1.

Absolute versus conditional convergence

A series converges absolutely if sum |a_k| converges. Absolute convergence implies convergence, and the Cauchy criterion explains why: every block obeys |a_{n+1} + ... + a_m| <= |a_{n+1}| + ... + |a_m| by the triangle inequality, so small blocks for sum |a_k| force small blocks for sum a_k. A series that converges but not absolutely converges conditionally.

The alternating harmonic series sum (-1)^{k+1}/k is the classic conditional example. It converges by the alternating series test: when terms alternate in sign with absolute values decreasing to zero, the even partial sums increase, the odd ones decrease, each even sum is below each odd sum, and the gap between consecutive ones is a term tending to zero, so both flanks converge to a common value by nested intervals. Its sum happens to be ln 2. Yet sum 1/k diverges, so the convergence is conditional, and conditional convergence turns out to be a fragile state.

How fragile is the content of the rearrangement caveat. Rearranging means summing the same terms in a different order. For absolutely convergent series, every rearrangement converges to the same sum. For conditionally convergent series, Riemann proved in work published in 1867 that rearrangement can achieve any prescribed real number, or divergence to either infinity. The positive terms alone sum to infinity, the negative terms to minus infinity, so a rearranger can alternate greedily: pour in positive terms until the target is passed, then negative terms until it is undershot, forever; the leftover terms tend to zero, so the oscillations damp onto the target.

A concrete taste: take the alternating harmonic series and follow each positive term with two negative ones, 1 - 1/2 - 1/4 + 1/3 - 1/6 - 1/8 + .... A short computation groups this into one half of the original series, so the rearranged sum is (1/2) ln 2: same terms, different order, half the sum. Dirichlet had noticed such anomalies in 1837; Riemann turned them into a theorem. The moral for practice: never reorder or regroup an infinite series without first certifying absolute convergence.

Choosing a test

A rough field guide, refined by experience. Terms built from factorials or k-dependent exponentials: ratio test. Terms with a visible k-th power: root test. Terms decaying like a power of k: comparison against a p-series, perhaps in limit-comparison form. Terms of alternating sign: check absolute convergence first, then the alternating series test. And before everything, glance at the n-th term test: if the terms do not tend to zero, no further analysis is owed. When one test is inconclusive, another may not be; the tests are instruments, not verdicts.

Common wrong turns

Test-driven arguments fail along predictable seams.

  • Comparing in the useless direction. Showing a_k is below the terms of a divergent series, or above those of a convergent one, proves nothing. Domination must run from the known series toward the conclusion.
  • Applying comparison to signed terms. The comparison test needs nonnegative terms; its proof used monotone partial sums. For signed series, compare |a_k| and settle absolute convergence instead.
  • Extracting a verdict from L = 1. Ratio or root limit equal to 1 is silence, not evidence; the p-series pair witnesses both outcomes.
  • Rearranging without absolute convergence. Conditionally convergent series can be steered to any sum by reordering, so order-sensitive manipulations require the absolute certificate first.

Try it

Exercise. Determine whether sum (from k=1 to infinity) k^2/2^k converges.

Scratch work first. The 2^k suggests exponential decay outpacing the polynomial k^2, and the mixed polynomial-exponential form is ratio test territory. Expect the ratio to approach 1/2, with the polynomial factor contributing a limit of 1.

Solution. With a_k = k^2/2^k, compute the ratio: a_{k+1}/a_k = ((k+1)^2/2^{k+1}) * (2^k/k^2) = (1/2)((k+1)/k)^2 = (1/2)(1 + 1/k)^2. As k to infinity, 1/k to 0, so by the algebraic limit theorems the ratio tends to (1/2)(1 + 0)^2 = 1/2 < 1. By the ratio test, the series converges (absolutely, though its terms are already positive). This completes the solution.

The general shape is worth remembering: for any polynomial p(k) and any |r| < 1, the series sum p(k) r^k converges, because the ratio limit is |r|. Exponential decay defeats polynomial growth, every time, and the ratio test is the cleanest way to certify it.

Looking ahead

Series theory will return at the end of the course, when the terms become functions and convergence must hold across a whole interval at once. Before that, Module 4 carries the epsilon language from sequences to functions of a real variable, where limits acquire a second tolerance and continuity becomes a theorem-generating definition. The habits built here, compare against a known standard and respect the hypotheses, transfer without modification.

Sources

  1. Lebl, J. (2026). More on series (Section 2.6). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 11: Absolute convergence and the comparison test for series [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. Rodriguez, C. (2020). Lecture 12: The ratio, root, and alternating series tests [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  4. Dawkins, P. (n.d.). Calculus II: Comparison test and limit comparison test. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  5. Dawkins, P. (n.d.). Calculus II: Ratio test. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  6. Trench, W. F. (2013). 4.3: Infinite series of constants. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  7. O'Connor, J. J., & Robertson, E. F. (2000). Lejeune Dirichlet. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
Key terms
Harmonic series
The divergent series sum 1/k, whose terms tend to 0 but whose sum is unbounded.
p-series
sum 1/k^p; it converges if and only if p > 1.
Comparison test
A nonnegative series is controlled above or below by another whose behavior is known.
Ratio test
If the limiting ratio of successive terms is below 1 the series converges absolutely.
Absolute convergence
Convergence of the series of absolute values, which implies ordinary convergence.

Module 4: Limits and Continuity of Functions

Extend epsilon-delta reasoning to functions, then prove the great theorems about continuity.

The Epsilon-Delta Definition of a Limit

  • State the epsilon-delta definition of the limit of a function.
  • Prove limits of specific functions directly from the definition.
  • Relate function limits to sequential limits.

We now move from sequences to functions. The limit of a function at a point is defined with two tolerances instead of one: an output tolerance epsilon and an input tolerance delta. The grammar of the definition is the same as epsilon-N, challenge then response, and every habit you built in Module 2, scratch work backwards and proof forwards, transfers intact. What is new is that closeness in the input must now be converted into closeness in the output, and the conversion rate varies from function to function and from point to point.

The definition

Definition. Let f be defined near c (except possibly at c). We say lim (x to c) f(x) = L if for every epsilon > 0 there exists delta > 0 such that whenever 0 < |x - c| < delta, it follows that |f(x) - L| < epsilon.

Read it as a game. The challenger fixes an output band of half-width epsilon around L. You must find an input band of half-width delta around c so that every x in your band (except c itself) is sent into the output band. The clause 0 < |x - c| excludes x = c, because the limit concerns behavior near c, not the value there.

The exclusion has bite. Define f(x) = x for x != 1 and f(1) = 5. Then lim (x to 1) f(x) = 1, not 5: the definition never consults f(1), and the lone eccentric value is invisible to the limit. Functions need not even be defined at c, which is precisely the situation of the difference quotients that define derivatives in Module 5, where the forbidden point is exactly the one everything else orbits.

As with sequences, quantifier order carries the meaning: epsilon is named first, and delta may depend on it. Expect small epsilon to demand small delta, with the exchange rate set by how steeply f varies near c. A gently sloped function converts input closeness to output closeness generously; a steep one drives a hard bargain. That geometric reading will become a theorem when derivatives arrive.

A linear example

Claim. lim (x to 3) (2x + 1) = 7.

Scratch work. We work backwards from the goal. We need |(2x + 1) - 7| < epsilon, that is |2x - 6| = 2|x - 3| < epsilon, i.e. |x - 3| < epsilon/2. The distance to control is exactly the input distance, scaled by the slope 2. So delta = epsilon/2 should work. Now the forward version.

Proof. Let epsilon > 0. Choose delta = epsilon/2. Then for any x with 0 < |x - 3| < delta, we have |(2x + 1) - 7| = 2|x - 3| < 2 delta = epsilon. This completes the proof.

The strategy is standard: start from the desired output inequality, solve it for |x - c|, and let that bound define delta. For linear functions the algebra is exact and delta is proportional to epsilon, the constant of proportionality being the reciprocal of the slope's magnitude.

A quadratic example

Claim. lim (x to 2) x^2 = 4.

Scratch work. Factor the error: |x^2 - 4| = |x - 2||x + 2|. The factor |x - 2| is ours to shrink, but |x + 2| rides along and depends on x. The fix: promise in advance that |x - 2| < 1, which pens x into (1, 3) and caps |x + 2| below 5. Under that promise, |x^2 - 4| < 5|x - 2|, and making 5|x - 2| < epsilon needs |x - 2| < epsilon/5. Both promises are kept by taking the smaller of the two radii.

Proof. Given epsilon > 0, choose delta = min(1, epsilon/5). For 0 < |x - 2| < delta, both restrictions hold: |x - 2| < 1 forces 1 < x < 3, hence |x + 2| < 5; and |x - 2| < epsilon/5. Therefore |x^2 - 4| = |x - 2||x + 2| < (epsilon/5) * 5 = epsilon. This completes the proof.

The min trick handles the extra factor: one part of delta tames the coefficient, the other delivers the final epsilon. The preliminary radius 1 was a free choice; radius 1/2 would cap |x + 2| below 4.5 and lead to delta = min(1/2, epsilon/4.5), equally valid. Deltas are not unique, and hunting for the largest one is wasted effort; the definition asks only for existence.

The sequential criterion

Theorem. lim (x to c) f(x) = L if and only if for every sequence x_n to c with x_n != c, we have f(x_n) to L.

Proof. Suppose first that the function limit holds, and let x_n to c with x_n != c. Given epsilon > 0, the function limit supplies delta > 0 such that 0 < |x - c| < delta implies |f(x) - L| < epsilon. Since x_n to c, there is N with |x_n - c| < delta for all n >= N, and since x_n != c the strict positivity holds too. Hence |f(x_n) - L| < epsilon for n >= N, so f(x_n) to L.

For the converse, argue contrapositively: suppose the function limit fails. Then there is a stubborn epsilon > 0 such that for every delta > 0, some x satisfies 0 < |x - c| < delta yet |f(x) - L| >= epsilon. Apply this with delta = 1/n for each n, obtaining points x_n with 0 < |x_n - c| < 1/n and |f(x_n) - L| >= epsilon. Then x_n to c with x_n != c, while f(x_n) stays a fixed distance from L, so the sequential condition fails as well. This completes the proof.

The converse's technique deserves a label: negate, then harvest witnesses at delta = 1/n. Failed limit statements are existence statements in disguise, and this harvesting move converts them into sequences, where Module 2's machinery applies. The bridge lets you import every sequence theorem, and it gives a quick way to prove a limit does not exist: exhibit two sequences approaching c whose images head to different values.

Two canonical failures

Example (oscillation). Consider sin(1/x) as x to 0. Along x_n = 1/(n pi) we get sin(n pi) = 0, so the images tend to 0. Along y_n = 1/(2n pi + pi/2) we get sin(2n pi + pi/2) = 1, so the images tend to 1. Both sequences tend to 0 through nonzero values, and the image limits disagree, so lim (x to 0) sin(1/x) does not exist. Near 0 the graph oscillates between -1 and 1 infinitely often in every window, and no output band of half-width below 1 can contain it.

Yet a small change tames it: lim (x to 0) x sin(1/x) = 0. The estimate is one line, since |sin| never exceeds 1: |x sin(1/x) - 0| <= |x|, so given epsilon, delta = epsilon works. The oscillation survives, but its amplitude is crushed by the factor x. Keep this pair on file: identical oscillation, opposite verdicts, and the difference is amplitude control, not frequency.

Example (the Dirichlet function). Define D(x) = 1 if x is rational and D(x) = 0 if x is irrational. At any point c, density of the rationals supplies a sequence of rationals r_n to c with r_n != c, along which D(r_n) = 1 to 1; density of the irrationals supplies irrationals t_n to c with D(t_n) = 0 to 0. The two image limits disagree, so D has a limit at no point whatsoever.

This function, introduced by Dirichlet in 1829, is the standard stress test for every definition in the course. No graph of it can honestly be drawn, which is part of its pedagogical value: it exists by formula alone, beyond the reach of pictures, and it will return in Module 6 when we ask which functions can be integrated.

A little history: the two-tolerance idea

Cauchy defined function limits verbally in 1821, and his proofs manipulate inequalities that amount to epsilon and delta, with the letters themselves appearing in his work on the mean value theorem. The fully quantified definition you are using, with delta answering epsilon at a named point, was fixed in Weierstrass's Berlin lectures around 1861 and propagated by his students' notes. The shift looks notational and is not: once limits became sentences about inequalities, claims like "a limit of continuous functions is continuous" could be tested, and some of them failed, as Module 6 will show. Precision did not decorate analysis; it corrected it.

Common wrong turns

Epsilon-delta drafts break in recognizable places. Inspect yours for these.

  • A delta containing x. The radius must be fixed before x ranges over the punctured interval. If x appears inside your delta, the quantifiers have been violated; eliminate the dependence with a preliminary bound, as the min trick does.
  • Dropping the puncture. Writing |x - c| < delta instead of 0 < |x - c| < delta silently asserts something about f(c), which the limit does not govern, and it wrecks the removable-value examples above.
  • Using only one arm of the min. After choosing delta = min(1, epsilon/5), the verification must invoke both consequences, the factor bound and the final scaling. Citing one is a half-proof.
  • One sequence as proof of existence. A single sequence with f(x_n) to L is evidence, not proof: the criterion demands every sequence. One sequence can only refute, by disagreeing with another.

Try it

Exercise. Give an epsilon-delta proof that lim (x to 1) x^3 = 1.

Scratch work first. Factor the error: x^3 - 1 = (x - 1)(x^2 + x + 1), so |x^3 - 1| = |x - 1| |x^2 + x + 1|. Cap the companion factor by promising |x - 1| < 1, which pens x into (0, 2): there, x^2 + x + 1 is positive and at most 4 + 2 + 1 = 7. Under the promise, |x^3 - 1| < 7|x - 1|, so aim for |x - 1| < epsilon/7.

Solution. Let epsilon > 0 and choose delta = min(1, epsilon/7). Suppose 0 < |x - 1| < delta. From |x - 1| < 1 we get 0 < x < 2, so |x^2 + x + 1| = x^2 + x + 1 < 4 + 2 + 1 = 7. Therefore |x^3 - 1| = |x - 1||x^2 + x + 1| < (epsilon/7) * 7 = epsilon. This completes the proof.

Compare your draft against the quadratic model: same skeleton, different factorization, different cap. The min trick is not a special device for x^2; it is the general instrument for polynomial limits, and after two or three uses it stops feeling like a trick at all.

Looking ahead

Limits of functions are the raw material; the next lesson spends them on continuity, the condition that the limit agrees with the value. From continuity on closed intervals will come the intermediate and extreme value theorems, the first results in the course whose statements a non-mathematician would recognize as geometrically self-evident and whose proofs, as you now expect, run straight through the completeness axiom.

Sources

  1. Lebl, J. (2026). Limits of functions (Section 3.1). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 13: Limits of functions [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. Trench, W. F. (2013). 2.1: Functions and limits. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  4. Dawkins, P. (n.d.). Calculus I: The definition of the limit. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  5. O'Connor, J. J., & Robertson, E. F. (1998). Karl Weierstrass. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  6. Weisstein, E. W. (n.d.). Dirichlet function. MathWorld: A Wolfram Web Resource. mathworld.wolfram.com
  7. Zakon, E. (2004). Chapter 4: Function limits and continuity. Mathematical Analysis I, Mathematics LibreTexts. math.libretexts.org
Key terms
Epsilon-delta definition
For every epsilon > 0 there is delta > 0 with |f(x) - L| < epsilon whenever 0 < |x - c| < delta.
Output tolerance epsilon
The allowed distance of f(x) from the proposed limit L.
Input tolerance delta
The radius around c within which inputs must be sent into the output band.
Sequential criterion
A function limit exists iff f(x_n) to L for every sequence x_n to c with x_n not equal to c.
Min trick
Choosing delta as a minimum of two bounds, one to control a factor, one to reach epsilon.

Continuity and Its Consequences

  • Define continuity at a point and on an interval.
  • Prove the intermediate value theorem.
  • State and use the extreme value theorem.

Continuity is the property that the value of a function agrees with its limit. It is deceptively simple to state and astonishingly powerful in its consequences: from it, plus completeness, flow the two theorems that make calculus work on closed intervals, the intermediate value theorem and the extreme value theorem. This lesson defines continuity precisely, catalogs the ways it can fail, and proves both great theorems, watching carefully for the exact moment completeness enters each argument.

The definition

Definition. A function f is continuous at c if lim (x to c) f(x) = f(c). Spelled out with epsilon and delta: for every epsilon > 0 there is delta > 0 such that |x - c| < delta implies |f(x) - f(c)| < epsilon. Here x = c is allowed, and the inequality holds trivially there. A function is continuous on a set if it is continuous at each point of the set.

The definition packs three requirements into one equation: f(c) is defined, the limit exists, and the two agree. Each can fail separately, and the failures have names. If the limit exists but disagrees with f(c), the discontinuity is removable: redefining one value repairs it. If the one-sided limits exist but differ, the function jumps, like the step function that is 0 for x < 0 and 1 for x >= 0. If a one-sided limit fails to exist at all, the behavior is essential, like sin(1/x) at 0, and no repair is possible.

The sequential criterion translates directly: f is continuous at c if and only if f(x_n) to f(c) for every sequence x_n to c. (The puncture x_n != c may be dropped, since terms equal to c contribute f(c) harmlessly.) Continuity is exactly the license to pass limits through the function: lim f(x_n) = f(lim x_n). In this language, last lesson's Dirichlet function is continuous nowhere, since rational and irrational sequences into any point disagree in the image.

Remarkably, a variant due to Thomae is continuous at every irrational and discontinuous at every rational; continuity can be distributed in strange patterns, which is why theorems, not intuition, must carry the subject.

By the algebraic limit theorems, sums, products, quotients (with nonzero denominator), and compositions of continuous functions are continuous. Polynomials are continuous everywhere; rational, root, exponential, logarithmic, and trigonometric functions are continuous throughout their domains. These closure rules are what make continuity checkable in practice: you rarely verify epsilon-delta by hand, you disassemble the function into continuous parts.

For instance, h(x) = sqrt(x^2 + 1) is continuous on all of R by assembly: x^2 + 1 is a polynomial, hence continuous; it takes values in [1, infinity), where the square root is continuous; and a composition of continuous functions is continuous. No epsilon appears in the verification, yet the conclusion is fully rigorous, the epsilons having been spent once and for all inside the closure theorems.

The intermediate value theorem

The claim is geometrically irresistible: a continuous graph passing from below a horizontal line to above it must cross the line. Before proving it, notice that its truth genuinely depends on completeness. Over the rationals, the function f(x) = x^2 - 2 is continuous on [0, 2], with f(0) = -2 < 0 and f(2) = 2 > 0, yet no rational c satisfies f(c) = 0: the graph slips through the gap where sqrt(2) is missing. Whatever proof we give must use the axiom that R has no such gaps, and ours will, through a supremum.

Theorem (IVT). If f is continuous on [a, b] and y lies strictly between f(a) and f(b), then there exists c in (a, b) with f(c) = y.

Proof. Assume f(a) < y < f(b) (the other case is symmetric). Let S = {x in [a, b] : f(x) < y}. This set is nonempty (it contains a) and bounded above by b, so by completeness c = sup S exists. We claim f(c) = y, and we rule out the alternatives using continuity at c.

Suppose f(c) < y. Apply continuity at c with epsilon = y - f(c) > 0: some delta > 0 gives f(x) < f(c) + epsilon = y for all x within delta of c. Note c < b, since f(b) > y. So there are points of [a, b] slightly to the right of c where f still lies below y; they belong to S and exceed c, contradicting that c bounds S.

Suppose instead f(c) > y. Continuity with epsilon = f(c) - y > 0 yields delta > 0 with f(x) > y for all x in (c - delta, c]. Then no point of S exceeds c - delta, so c - delta is an upper bound of S smaller than c, contradicting leastness. By trichotomy the only possibility left is f(c) = y. This completes the proof.

Study the architecture: the supremum nominates the crossing point, and continuity convicts it. Each contradiction branch converts an inequality at c into the same inequality on a small interval, which is precisely what continuity is for. The IVT is why a continuous function cannot jump over a value, and it guarantees roots whenever a continuous function changes sign. One pleasant corollary: every polynomial of odd degree has a real root, because its dominant term drags it to opposite signs for large positive and large negative inputs.

The proof is nonconstructive, naming the root as a supremum, but it pairs well with a constructive cousin: bisection. To locate a root of f(x) = x^5 + x - 1, note f(0) = -1 and f(1) = 1, so a root lies in (0, 1). Test the midpoint: f(0.5) = -0.46875 < 0, so the sign change, and with it a root, lies in (0.5, 1). Test again: f(0.75) = -0.0126... < 0 moves the search to (0.75, 1); then f(0.875) = 0.387... > 0 narrows it to (0.75, 0.875).

Each test halves the interval, so after n steps the root is pinned within 1/2^n of a known point, and the shrinking intervals close on it exactly as in the bisection proof of Bolzano-Weierstrass. This is how root-finding software actually begins, and the IVT certifies every step: no sign change, no guarantee.

The extreme value theorem

Theorem (EVT). If f is continuous on a closed bounded interval [a, b], then f attains a maximum and a minimum on [a, b].

Proof idea. First, f is bounded on [a, b]; otherwise some sequence x_n would have f(x_n) to infinity, but Bolzano-Weierstrass gives a subsequence x_{n_k} to p in [a, b], and continuity forces f(x_{n_k}) to f(p), a finite number, a contradiction. Let M = sup f([a, b]), which exists by completeness now that the image is bounded. Choose x_n with f(x_n) to M, possible by the epsilon characterization of the supremum; a convergent subsequence x_{n_k} to p yields f(p) = M by continuity, so the maximum is attained. The minimum follows by applying the result to -f. This completes the sketch.

Count the completeness citations: Bolzano-Weierstrass (twice, once per stage), the supremum of the image, and the epsilon characterization. The theorem is a compactness statement at heart: closed bounded intervals are sequentially compact, by Lesson 4 of Module 2, and continuous functions convert convergent subsequences of inputs into convergent values. On such intervals, continuity cannot hide any behavior at infinity, because there is no infinity to hide in.

Both hypotheses are essential. On the open interval (0, 1) the continuous function 1/x is unbounded, and f(x) = x attains no maximum, its supremum 1 lying outside the reachable values. On the closed but unbounded set [0, infinity), f(x) = x again attains no maximum. Closedness and boundedness together, that is compactness, are what make the extreme value theorem work.

A little history: Bolzano's pamphlet and Weierstrass's lectures

The IVT is the theorem that started rigorous analysis. Bolzano's 1817 pamphlet, whose full title announces a "purely analytic proof" of the statement, argued that a geometrically self-evident claim deserves a proof free of geometry, and in building one he formulated the least upper bound principle and a version of the Cauchy criterion decades early. Cauchy gave his own proof in 1821. The extreme value theorem is Weierstrass's, from his Berlin lectures of the 1860s, and for years it circulated in his students' notes before appearing in print.

The pairing is fitting: Bolzano supplied the crossing principle, Weierstrass the guarantee that optima exist, and modern analysis quotes both daily, from equation solving to optimization.

Common wrong turns

The two great theorems are misquoted more often than misproved. The usual slips:

  • Reading existence as uniqueness. The IVT produces at least one crossing; a wiggly function may cross a level many times. Uniqueness needs extra structure, such as strict monotonicity.
  • Applying the IVT off an interval. The function 1/x satisfies f(-1) = -1 < 0 < 1 = f(1) and never vanishes; its domain omits 0, so no single interval of continuity joins the endpoints. The theorem needs one unbroken interval.
  • Assuming the converse of the IVT. Functions can take all intermediate values while being discontinuous; derivatives will provide natural examples in Module 5. The intermediate value property does not certify continuity.
  • Loosening the EVT's interval. Open, half-open, or unbounded domains all admit continuous functions with unattained suprema. When you invoke the EVT, say "closed and bounded" aloud and check both.

Try it

Exercise. Prove that a continuous function on [0, 1] that takes only rational values is constant.

Scratch work first. Suppose two values differ. Continuity on an interval plus the IVT forces every value between them to be attained, and between any two distinct reals lie irrational numbers, by density. An attained irrational value contradicts the hypothesis. The proof should be three sentences once arranged.

Solution. Suppose, toward a contradiction, that f(p) != f(q) for some p < q in [0, 1]. Since f is continuous on [p, q], the IVT says f attains every value strictly between f(p) and f(q). By density of the irrationals (Lesson 3 of Module 1 and its assignment), some irrational number t lies strictly between f(p) and f(q), so t = f(c) for some c, contradicting that f takes only rational values. Hence all values of f coincide, and f is constant. This completes the proof.

The exercise showcases the IVT as a rigidity principle: continuity plus a constrained range forces global structure. Arguments of this shape, where a value-set with gaps collides with the gap-free conclusion of the IVT, recur across mathematics, and recognizing them is a sign the theorem has become a tool rather than a fact.

Looking ahead

Continuity at a point is a local promise, and the delta it grants may deteriorate from point to point. The next lesson asks when one delta can serve an entire domain, defines uniform continuity, and proves that on closed bounded intervals the upgrade is automatic. That theorem is the final ingredient the Riemann integral will need in Module 6, and its proof is another appearance of the compactness machinery you have now seen twice.

Sources

  1. Lebl, J. (2026). Continuous functions (Section 3.2). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Lebl, J. (2026). Extreme and intermediate value theorems (Section 3.3). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  3. Rodriguez, C. (2020). Lecture 16: The min/max theorem and Bolzano's intermediate value theorem [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  4. Trench, W. F. (2013). 2.2: Continuity. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  5. Dawkins, P. (n.d.). Calculus I: Continuity. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  6. O'Connor, J. J., & Robertson, E. F. (2005). Bernard Bolzano. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. Rodriguez, C. (2020). Lecture 15: The continuity of sine and cosine and the many discontinuities of Dirichlet's function [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
Key terms
Continuous at a point
f is continuous at c when lim (x to c) f(x) = f(c).
Continuous on a set
Continuous at every point of the set.
Intermediate value theorem
A continuous function on [a, b] attains every value between f(a) and f(b).
Extreme value theorem
A continuous function on a closed bounded interval attains a maximum and minimum.
Compactness (interval)
Being closed and bounded, the property that powers the extreme value theorem.

Uniform Continuity

  • Contrast pointwise continuity with uniform continuity.
  • Show that a function can be continuous but not uniformly continuous.
  • State the theorem that continuity on a closed bounded interval is uniform.

Ordinary continuity lets delta depend on both epsilon and the point c. Uniform continuity demands a single delta that works everywhere at once. The distinction is subtle, invisible on casual reading, and decisive: it is precisely what the construction of the integral will require in Module 6, and it is the standard example of how much meaning hides in the order of quantifiers. This lesson defines the notion, shows exactly how continuity can fail to be uniform, and proves the compactness theorem that repairs everything on closed bounded intervals.

The definition

Definition. A function f is uniformly continuous on a set D if for every epsilon > 0 there exists delta > 0 such that for all x, u in D with |x - u| < delta, we have |f(x) - f(u)| < epsilon.

Compare the quantifiers. In pointwise continuity the order is: fix c, fix epsilon, then find delta, so delta may shrink from point to point. In uniform continuity delta is chosen before any point is named, so the same delta controls the whole domain. Uniform continuity is the stronger property, and it always implies ordinary continuity: fixing u = c in the definition recovers continuity at c, with the bonus that the delta never varied.

The geometric reading: cut a small window of width 2 delta and height 2 epsilon from cardboard, center it anywhere on the graph, and slide it along the entire curve. Uniform continuity says one window size works for the whole journey; pointwise continuity allows the window to be recut at every stop. Steep stretches are where a fixed window pinches, so expect trouble wherever slopes grow without bound.

One large class of functions passes the uniform test immediately. Call f Lipschitz on D with constant K if |f(x) - f(u)| <= K|x - u| for all x, u in D: output distances are at most K times input distances. Claim: Lipschitz implies uniformly continuous. Proof. Given epsilon > 0, take delta = epsilon/K. For |x - u| < delta, |f(x) - f(u)| <= K|x - u| < K (epsilon/K) = epsilon. This completes the proof. The delta depended only on epsilon and the global constant K, never on a point, which is exactly the uniform requirement.

Linear functions are the model Lipschitz citizens: f(x) = 2x + 5 satisfies |f(x) - f(u)| = 2|x - u|, so K = 2 works, and the activity below runs the resulting two-line uniformity proof. The sine function is Lipschitz with K = 1, a fact that follows from the mean value theorem of Module 5, since its slopes never exceed 1 in size. In general a Lipschitz constant is a global speed limit on the graph, and the mean value theorem will convert bounded derivatives into exactly such speed limits, welding the coming modules to this one.

Continuous but not uniformly continuous

To refute uniform continuity, negate the definition: there is one stubborn epsilon > 0 such that for every delta, some pair of points within delta has outputs at least epsilon apart. Harvesting witnesses at delta = 1/n, the same maneuver as in the sequential criterion proof of Lesson 1 of this module, gives a clean test: f fails to be uniformly continuous on D exactly when there exist epsilon > 0 and sequences x_n, u_n in D with |x_n - u_n| to 0 but |f(x_n) - f(u_n)| >= epsilon for all n.

Example. The function f(x) = 1/x is continuous on (0, 1) but not uniformly continuous there. Near 0 the graph steepens without bound, so no single delta can keep the outputs within epsilon. Concretely, take the sequences x_n = 1/n and u_n = 1/(n+1). Then |x_n - u_n| = 1/(n(n+1)) to 0, yet |f(x_n) - f(u_n)| = |n - (n+1)| = 1 for every n. Since inputs get arbitrarily close while outputs stay a full unit apart, no delta works for epsilon = 1. Hence f is not uniformly continuous.

A similar failure afflicts f(x) = x^2 on the whole line R: as x grows, a fixed input gap produces an ever larger output gap, since (x + h)^2 - x^2 = 2xh + h^2 grows with x. The witness sequences are x_n = n and u_n = n + 1/n: their gap 1/n tends to zero, while u_n^2 - x_n^2 = 2 + 1/n^2 > 2 forever. The two examples display the two ways uniformity dies: slopes exploding at a missing boundary point, and slopes exploding at infinity.

Steepness must be measured carefully, though. The function sqrt(x) has arbitrarily steep slopes near 0, yet it is uniformly continuous on [0, infinity); your assignment proves it via the inequality |sqrt(x) - sqrt(u)| <= sqrt(|x - u|). Unbounded slope on a domain that includes its boundary can still be compatible with uniformity; what killed 1/x was steepness racing toward a puncture the domain cannot close. The reliable arbiter is the definition, not the slogan.

The saving theorem

Theorem. If f is continuous on a closed bounded interval [a, b], then f is uniformly continuous on [a, b].

Proof. Suppose not. By the sequential test there are epsilon > 0 and points x_n, u_n in [a, b] with |x_n - u_n| < 1/n but |f(x_n) - f(u_n)| >= epsilon. The sequence (x_n) lives in the bounded interval, so Bolzano-Weierstrass extracts a subsequence x_{n_k} to p, and p belongs to [a, b] because closed intervals contain their sequential limits. Since |x_{n_k} - u_{n_k}| < 1/n_k to 0, the companion points obey u_{n_k} to p as well, by the squeeze applied to |u_{n_k} - p| <= |u_{n_k} - x_{n_k}| + |x_{n_k} - p|.

Now continuity at p speaks twice: f(x_{n_k}) to f(p) and f(u_{n_k}) to f(p), so |f(x_{n_k}) - f(u_{n_k})| to 0. But every one of those quantities is at least epsilon > 0, and a sequence bounded below by epsilon cannot tend to 0. Contradiction. Hence f is uniformly continuous. This completes the proof.

Notice the engine. The failure hypothesis manufactures bad pairs at every scale; compactness condenses the bad pairs onto a single point p; and pointwise continuity at that one point contradicts uniform badness. Once again compactness of [a, b] does the heavy lifting, converting infinitely many local promises into one global guarantee. The result is called the Heine-Cantor theorem; Eduard Heine published the argument in 1872, building on lectures of Dirichlet from 1854 that reached print only decades later, a reminder that the theorem was folklore among the Berlin analysts before it had a name.

What uniformity buys

Why insist on the stronger property? Because several operations require one delta to serve an entire interval at once. The construction of the Riemann integral is the flagship: to force upper and lower sums together, one must make the oscillation of f small on every subinterval of a fine partition simultaneously, and a pointwise delta, shrinking near a bad point, cannot discipline all subintervals at once. Uniform continuity is exactly the hypothesis that closes that gap, and Module 6 will quote this lesson at the decisive step.

A second purchase: extension to the boundary. If f is uniformly continuous on an open interval (a, b), it maps Cauchy sequences to Cauchy sequences (squeeze the input gap under delta and the output gap drops under epsilon), so as x to a from the right the values f(x) form Cauchy nets that converge, and f extends continuously to [a, b]. Pointwise continuity promises nothing of the sort: 1/x on (0, 1) admits no continuous extension to 0, and its non-uniformity is the visible symptom. Uniform continuity is the property that survives passage to the boundary, which is a first taste of why analysts prize uniform-anything.

The extension principle has a crisp diagnostic corollary: a uniformly continuous function maps Cauchy sequences to Cauchy sequences. Watch 1/x violate it. The sequence x_n = 1/n is Cauchy in (0, 1), yet its image f(x_n) = n marches off to infinity, about as non-Cauchy as a sequence can be. One glance at this computation certifies, again, that 1/x is not uniformly continuous on (0, 1), and the test is often the quickest available.

Its converse fails, though: x^2 maps Cauchy sequences to Cauchy sequences on all of R, Cauchy sequences being bounded, yet it is not uniformly continuous there. The diagnostic detects failure; it does not certify success.

Common wrong turns

The definitions in this lesson are a minefield of plausible-sounding falsehoods. The main ones:

  • Quoting Heine-Cantor off its domain. The theorem needs closed and bounded. On (0, 1) and on R it says nothing, as 1/x and x^2 demonstrate.
  • Equating unbounded slope with non-uniformity. sqrt(x) is steep near 0 and uniformly continuous anyway. The failure requires steepness that a shrinking delta cannot outrun, not steepness alone.
  • Upgrading uniform continuity to Lipschitz. The implication runs Lipschitz to uniform, never backwards; sqrt(x) on [0, 1] is uniformly continuous but no constant K bounds its ratios near 0.
  • Testing with one sequence pair. To refute uniformity, the pair of sequences must have gaps tending to zero while outputs stay separated; exhibiting close inputs with close outputs proves nothing in either direction.

Try it

Exercise. Prove directly from the definition, without invoking Heine-Cantor, that f(x) = x^2 is uniformly continuous on [0, 3].

Scratch work first. Factor the output gap: |x^2 - u^2| = |x + u||x - u|. On [0, 3] the troublesome factor is tame: |x + u| <= 6. So the output gap is at most 6|x - u|, a Lipschitz bound, and the Lipschitz recipe supplies the delta.

Solution. Let epsilon > 0 and set delta = epsilon/6. For any x, u in [0, 3] with |x - u| < delta, we have |x + u| <= |x| + |u| <= 3 + 3 = 6, so |x^2 - u^2| = |x + u||x - u| <= 6|x - u| < 6 (epsilon/6) = epsilon. The choice of delta used only epsilon and the interval, never a point, so f is uniformly continuous on [0, 3]. This completes the proof.

Set this beside the failure of x^2 on R: same formula, different domain, opposite verdicts. Uniform continuity is a property of the pair (function, domain), not of the formula, and restricting to a bounded set is what disarmed the counterexample. That sensitivity to domain is worth internalizing now, because integration will always hand you a fixed closed interval to work on.

Looking ahead

The module's arc is complete: limits of functions, continuity, its global theorems, and the uniform upgrade that compactness provides. Module 5 differentiates: the derivative is a limit of difference quotients, and the mean value theorem will convert local slope information into global conclusions, much as compactness converted local continuity into uniform control here. The two-tolerance craft you have practiced is about to become the definition of the derivative.

Sources

  1. Lebl, J. (2026). Uniform continuity (Section 3.4). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 17: Uniform continuity and the definition of the derivative [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. Trench, W. F. (2013). 2.2: Continuity. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  4. O'Connor, J. J., & Robertson, E. F. (2006). Eduard Heine. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  5. Zakon, E. (2004). Chapter 4: Function limits and continuity. Mathematical Analysis I, Mathematics LibreTexts. math.libretexts.org
  6. Hunter, J. K. (n.d.). Chapter 7: Continuous functions [Lecture notes]. An Introduction to Analysis, University of California, Davis. math.ucdavis.edu
  7. Rudin, W. (1976). Principles of mathematical analysis (3rd ed.). McGraw-Hill. find source ↗
Key terms
Uniform continuity
One delta works for every pair of points: |x - u| < delta implies |f(x) - f(u)| < epsilon throughout D.
Pointwise continuity
Continuity at each point, where delta may depend on the point.
Order of quantifiers
Uniform continuity picks delta before any point; pointwise continuity picks delta after fixing the point.
Failure example 1/x
1/x is continuous on (0,1) but not uniformly continuous because it steepens near 0.
Uniform continuity on [a,b]
Continuity on a closed bounded interval is automatically uniform.

Module 5: The Derivative

Define the derivative rigorously as a limit and prove the mean value theorem and its consequences.

The Derivative as a Limit

  • State the limit definition of the derivative.
  • Compute derivatives from the definition rigorously.
  • Prove that differentiability implies continuity.

With limits of functions now on firm footing, we can define the derivative precisely and prove its basic properties rather than merely assert them. Calculus courses hand you the derivative as a bundle of rules; analysis asks what the object is, exactly, and what its existence costs. The answer is that a derivative is a single limit of a single quotient, so every fact about derivatives is a fact about limits, provable with the epsilon-delta machinery of Module 4. This lesson defines the derivative, computes examples from scratch, proves that differentiability is strictly stronger than continuity, and then rebuilds the product and chain rules with honest proofs.

The definition

Definition. Let f be defined on an open interval containing c. Then f is differentiable at c if the limit

f'(c) = lim (h to 0) [f(c + h) - f(c)] / h

exists; the value of the limit is the derivative at c. Read the quotient aloud: it is the change in output, f(c + h) - f(c), divided by the change in input, h. That ratio is the slope of the secant line through the points (c, f(c)) and (c + h, f(c + h)), so the limit, when it exists, is the slope of the tangent line, the instantaneous rate of change at c.

An equivalent form replaces c + h by x: f'(c) = lim (x to c) [f(x) - f(c)]/(x - c), interchangeable with the first by the substitution x = c + h. Unwound into the language of Module 4, the definition says: for every epsilon > 0 there is delta > 0 such that 0 < |h| < delta implies |[f(c + h) - f(c)]/h - f'(c)| < epsilon. Every derivative computation is an epsilon-delta limit in disguise.

Two details in the fine print matter. First, the limit is taken with h != 0, so the quotient is never evaluated at h = 0; there is no division by zero anywhere in the definition. Second, the limit is two-sided: h approaches 0 through positive and negative values alike, and both routes must agree on one number. Splitting the two sides gives the one-sided derivatives, and differentiability means exactly that both exist and are equal. We say f is differentiable on an interval when it is differentiable at each point.

A derivative from the definition

The ritual has three steps: write the difference quotient, simplify until the h in the denominator cancels, then apply the algebraic limit theorems. The cancellation is legal precisely because the limit ignores h = 0: for every h != 0 the simplified expression equals the original quotient, and two functions that agree everywhere except possibly at the limit point have the same limit there.

Claim. If f(x) = x^2, then f'(c) = 2c at every c.

Proof. The difference quotient is [(c + h)^2 - c^2]/h = [2ch + h^2]/h = 2c + h for h != 0. As h to 0, this tends to 2c by the algebraic limit theorems. Hence f'(c) = 2c. This completes the proof.

Claim. If f(x) = 1/x and c != 0, then f'(c) = -1/c^2.

Proof. For |h| small enough that c + h != 0, the difference quotient is [1/(c + h) - 1/c]/h = [(c - (c + h))/(c(c + h))]/h = [-h/(c(c + h))]/h = -1/(c(c + h)). As h to 0 the denominator tends to c * c = c^2, so the quotient rule for limits gives the limit -1/c^2. This completes the proof.

All the analytic content lives in the algebra that removes h from the denominator; the limit theorems then finish mechanically. When no algebra can remove it, the definition is telling you differentiability itself is in doubt, which is exactly what happens next.

Differentiability implies continuity

Before the formal argument, the idea. Differentiability says the ratio of output change to input change settles toward a finite number. If the output change did not shrink to 0 while the input change did, the ratio would grow without bound instead of settling. So the mere existence of f'(c) should force f(x) to f(c). The proof is one line of algebra plus the product rule for limits.

Theorem. If f is differentiable at c, then f is continuous at c.

Proof. For x != c write f(x) - f(c) = [ (f(x) - f(c))/(x - c) ] (x - c). As x to c, the first factor tends to f'(c) and the second tends to 0, so by the product rule for limits f(x) - f(c) to f'(c) * 0 = 0. Hence f(x) to f(c), which is continuity at c. This completes the proof.

The converse fails, and the standard counterexample deserves a complete workout.

Example. f(x) = |x| is continuous at 0 but not differentiable there. Continuity is immediate: given epsilon > 0, take delta = epsilon, since ||x| - 0| = |x|. For differentiability, examine the quotient at c = 0: it is [|0 + h| - |0|]/h = |h|/h. For h > 0 this equals h/h = 1; for h < 0 it equals -h/h = -1. The right-hand limit is 1, the left-hand limit is -1, and since the one-sided limits disagree, the two-sided limit does not exist. A sharp corner has no single tangent slope.

To certify the failure with sequences instead: along h_n = 1/n the quotient is constantly 1, along h_n' = -1/n constantly -1, so by the sequential characterization of limits no limit exists. Continuity constrains values; differentiability constrains geometry, a strictly stronger demand.

Oscillation: two instructive examples

Corners are the tame failure. Oscillation teaches sharper lessons, and the following pair of functions will reappear for the rest of the course.

Example. Define g(x) = x sin(1/x) for x != 0 and g(0) = 0. The squeeze |g(x)| <= |x| shows g is continuous at 0, but the difference quotient at 0 is [g(h) - g(0)]/h = sin(1/h). Along h_n = 1/(2 pi n) the quotient is sin(2 pi n) = 0, while along h_n' = 1/(2 pi n + pi/2) it is sin(2 pi n + pi/2) = 1. Two sequences tending to 0 give two different limits, so g'(0) does not exist.

Example. Now damp the oscillation one degree more: define k(x) = x^2 sin(1/x) for x != 0 and k(0) = 0. The quotient at 0 becomes k(h)/h = h sin(1/h), and the squeeze |h sin(1/h)| <= |h| forces it to 0. So k is differentiable at 0, with k'(0) = 0. Away from 0 the rules proved below give k'(x) = 2x sin(1/x) - cos(1/x). As x to 0 the first term tends to 0, but cos(1/x) oscillates forever, so k' has no limit at 0.

Absorb what k exhibits: a function can be differentiable at every point of an interval while its derivative is discontinuous. Functions with a continuous derivative get their own name, C^1, precisely because that property is an extra purchase. The next lesson proves a striking partial repair, Darboux's theorem: every derivative, continuous or not, satisfies the intermediate value property.

Caratheodory's formulation

There is a reformulation of differentiability, published by Constantin Caratheodory in his 1950 textbook on function theory, that eliminates quotients entirely. It will pay for itself within two sections.

Theorem (Caratheodory). f is differentiable at c if and only if there is a function phi, defined near c and continuous at c, with f(x) - f(c) = phi(x)(x - c) for all x near c. In that case phi(c) = f'(c).

Proof. Suppose first that f'(c) exists. Define phi(x) = [f(x) - f(c)]/(x - c) for x != c, and phi(c) = f'(c). The factorization f(x) - f(c) = phi(x)(x - c) holds for x != c by construction, and at x = c both sides are 0. Continuity of phi at c demands lim (x to c) phi(x) = phi(c), and that equation is word for word the definition of the derivative. So phi qualifies.

Conversely, suppose such a phi exists. For x != c, divide the factorization by the nonzero number x - c to get [f(x) - f(c)]/(x - c) = phi(x). As x to c, continuity sends the right side to phi(c), so the difference quotient has a limit and f'(c) = phi(c). This completes the proof.

Read the factorization as approximation: the change in f equals a continuously varying slope times the change in input. One payoff is instant: differentiability implies continuity in one line, since f(c) + phi(x)(x - c) is assembled from functions continuous at c. The deeper payoff is the chain rule, whose classical proof hides a genuine gap.

The product and chain rules, proved honestly

Theorem (product rule). If f and g are differentiable at c, then so is the product fg, and (fg)'(c) = f'(c)g(c) + f(c)g'(c).

Proof. For h != 0, add and subtract the mixed term f(c)g(c + h) in the numerator, the same bridge device used for limit theorems in Module 2:

[f(c + h)g(c + h) - f(c)g(c)]/h = g(c + h) [f(c + h) - f(c)]/h + f(c) [g(c + h) - g(c)]/h.

As h to 0, the factor g(c + h) tends to g(c) because differentiability of g implies continuity, the theorem proved above; the two difference quotients tend to f'(c) and g'(c). The sum and product rules for limits assemble the pieces into f'(c)g(c) + f(c)g'(c). This completes the proof.

Theorem (chain rule). If g is differentiable at c and f is differentiable at g(c), then the composition f(g(x)) is differentiable at c, with derivative f'(g(c)) g'(c).

First, the trap. The tempting proof writes, for x != c, [f(g(x)) - f(g(c))]/(x - c) = [f(g(x)) - f(g(c))]/[g(x) - g(c)] * [g(x) - g(c)]/(x - c) and takes limits of the two factors. The flaw: g(x) - g(c) can equal 0 for x arbitrarily close to c, making the first factor an undefined 0/0. Nor is this a fussy edge case: our k(x) = x^2 sin(1/x) vanishes at every point 1/(pi n), and those points crowd against 0. More than one classical textbook printed the flawed division.

Proof. Caratheodory repairs it. Differentiability of g at c gives phi continuous at c with g(x) - g(c) = phi(x)(x - c) and phi(c) = g'(c). Differentiability of f at d = g(c) gives psi continuous at d with f(y) - f(d) = psi(y)(y - d) and psi(d) = f'(d). Substitute y = g(x) and then factor once more:

f(g(x)) - f(g(c)) = psi(g(x)) (g(x) - g(c)) = psi(g(x)) phi(x) (x - c).

The factor psi(g(x)) phi(x) is continuous at c, being a product of compositions of functions continuous at the relevant points, and its value at c is psi(g(c)) phi(c) = f'(g(c)) g'(c). By the reverse direction of Caratheodory's criterion, f(g(x)) is differentiable at c with exactly that derivative. No division ever occurred, so the vanishing of g(x) - g(c) costs nothing. This completes the proof.

A little history: ghosts, limits, and a monster

The derivative predates its definition by two centuries. Fermat found tangents and extrema in the 1630s by an algebraic near-equality he called adequality; Newton's fluxions and Leibniz's differentials turned tangent-finding into an algorithm. Both engines ran on infinitely small increments nobody could define. George Berkeley's 1734 pamphlet The Analyst attacked the practice of simplifying under the assumption h != 0 and then setting h = 0, deriding vanished increments as "ghosts of departed quantities." The criticism stung because it was accurate.

Cauchy's 1823 lectures defined the derivative as the limit of the difference quotient, exactly as this lesson does, and Weierstrass finished the repair with the epsilon-delta limit. In 1872 Weierstrass also ended an old hope for good: he presented a function, an infinite sum of cosines, continuous at every real number and differentiable at none. Bolzano had built such a function around 1830, unpublished in his lifetime. Continuity permits corners at every scale, everywhere at once; only the definition, never the picture, decides differentiability.

Common wrong turns

Derivative proofs go wrong in a few recurring ways. Audit your drafts against this list.

  • Misreading the role of h = 0. The limit as h to 0 never evaluates the quotient at h = 0, so canceling h is legitimate algebra on the punctured domain, not sleight of hand.
  • Forgetting that both sides must agree. |x| has perfectly good one-sided derivatives at 0. Differentiability requires the two to be equal, so at any corner candidate, compute both.
  • Assuming the derivative is continuous. x^2 sin(1/x) is differentiable everywhere, with a derivative that is discontinuous at 0. Differentiable and C^1 are different hypotheses, and theorems that need the stronger one say so explicitly.
  • The chain rule shortcut. Multiplying and dividing by g(x) - g(c) silently assumes that quantity is nonzero near c. Caratheodory's factorization never divides, which is why it is the proof worth remembering.
  • Applying rules where they do not reach. The formula for k'(x) holds for x != 0 by the rules, but at 0 only the definition produced k'(0) = 0. At the seam of a piecewise definition, always return to the definition.

Try it

Exercise. Let g(x) = x|x|; equivalently g(x) = x^2 for x >= 0 and g(x) = -x^2 for x < 0. Prove that g is differentiable at 0 and find g'(0).

Scratch work first. The corner of |x| was fatal at 0, but the extra factor of x flattens the graph near the origin, so expect a derivative of 0. The quotient should simplify to something squeezed by |h|.

Solution. For h != 0 the difference quotient at 0 is [g(0 + h) - g(0)]/h = h|h|/h = |h|. Given epsilon > 0, take delta = epsilon: if 0 < |h| < delta then | |h| - 0 | = |h| < epsilon. So the quotient tends to 0 and g'(0) = 0. This completes the proof.

For contrast, differentiate away from 0: g'(x) = 2x for x > 0 and g'(x) = -2x for x < 0, which combines with g'(0) = 0 into g'(x) = 2|x|. The derivative exists everywhere and is even continuous, but it has a corner at 0, so g is differentiable once and not twice there.

Looking ahead

The derivative defined here is a pointwise, local object: f'(c) sees only an arbitrarily small window around c. Yet the theorems that make calculus useful are global: a positive derivative on an interval forces growth across the whole interval, and a zero derivative forces constancy. The bridge from local slope to global behavior is the mean value theorem, and building that bridge, from Fermat's theorem through Rolle's theorem to the main result and its consequences, is the business of the next lesson.

Sources

  1. Lebl, J. (2026). The derivative (Section 4.1). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 17: Uniform continuity and the definition of the derivative [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. Trench, W. F. (2013). 2.3: Differentiable functions of one variable. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  4. Dawkins, P. (n.d.). Calculus I: The definition of the derivative. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  5. Dawkins, P. (n.d.). Calculus I: Chain rule. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  6. Rodriguez, C. (2020). Lecture 18: Weierstrass's example of a continuous and nowhere differentiable function [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  7. Weisstein, E. W. (n.d.). Weierstrass function. MathWorld: A Wolfram Web Resource. mathworld.wolfram.com
Key terms
Differentiable at c
The limit of the difference quotient at c exists.
Derivative
f'(c), the limit of [f(c+h) - f(c)]/h as h approaches 0.
Difference quotient
[f(c + h) - f(c)]/h, the slope of a secant line.
Differentiability implies continuity
A function differentiable at a point is continuous there.
Corner
A point like x = 0 for |x| where one-sided slopes differ, so no derivative exists.

The Mean Value Theorem and Its Consequences

  • State Fermat's theorem on interior extrema and Rolle's theorem.
  • Prove the mean value theorem.
  • Deduce that a zero derivative implies a constant function.

The mean value theorem is the central theorem of differential calculus. Nearly every qualitative fact about derivatives, monotonicity, constancy, error bounds, flows from it. Its deeper role is architectural: the derivative is a local object, defined inside an arbitrarily small window, while the facts we care about are global, statements about whole intervals. The mean value theorem is the bridge, and this lesson builds it in three steps, Fermat to Rolle to the main theorem, then spends the dividends: the constancy and monotonicity tests, the Cauchy version with its L'Hopital fine print, and Darboux's theorem about all derivatives.

Fermat's theorem on interior extrema

The intuition first. Stand at an interior point where f is largest nearby. Looking right, the graph does not rise, so secant slopes from the right are at most 0. Looking left, the graph does not rise either, but left secants run backwards, so their slopes are at least 0. The derivative, being the common limit of both families, is squeezed between <= 0 and >= 0. The formal proof is exactly this picture, plus one fact from Module 2: limits preserve non-strict inequalities.

Theorem (Fermat). If f has a local maximum or minimum at an interior point c and is differentiable there, then f'(c) = 0.

Proof. Suppose f has a local maximum at c. For small h > 0, f(c + h) - f(c) <= 0, so the quotient [f(c + h) - f(c)]/h <= 0, giving f'(c) <= 0 in the limit. For small h < 0, the same numerator is <= 0 but h < 0, so the quotient is >= 0, giving f'(c) >= 0. Both hold only if f'(c) = 0. For a local minimum, apply the maximum case to -f: it has a local maximum at c, so -f'(c) = 0. This completes the proof.

Two boundary remarks. The word interior is load-bearing: f(x) = x on [0, 1] has its maximum at 1 with derivative 1 there, because only one side of the point is available and the squeeze needs both. And the converse fails: f(x) = x^3 has f'(0) = 0 with no extremum. Fermat's theorem filters candidates; it never certifies one.

Rolle's theorem

Now the first global statement: a differentiable curve that starts and ends at the same height must be horizontal somewhere in between. The proof strategy is the standard one for existence theorems on [a, b]: the extreme value theorem manufactures a special point, and Fermat's theorem identifies what the derivative does there.

Theorem (Rolle). If f is continuous on [a, b], differentiable on (a, b), and f(a) = f(b), then there is c in (a, b) with f'(c) = 0.

Proof. By the extreme value theorem f attains a maximum and a minimum on [a, b]. If both occur at the endpoints, then since f(a) = f(b) the maximum equals the minimum, so f is constant and f' = 0 throughout. Otherwise an extremum occurs at an interior point c, and Fermat's theorem gives f'(c) = 0. This completes the proof.

Audit the hypotheses, because each is doing work. Continuity on the closed interval feeds the extreme value theorem: the function with f(x) = x on [0, 1) and f(1) = 0 is differentiable inside, has equal endpoint values, and never has a horizontal tangent; the failure is continuity at the single point 1. Interior differentiability is equally essential: f(x) = |x| on [-1, 1] has f(-1) = f(1) and no horizontal tangent, because the one candidate point, the corner at 0, has no derivative to be zero.

The mean value theorem

Rolle's theorem handles level chords. The general case tilts the picture: connect (a, f(a)) to (b, f(b)) by the secant line and ask for a tangent parallel to it. The proof is the tilted-line construction: subtract the secant from f, which levels the endpoints to height 0, apply Rolle, and translate back. Subtracting a line shifts every slope by one constant, so parallel-to-secant becomes horizontal and back again.

Theorem (Mean Value Theorem). If f is continuous on [a, b] and differentiable on (a, b), then there exists c in (a, b) with

f'(c) = [f(b) - f(a)] / (b - a).

Proof. Define the auxiliary function g(x) = f(x) - [f(a) + ((f(b) - f(a))/(b - a))(x - a)], which subtracts from f the straight secant line joining the endpoints. Then g is continuous on [a, b], differentiable on (a, b), and g(a) = g(b) = 0. By Rolle's theorem there is c with g'(c) = 0. But g'(x) = f'(x) - (f(b) - f(a))/(b - a), so g'(c) = 0 gives exactly f'(c) = (f(b) - f(a))/(b - a). This completes the proof.

Geometrically, somewhere on the curve the tangent line is parallel to the secant joining the endpoints: the instantaneous rate equals the average rate at least once. A car that averages 60 miles per hour must show the speedometer reading exactly 60 at some instant. Note what the theorem does not say: it does not locate c and does not claim uniqueness. Every application below uses only existence, which is the theorem's entire export.

A fundamental consequence

Corollary. If f'(x) = 0 for all x in an interval, then f is constant there.

Proof. Take any two points x_1 < x_2 in the interval. By the mean value theorem there is c between them with f(x_2) - f(x_1) = f'(c)(x_2 - x_1) = 0, so f(x_2) = f(x_1). Since the two points were arbitrary, f is constant. This completes the proof.

Pause on how strange this is from the definition alone. Knowing f'(c) = 0 at one point says almost nothing; knowing it at every point freezes the function completely, and no argument straight from the definition achieves that, because each point sees only its own shrinking window. The mean value theorem stitches the windows together.

An immediate refinement: if f' = g' throughout an interval, applying the corollary to f - g shows f and g differ by a constant. This is the rigorous reason two antiderivatives of the same function differ by a constant, the fact that makes the fundamental theorem of calculus, and integration itself, well defined.

The monotonicity test, proved

Theorem. Let f be differentiable on an interval. If f'(x) > 0 at every point, then f is strictly increasing; if f'(x) >= 0 at every point, then f is nondecreasing. The mirror statements hold for negative signs.

Proof. Take x_1 < x_2 in the interval. The mean value theorem on [x_1, x_2] yields c with f(x_2) - f(x_1) = f'(c)(x_2 - x_1). The factor x_2 - x_1 is positive, so the difference f(x_2) - f(x_1) has the sign of f'(c): positive when f' > 0 everywhere, nonnegative when f' >= 0 everywhere. This completes the proof.

One-directional care: strictly increasing does not force f' > 0 everywhere, since f(x) = x^3 is strictly increasing with f'(0) = 0. A related dividend: if |f'(x)| <= M on an interval, the same computation gives |f(x_2) - f(x_1)| = |f'(c)| |x_2 - x_1| <= M |x_2 - x_1|, a Lipschitz bound. With f = sin it yields |sin a - sin b| <= |a - b|.

The Cauchy mean value theorem and L'Hopital's caveat

Applying the mean value theorem to two functions separately produces two mean points, one for each function, and no relation between them. Cauchy's generalization forces a single point to serve both at once.

Theorem (Cauchy MVT). If f and g are continuous on [a, b] and differentiable on (a, b), then there is c in (a, b) with [f(b) - f(a)] g'(c) = [g(b) - g(a)] f'(c).

Proof. Define h(x) = [f(b) - f(a)][g(x) - g(a)] - [g(b) - g(a)][f(x) - f(a)]. Then h is continuous on [a, b], differentiable on (a, b), and h(a) = 0, while h(b) = [f(b) - f(a)][g(b) - g(a)] - [g(b) - g(a)][f(b) - f(a)] = 0. Rolle's theorem yields c with h'(c) = 0, and h'(c) = [f(b) - f(a)] g'(c) - [g(b) - g(a)] f'(c), which is the claim. This completes the proof.

When g(x) = x this is the ordinary mean value theorem; when g(b) != g(a) and g'(c) != 0 it says the ratio of total changes equals the ratio of derivatives at one shared point, exactly what the proof of L'Hopital's rule needs.

Theorem (L'Hopital, 0/0 form). Suppose f(x) to 0 and g(x) to 0 as x to c, that f and g are differentiable near c with g'(x) != 0 there, and that lim (x to c) f'(x)/g'(x) = L. Then lim (x to c) f(x)/g(x) = L. The proof extends f and g by the value 0 at c and applies the Cauchy MVT on [c, x]: f(x)/g(x) = f'(t)/g'(t) for some t between c and x, and as x to c the squeezed point t is forced to c, carrying the quotient to L.

Now the caveat, which costs students real points. The implication runs one way. If lim f'/g' fails to exist, the rule says nothing. Take f(x) = x^2 sin(1/x) with f(0) = 0 and g(x) = x, as x to 0. The original quotient is x sin(1/x) to 0 by the squeeze. But f'(x)/g'(x) = 2x sin(1/x) - cos(1/x), which oscillates without limit. Reading L'Hopital backwards would deny a limit that plainly exists. A second caution is circularity: evaluating lim (x to 0) sin(x)/x by the rule uses the derivative of sin, whose computation depends on that very limit.

Darboux's theorem: derivatives obey the intermediate value property

Last lesson produced a discontinuous derivative, k' with its cos(1/x) oscillation, so one might guess derivatives can be arbitrarily wild, jumping like step functions. Darboux's theorem says no: every derivative, continuous or not, passes through all intermediate values, exactly as continuous functions do.

Theorem (Darboux). Let f be differentiable on [a, b] and let lambda lie strictly between f'(a) and f'(b). Then there is c in (a, b) with f'(c) = lambda.

Proof. Suppose f'(a) < lambda < f'(b); the other order is symmetric. Define g(x) = f(x) - lambda x, so g is differentiable with g'(x) = f'(x) - lambda, and g'(a) < 0 < g'(b). By the extreme value theorem g attains a minimum on [a, b]. Since g'(a) < 0, points just right of a have g(x) < g(a), because the difference quotient near a is eventually negative; so the minimum is not at a. Since g'(b) > 0, points just left of b have g(x) < g(b), so the minimum is not at b.

The minimum therefore occurs at an interior point c, and Fermat's theorem gives g'(c) = 0, that is, f'(c) = lambda. This completes the proof.

The consequence worth memorizing: a derivative can never have a jump discontinuity. If f' were -1 just left of a point and +1 just right while skipping 0, Darboux would be violated on a small interval. So the sign function is not the derivative of anything on an interval containing 0. When derivatives are discontinuous, the failure is always of the oscillating kind, like k', never a clean jump.

A little history: a skeptic, a marquis, and a memoir

Michel Rolle proved his theorem in 1691 for polynomials only, by algebraic methods, and the irony is famous: Rolle was one of the sharpest early critics of the infinitesimal calculus, calling its foundations into question in the Paris Academy. L'Hopital's rule appeared in 1696 in the first calculus textbook ever printed, the marquis de L'Hopital's Analyse des infiniment petits; the mathematics was largely purchased, under an arrangement by which Johann Bernoulli supplied discoveries for pay, a fact Bernoulli aired loudly after the marquis died.

The mean value theorem in its modern role is due to Lagrange, who stated it in his 1797 Theorie des fonctions analytiques, and to Cauchy, whose 1823 lectures made it the engine of rigorous calculus and added the two-function generalization. The streamlined proof via Rolle and an auxiliary function was popularized through Serret's 1868 course, from lectures of Bonnet. Darboux's theorem appeared in his 1875 memoir on discontinuous functions, the same memoir that built the upper and lower sums of the next lesson. The polish came a full century after the practice.

Common wrong turns

Mean value arguments are short, so most errors are structural rather than computational. The recurring ones:

  • Using the mean point as if it were known. The theorem asserts existence, nothing more. Arguments needing a specific numerical c are outside its power; arguments needing some c with a bound on f' are its home ground.
  • Ignoring a hypothesis. The corner of |x| on [-1, 1] defeats Rolle, and one endpoint discontinuity defeats it too. Check continuity on the closed interval and differentiability on the open one, every time.
  • Two functions, two mean points. Applying the mean value theorem separately to f and g and then dividing produces f'(c_1)/g'(c_2) with different points, which proves nothing about the ratio. The Cauchy version exists precisely to force c_1 = c_2.
  • Running L'Hopital backwards. Nonexistence of lim f'/g' does not transfer to lim f/g, as x^2 sin(1/x) over x shows. The rule is a one-way street.
  • Reading f'(c) = 0 as an extremum certificate. Fermat's theorem filters candidates; x^3 at 0 passes the filter and is no extremum. Classification needs more, such as a sign change of f' across c, which the monotonicity test justifies.

Try it

Exercise. Use the mean value theorem to prove 8 + 1/9 < sqrt(66) < 8 + 1/8, without a calculator.

Scratch work first. The number sqrt(66) is f(66) for f(x) = sqrt(x), and the nearby point with a clean value is f(64) = 8. The mean value theorem on [64, 66] converts the difference sqrt(66) - 8 into a derivative at an unknown point times a length; bounding that derivative traps the difference.

Solution. Let f(x) = sqrt(x) on [64, 66]; it is continuous there and differentiable on the interior with f'(x) = 1/(2 sqrt(x)). The mean value theorem yields c in (64, 66) with sqrt(66) - sqrt(64) = f'(c)(66 - 64) = 2/(2 sqrt(c)) = 1/sqrt(c). From 64 < c < 66 < 81 and the strict monotonicity of the square root, 8 < sqrt(c) < 9, so 1/9 < 1/sqrt(c) < 1/8. Therefore 1/9 < sqrt(66) - 8 < 1/8, which is the claim. This completes the proof.

As a check, the true value is 8.124..., inside (8.111..., 8.125). The same pattern, difference equals derivative times length, is how error estimates are proved throughout numerical analysis.

Looking ahead

You now hold the full differential toolkit: a rigorous derivative, and the mean value theorem converting pointwise derivative information into interval-wide conclusions. The next lesson builds the Riemann integral from upper and lower sums, and the two constructions meet in the fundamental theorem of calculus, whose proof is a telescoping chain of mean value applications, one per subinterval.

Sources

  1. Lebl, J. (2026). Mean value theorem (Section 4.2). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Rodriguez, C. (2020). Lecture 19: Differentiation rules, Rolle's theorem, and the mean value theorem [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  3. Trench, W. F. (2013). 2.3: Differentiable functions of one variable. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  4. Trench, W. F. (2013). 2.4: L'Hospital's rule. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  5. Dawkins, P. (n.d.). Calculus I: The mean value theorem. Paul's Online Notes, Lamar University. tutorial.math.lamar.edu
  6. O'Connor, J. J., & Robertson, E. F. (2008). Michel Rolle. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. O'Connor, J. J., & Robertson, E. F. (2020). Gaston Darboux. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
Key terms
Fermat's theorem
At an interior extremum where f is differentiable, f'(c) = 0.
Rolle's theorem
If f(a) = f(b) with the usual smoothness, some interior c has f'(c) = 0.
Mean value theorem
Some interior c satisfies f'(c) = (f(b) - f(a))/(b - a).
Auxiliary function
A helper function, here f minus its secant line, built to apply Rolle's theorem.
Zero-derivative corollary
A function with derivative zero on an interval is constant there.

Module 6: The Riemann Integral and Uniform Convergence

Construct the Riemann integral from sums and analyze pointwise versus uniform convergence of functions.

The Riemann Integral

  • Define upper and lower Darboux sums and the Riemann integral.
  • State the Riemann criterion for integrability.
  • Explain why every continuous function on a closed interval is integrable.

Integration measures accumulated area. We make this rigorous by trapping the region under a graph between over-estimates and under-estimates built from rectangles, then squeezing them together. The construction uses no new limit concept: it runs entirely on suprema and infima, the completeness vocabulary of Module 1, which is why it handles functions far rougher than the continuous ones calculus usually shows. This lesson builds the integral, proves the criterion governing which functions have one, works a function that has none, and finishes with both parts of the fundamental theorem of calculus.

Partitions and Darboux sums

Let f be bounded on [a, b]; boundedness is a standing assumption throughout, and it is what guarantees the suprema and infima below exist. A partition P is a finite set of points a = x_0 < x_1 < ... < x_n = b, cutting [a, b] into subintervals. On the i-th subinterval [x_{i-1}, x_i] let M_i be the supremum of f and m_i the infimum. The upper sum and lower sum are

U(f, P) = sum M_i (x_i - x_{i-1}),   L(f, P) = sum m_i (x_i - x_{i-1}).

Read them geometrically: the upper sum covers each strip with the shortest rectangle that still contains it, overestimating the area; the lower sum uses the tallest rectangle that fits underneath, underestimating it. Since m_i <= M_i on every piece, L(f, P) <= U(f, P) for every single partition. Note the deliberate use of supremum and infimum rather than maximum and minimum: a bounded function on a subinterval need not attain either, and Module 1 built exactly the tool that survives this.

The refinement lemma

A partition P' refines P if it contains every point of P. The engine of the whole theory is that refining can only help: it tightens the trap from both sides.

Lemma (refinement). If P' refines P, then L(f, P) <= L(f, P') and U(f, P') <= U(f, P).

Proof. It suffices to add one point t and repeat, since P' is reached from P by finitely many additions. Say t lands in (x_{k-1}, x_k); only the k-th term of each sum changes. Let M' and M'' be the suprema of f on [x_{k-1}, t] and [t, x_k]. Each is the supremum over a smaller set, so M' <= M_k and M'' <= M_k, giving M'(t - x_{k-1}) + M''(x_k - t) <= M_k(x_k - x_{k-1}). Hence U(f, P') <= U(f, P). The lower-sum half is the mirror image, with infima over smaller sets at least m_k. This completes the proof.

Corollary. Every lower sum is at most every upper sum: for any partitions P_1 and P_2, L(f, P_1) <= U(f, P_2). Indeed, with P the common refinement containing all points of both, L(f, P_1) <= L(f, P) <= U(f, P) <= U(f, P_2), using the lemma on both ends and the one-partition inequality in the middle.

The upper and lower integrals

The upper integral is the infimum of U(f, P) over all partitions, and the lower integral is the supremum of L(f, P). Both exist by completeness: the corollary makes the upper sums bounded below and the lower sums bounded above. Passing to the supremum and infimum in the corollary gives lower integral <= upper integral, always. We say f is Riemann integrable on [a, b] when the two are equal, and their common value is the integral, written integral (from a to b) f.

A curve with rectangles beneath it illustrating a lower Darboux sum approximating the area y = f(x) lower sum rectangles

The Riemann criterion

Theorem (Riemann criterion). A bounded function f is integrable on [a, b] if and only if for every epsilon > 0 there exists a partition P with U(f, P) - L(f, P) < epsilon.

Proof. Suppose first that such partitions exist. For any P, the chain L(f, P) <= lower integral <= upper integral <= U(f, P) holds by definition of supremum and infimum. So the gap between the two integrals is at most U(f, P) - L(f, P) < epsilon. A nonnegative number below every positive epsilon is 0, so the integrals coincide and f is integrable.

Conversely, suppose f is integrable with integral I. Let epsilon > 0. Since I is the infimum of the upper sums, some P_1 has U(f, P_1) < I + epsilon/2; since I is the supremum of the lower sums, some P_2 has L(f, P_2) > I - epsilon/2. Let P be their common refinement. The refinement lemma gives U(f, P) <= U(f, P_1) and L(f, P) >= L(f, P_2), so U(f, P) - L(f, P) < (I + epsilon/2) - (I - epsilon/2) = epsilon. This completes the proof.

The criterion converts integrability into a checkable estimate. Since U - L = sum (M_i - m_i)(x_i - x_{i-1}), the task is always to make the oscillation M_i - m_i small on each piece, or to confine the pieces where it is large to small total width. The two integrability proofs below are precisely these two strategies.

A function with no integral: the Dirichlet example

Example. Let f(x) = 1 if x is rational and f(x) = 0 if x is irrational, on [0, 1]. Take any partition P. Each subinterval has positive length, so by the density theorems of Module 1 it contains both a rational and an irrational point. Therefore M_i = 1 and m_i = 0 on every piece, and U(f, P) = sum 1 * (x_i - x_{i-1}) = 1 while L(f, P) = 0. Every upper sum is 1 and every lower sum is 0, so the upper integral is 1, the lower integral is 0, and f is not Riemann integrable.

No refinement helps: however finely you slice, every piece still contains both kinds of points and the oscillation stays 1. This function, introduced by Dirichlet in 1829, marks the honest boundary of the Riemann theory, and it returns in the final lesson as a pointwise limit of harmless functions.

Continuous functions are integrable

Theorem. Every function continuous on [a, b] is Riemann integrable.

Proof. Since [a, b] is closed and bounded, f is uniformly continuous there (Module 4). Let epsilon > 0. Uniform continuity gives delta > 0 so that |x - u| < delta implies |f(x) - f(u)| < epsilon/(b - a). Choose a partition with every subinterval shorter than delta.

On each subinterval f attains its max and min (by the extreme value theorem), and these points are within delta, so M_i - m_i < epsilon/(b - a). Therefore U(f, P) - L(f, P) = sum (M_i - m_i)(x_i - x_{i-1}) < (epsilon/(b - a)) sum (x_i - x_{i-1}) = (epsilon/(b - a))(b - a) = epsilon. By the Riemann criterion, f is integrable. This completes the proof.

Notice how three pillars converge here: completeness gives the upper and lower integrals, the extreme value theorem supplies the max and min on each piece, and uniform continuity guarantees the oscillation shrinks uniformly. This is the first strategy: make every oscillation small.

Monotone functions are integrable

Monotone functions can jump, even at infinitely many points, yet they are always integrable. The proof is a telescoping trick worth savoring.

Theorem. Every monotone function on [a, b] is Riemann integrable.

Proof. Say f is nondecreasing; the decreasing case is symmetric. Then f is bounded by f(a) and f(b). Take the uniform partition P_n into n pieces of width (b - a)/n. On [x_{i-1}, x_i], monotonicity puts the infimum at the left end and the supremum at the right: m_i = f(x_{i-1}) and M_i = f(x_i).

Then U(f, P_n) - L(f, P_n) = sum [f(x_i) - f(x_{i-1})] (b - a)/n = [(b - a)/n][f(b) - f(a)], because the sum of consecutive differences telescopes. Given epsilon > 0, choose n with [(b - a)/n][f(b) - f(a)] < epsilon, possible by the Archimedean property. The Riemann criterion applies. This completes the proof.

This is the second strategy in action: the oscillations need not all be small, but their total, weighted by width, telescopes into one small number. A nondecreasing step function with jumps at 1/2, 1/3, 1/4, ... is discontinuous at infinitely many points and integrable anyway. Integrability is strictly wider than continuity.

The fundamental theorem of calculus

Two bookkeeping facts, both routine refinement arguments, get us to the summit. First, additivity: for a < c < b, integral (from a to b) f = integral (from a to c) f + integral (from c to b) f, each piece being integrable. Second, the basic bound: if m <= f <= M on an interval of length l, then m l <= integral f <= M l, since these constants are one-rectangle lower and upper sums. Now define the accumulation function F(x) = integral (from a to x) f.

Theorem (FTC, part 1). Let f be integrable on [a, b] with |f| <= M. Then F is continuous on [a, b]; indeed |F(x) - F(y)| <= M|x - y|. Moreover, at any point c where f is continuous, F is differentiable and F'(c) = f(c).

Proof. For y < x, additivity gives F(x) - F(y) = integral (from y to x) f, and the basic bound with -M <= f <= M gives |F(x) - F(y)| <= M(x - y). So F is Lipschitz, hence (uniformly) continuous. Now let f be continuous at c and let epsilon > 0. Choose delta so that |t - c| < delta implies |f(t) - f(c)| < epsilon. For 0 < |x - c| < delta, additivity gives

[F(x) - F(c)]/(x - c) - f(c) = [1/(x - c)] integral (from c to x) (f(t) - f(c)).

On the interval between c and x, the integrand lies between -epsilon and epsilon, so the basic bound puts the integral between -epsilon|x - c| and epsilon|x - c|. Dividing by |x - c|, the displayed difference has absolute value at most epsilon. By the definition of the limit, F'(c) = f(c). This completes the proof.

Theorem (FTC, part 2). Let f be integrable on [a, b], and suppose F is continuous on [a, b], differentiable on (a, b), with F' = f there. Then integral (from a to b) f = F(b) - F(a).

Proof. Let P be any partition. On each subinterval [x_{i-1}, x_i], the mean value theorem, the bridge built last lesson, gives a point t_i with F(x_i) - F(x_{i-1}) = f(t_i)(x_i - x_{i-1}). Since m_i <= f(t_i) <= M_i, summing over i and telescoping the left side gives L(f, P) <= F(b) - F(a) <= U(f, P).

So the fixed number F(b) - F(a) lies between every lower sum and every upper sum, hence between the lower and upper integrals. Because f is integrable, those coincide with integral (from a to b) f, and the squeeze forces F(b) - F(a) to equal it. This completes the proof.

Every antiderivative evaluation you have ever performed is this telescoping chain of mean value applications, run silently. And the corollary from last lesson, that antiderivatives differ by constants, is what lets you use any antiderivative you can find.

A little history: from Cauchy to Lebesgue

Cauchy gave the first rigorous integral in 1823, defined for continuous functions as a limit of sums built from left endpoints. Riemann, in his 1854 Habilitation thesis on trigonometric series, published only after his death, asked the sharper question: exactly which functions can be integrated at all? His answer is the criterion of this lesson, and he exhibited integrable functions with dense discontinuities to show how far past continuity the theory reaches. Darboux reorganized the construction around upper and lower sums in 1875, the form you learned here.

The boundary of the theory was mapped by Lebesgue in 1902: a bounded function is Riemann integrable exactly when its set of discontinuities is negligible in a precise sense, measure zero. The Dirichlet function, discontinuous everywhere, fails spectacularly; Thomae's function, continuous exactly at the irrationals, passes. Lebesgue's own integral, built on measuring sets rather than slicing intervals, integrates the Dirichlet function without effort and assigns it the value 0. That theory begins where this course ends.

Common wrong turns

Integration proofs have their own recurring traps. The main ones:

  • Writing max and min for sup and inf. A bounded function need not attain extreme values on a subinterval. Reach for max and min only after continuity plus the extreme value theorem licenses them.
  • Assuming the integral exists. The symbol integral f is meaningless until integrability is established; manipulating it for the Dirichlet function proves nothing. Criterion first, computation second.
  • Believing integrable means continuous. Monotone step functions with infinitely many jumps are integrable. The implication runs the other way, and even then only via uniform continuity.
  • Reversing the refinement inequalities. Adding points lowers upper sums and raises lower sums. If your scratch work has a refinement making U grow, the inequality is upside down.
  • Quoting FTC part 2 without its hypotheses. The theorem needs both that f is integrable and that an antiderivative exists on the whole interval. Neither implies the other: F(x) = x^2 sin(1/x^2) has a derivative everywhere that is unbounded near 0, hence not Riemann integrable there.

Try it

Exercise. On [0, 1], define f(1/2) = 1 and f(x) = 0 for every other x. Prove that f is integrable and that integral (from 0 to 1) f = 0.

Scratch work first. The oscillation is 1 near the single point 1/2 and 0 elsewhere, so the second strategy applies: confine the bad point to a subinterval of tiny width. Lower sums should all be 0, and one thin middle piece should make the upper sum small.

Solution. Every subinterval of positive length contains points other than 1/2, where f = 0, so m_i = 0 always and L(f, P) = 0 for every partition; the lower integral is 0. Let epsilon > 0; we may assume epsilon < 1, since a partition that works for a small tolerance works for any larger one.

Take P = {0, 1/2 - epsilon/4, 1/2 + epsilon/4, 1}. On the two outer pieces f = 0 identically, so M_i = 0 there; on the middle piece of width epsilon/2, M_i = 1. Hence U(f, P) - L(f, P) = epsilon/2 - 0 < epsilon, and the Riemann criterion certifies integrability. Finally, 0 = L(f, P) <= integral (from 0 to 1) f <= U(f, P) < epsilon for every epsilon > 0, so the integral is 0. This completes the proof.

The same argument, run with one thin window per point, shows that changing an integrable function at finitely many points changes neither its integrability nor its integral. The integral is blind to finite exceptional sets, a first hint of Lebesgue's measure-zero idea.

Looking ahead

You now own the full calculus toolkit, rebuilt on proofs: limits, continuity, derivatives, and an integral with an exact criterion for existence. One question remains: when functions arrive as limits of other functions, do integrals and continuity survive the passage? The final lesson defines the two competing notions of convergence for function sequences and proves which one preserves what.

Sources

  1. Lebl, J. (2026). The Riemann integral (Section 5.1). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Lebl, J. (2026). Fundamental theorem of calculus (Section 5.3). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  3. Rodriguez, C. (2020). Lecture 21: The Riemann integral of a continuous function [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  4. Trench, W. F. (2013). 3.1: Definition of the integral. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  5. Trench, W. F. (2013). 3.2: Existence of the integral. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  6. O'Connor, J. J., & Robertson, E. F. (1998). Bernhard Riemann. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. Weisstein, E. W. (n.d.). Riemann integral. MathWorld: A Wolfram Web Resource. mathworld.wolfram.com
Key terms
Partition
A finite set of points splitting [a, b] into subintervals.
Upper and lower sums
U(f,P) and L(f,P), the over- and under-estimates using sup and inf on each subinterval.
Upper and lower integrals
The infimum of upper sums and supremum of lower sums over all partitions.
Riemann integrable
The upper and lower integrals are equal; their common value is the integral.
Riemann criterion
f is integrable iff some partition makes U(f,P) - L(f,P) < epsilon for each epsilon.

Sequences of Functions and Uniform Convergence

  • Distinguish pointwise from uniform convergence of function sequences.
  • Give an example where pointwise convergence loses continuity.
  • State the theorem that uniform convergence preserves continuity.

We close by letting whole functions vary. Given functions f_1, f_2, f_3, ..., in what sense can they approach a limit function f? There are two natural answers, and the difference between them is one of the most important distinctions in analysis; the wrong answer sat inside a published theorem of Cauchy for a quarter century. This lesson defines both notions, works the canonical counterexample in full, proves the continuity and integration theorems that uniform convergence buys, and adds the two workhorse tools, the Cauchy criterion and the Weierstrass M-test, that make uniformity checkable in practice.

Pointwise convergence

Definition. A sequence (f_n) converges pointwise to f on a set D if for each fixed x in D, the number sequence f_n(x) converges to f(x). Spelled out: for each x and each epsilon > 0 there is N (which may depend on x) with |f_n(x) - f(x)| < epsilon for n >= N.

Read the quantifier order slowly: for each x, for each epsilon, there is N. The threshold is chosen last, with full knowledge of which point is being served, so each point gets a personalized N. Nothing coordinates the points, and that is the weakness: a sequence can be excellent at every individual point while, at every stage n, some point is still being served badly. Pointwise convergence is a family of one-dimensional statements wearing the costume of a statement about functions.

Pointwise convergence can destroy continuity

Example. Let f_n(x) = x^n on [0, 1]. For 0 <= x < 1, the geometric fact from Module 2 gives x^n to 0; at x = 1, x^n = 1 for all n, so the limit is 1. The pointwise limit is

f(x) = 0 for 0 <= x < 1, and f(1) = 1.

Each f_n is a polynomial, as continuous as functions get, yet the limit f has a jump at x = 1. Pointwise convergence alone does not preserve continuity. Watch the mechanism, because it is the whole story. Fix the tolerance epsilon = 1/2 and any candidate threshold n. The point x_n = (1/2)^(1/n) lies in [0, 1) and satisfies x_n^n = 1/2 exactly, so |f_n(x_n) - f(x_n)| = 1/2. However large n is, some point near 1 is still a full 1/2 away from its limit.

Said with thresholds: the N that works for x must satisfy x^N < epsilon, and as x creeps toward 1 the required N climbs without bound. No single N serves the whole interval, and the jump at 1 is the visible scar. Restrict the domain, though, and the pathology vanishes: on [0, b] with b < 1, the worst point is b itself, the largest gap is b^n, and b^n to 0. One threshold then serves every point at once. The disease lives at the boundary, not in the sequence.

Uniform convergence

Definition. A sequence (f_n) converges uniformly to f on D if for every epsilon > 0 there is a single N such that for all n >= N and all x in D, |f_n(x) - f(x)| < epsilon.

The quantifier order is the whole story, exactly as with uniform continuity in Module 4: N is chosen before x, so one threshold serves every point simultaneously. Picture an epsilon-tube of vertical half-width epsilon drawn around the graph of f; uniform convergence means that from some N on, the entire graph of f_n lies inside the tube. For x^n on [0, 1], the tube of half-width 1/2 around the jump-limit f never contains a whole polynomial graph, which is the picture behind the computation above.

The sup-norm criterion

Checking infinitely many x at once sounds hard until it is reorganized as one supremum per n. Write d_n = sup_x |f_n(x) - f(x)|, the worst gap at stage n.

Theorem. f_n to f uniformly on D if and only if d_n to 0 as a sequence of numbers.

Proof. Suppose uniform convergence. Given epsilon > 0, take N with |f_n(x) - f(x)| < epsilon/2 for all n >= N and all x. Then epsilon/2 is an upper bound of the gaps at stage n, so d_n <= epsilon/2 < epsilon. Conversely, if d_n to 0, then given epsilon there is N with d_n < epsilon for n >= N, and every individual gap is at most the supremum: |f_n(x) - f(x)| <= d_n < epsilon for all x. This completes the proof.

The criterion turns uniform convergence questions into ordinary Module 2 limits, usually settled by finding the worst x with calculus. Two quick specimens. For f_n(x) = sin(nx)/n on all of R, d_n <= 1/n to 0: uniform, with limit 0. For x^n on [0, 1], the point x_n = (1/2)^(1/n) shows d_n >= 1/2: not uniform, confirming the tube picture. The first specimen carries a warning worth posting: the derivatives cos(nx) of that uniformly convergent sequence converge nowhere interesting. Uniform convergence of functions says nothing about derivatives; term-by-term differentiation needs its own, stronger hypotheses.

Uniform convergence preserves continuity

Theorem. If each f_n is continuous on D and f_n to f uniformly, then f is continuous on D.

Proof. Fix c in D and epsilon > 0. By uniform convergence choose N with |f_N(x) - f(x)| < epsilon/3 for all x. Since f_N is continuous at c, choose delta > 0 so that |x - c| < delta implies |f_N(x) - f_N(c)| < epsilon/3. Then for such x, the triangle inequality gives

|f(x) - f(c)| <= |f(x) - f_N(x)| + |f_N(x) - f_N(c)| + |f_N(c) - f(c)| < epsilon/3 + epsilon/3 + epsilon/3 = epsilon.

Hence f is continuous at c, and since c was arbitrary, on all of D. This completes the proof.

Study the architecture of this famous epsilon/3 argument. The route from f(x) to f(c) is broken at two waystations, f_N(x) and f_N(c): one leg crosses from the limit to an approximant, one leg moves along the continuous approximant, one leg crosses back. Uniformity is what pays for the two crossing legs at every x near c simultaneously; a pointwise N tuned to c alone could not bound the first leg, which is evaluated at the moving point x.

Note also the order of choices, N before delta: the approximant is fixed first, then its continuity is spent. And read the theorem contrapositively for free information: since the x^n limit is discontinuous, that convergence could not have been uniform, a second proof of the failure.

The Cauchy criterion and the Weierstrass M-test

Like sequences of numbers, sequences of functions can be tested for uniform convergence with no limit candidate in hand.

Theorem (uniform Cauchy criterion). (f_n) converges uniformly on D if and only if for every epsilon > 0 there is N with |f_n(x) - f_m(x)| < epsilon for all n, m >= N and all x.

Proof. Necessity is the usual triangle inequality through the limit. For sufficiency: at each fixed x the numbers f_n(x) form a Cauchy sequence, so by the completeness of R (Module 2) they converge; define f(x) as the limit. Now take epsilon > 0 and the promised N, fix n >= N and x, and let m to infinity in |f_n(x) - f_m(x)| <= epsilon/2, using that limits preserve non-strict inequalities: |f_n(x) - f(x)| <= epsilon/2 < epsilon. The bound is independent of x, so the convergence is uniform. This completes the proof.

The most used consequence converts series of functions into series of numbers.

Theorem (Weierstrass M-test). Suppose |u_k(x)| <= M_k for all x in D, where sum M_k is a convergent series of constants. Then sum u_k(x) converges uniformly on D.

Proof. Let s_n(x) be the partial sums. For m > n, the triangle inequality gives |s_m(x) - s_n(x)| <= |u_{n+1}(x)| + ... + |u_m(x)| <= M_{n+1} + ... + M_m. Since sum M_k converges, its partial sums are Cauchy (Module 3), so the right side is below epsilon once n, m >= N, uniformly in x. The uniform Cauchy criterion finishes. This completes the proof.

Example: sum cos(kx)/k^2 converges uniformly on all of R, since |cos(kx)/k^2| <= 1/k^2 and sum 1/k^2 is a convergent p-series. By the continuity theorem, the sum function is continuous everywhere, a fact with no elementary proof. This is how Weierstrass built his continuous, nowhere differentiable function: a uniformly convergent sum of ever-faster cosines.

Term-by-term integration

First, the cautionary tale. Define the moving bump g_n on [0, 1] by g_n(x) = n for 0 < x < 1/n and g_n(x) = 0 otherwise. Each g_n is a step function with integral (from 0 to 1) g_n = n * (1/n) = 1. Pointwise, g_n to 0: at x = 0 every value is 0, and any x > 0 escapes the bump once 1/n < x.

So the limit of the integrals is 1 while the integral of the limit is 0. Pointwise convergence lets area slide out from under you: the bump grows taller as it grows thinner, preserving its unit of area while vanishing from every fixed point's view.

Theorem. If each f_n is integrable on [a, b] and f_n to f uniformly, then f is integrable and integral (from a to b) f_n to integral (from a to b) f.

Proof. Let epsilon > 0 and set epsilon' = epsilon/(1 + 2(b - a)). Choose n with |f(x) - f_n(x)| < epsilon' for all x. On any subinterval, f <= f_n + epsilon' and f >= f_n - epsilon', so the suprema and infima obey M_i(f) <= M_i(f_n) + epsilon' and m_i(f) >= m_i(f_n) - epsilon'. Summing against the widths, any partition P satisfies U(f, P) - L(f, P) <= [U(f_n, P) - L(f_n, P)] + 2 epsilon' (b - a).

Since f_n is integrable, the Riemann criterion supplies a P with U(f_n, P) - L(f_n, P) < epsilon', and then U(f, P) - L(f, P) < epsilon'(1 + 2(b - a)) = epsilon. So f is integrable. For the limit of integrals, the basic bound of last lesson gives |integral f - integral f_n| = |integral (f - f_n)| <= d_n (b - a), where d_n is the sup-norm gap, and d_n to 0 by uniformity. This completes the proof.

Combined with the M-test, this justifies integrating a uniformly convergent series term by term, the move behind power series identities. The moving bump shows the license is not a formality.

Why this motivates deeper theories

Two doors swing open here. The uniform Cauchy criterion says that the space of continuous functions on [a, b], with sup-norm distance d(f, g) = sup |f - g|, is complete: uniformly Cauchy sequences converge inside the space. Analysis on that space, where a point is a function, is functional analysis, and the completeness you just proved is its bedrock. Second, the moving bump shows the Riemann integral cooperates badly with pointwise limits; Lebesgue's 1902 integral was engineered so that far weaker hypotheses let limits pass through integrals. Both subjects begin where this course ends.

A little history: the theorem that was wrong

Cauchy's 1821 Cours d'analyse, the same book that tamed limits, asserted that a convergent sum of continuous functions is continuous. Abel in 1826 pointed to Fourier's series for discontinuous waves as troubling exceptions. The diagnosis took another two decades: Seidel in 1847 and Stokes in 1848 located the failure in what Seidel called arbitrarily slow convergence near a bad point, which is exactly the climbing-N behavior of x^n near 1.

The positive concept arrived through Weierstrass. His teacher Gudermann had remarked in 1838 on convergence happening in a uniform way; Weierstrass isolated the definition, used it in manuscripts from 1841, and made it, with the M-test bearing his name, a pillar of his Berlin lectures. The episode is a standing advertisement for quantifier hygiene: the gap between Cauchy's claim and the true theorem is one swapped quantifier, invisible in prose and decisive in analysis.

Common wrong turns

The errors in this topic are almost all quantifier errors in disguise. The recurring ones:

  • Verifying convergence point by point and concluding uniformity. Pointwise convergence at every x, however fast, is compatible with d_n staying large forever, as x^n shows. Uniformity is a statement about the supremum, so compute the supremum.
  • Taking the supremum at a fixed x. The worst point moves with n; for x^n it is (1/2)^(1/n), sliding toward 1. Freeze x first and you will miss it. Hunt the maximizer for each n, often with the derivative.
  • Forgetting the domain. x^n converges uniformly on every [0, b] with b < 1 and not on [0, 1]. Uniformity is a property of the pair (sequence, set); always name the set.
  • Differentiating term by term under uniform convergence. sin(nx)/n to 0 uniformly, yet the derivatives cos(nx) diverge. Integration is the operation uniform convergence licenses; differentiation needs uniform convergence of the derivatives.
  • Reading a continuous limit as proof of uniformity. The continuity theorem runs one way. The Try it below exhibits continuous functions converging pointwise to the continuous 0 with the convergence still failing to be uniform.

Try it

Exercise. Let f_n(x) = nx/(1 + n^2 x^2) on [0, 1]. Prove that f_n to 0 pointwise but not uniformly.

Scratch work first. For pointwise, fix x and let n grow; for x > 0 the n^2 downstairs should win. For uniformity, follow the second wrong turn above: hunt the worst point for each n. The shape of the formula, nx against 1 + (nx)^2, suggests trying nx = 1, that is, x = 1/n.

Solution. Pointwise: at x = 0, every f_n(0) = 0. For fixed x > 0, dropping the 1 from the denominator gives 0 <= f_n(x) <= nx/(n^2 x^2) = 1/(nx), and 1/(nx) to 0, so f_n(x) to 0 by the squeeze. Not uniform: evaluate at the moving point x = 1/n, which lies in [0, 1]: f_n(1/n) = (n * 1/n)/(1 + n^2 * 1/n^2) = 1/2. Hence d_n = sup_x |f_n(x) - 0| >= 1/2 for every n, so d_n does not tend to 0, and by the sup-norm criterion the convergence is not uniform. This completes the proof.

Notice what the example adds to the theory: every f_n is continuous, the pointwise limit 0 is continuous, and still the convergence is not uniform. A continuous limit is a necessary consequence of uniform convergence for continuous functions, never a certificate of it.

Looking ahead

Step back and survey the whole route. Completeness of R gave suprema; suprema gave the convergence theorems for sequences and series; those gave continuity its two great theorems, built the derivative and the mean value bridge, and assembled the integral; and in this lesson the same completeness, lifted to functions through the sup-norm, decided when limit processes commute. You have now traced the logical thread from the completeness of the real line all the way to the analysis of function spaces, the doorway to functional analysis, Fourier theory, and the Lebesgue integral. Well done.

Sources

  1. Lebl, J. (2026). Pointwise and uniform convergence (Section 6.1). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  2. Lebl, J. (2026). Interchange of limits (Section 6.2). Basic Analysis I: Introduction to Real Analysis, Volume I. jirka.org
  3. Rodriguez, C. (2020). Lecture 23: Pointwise and uniform convergence of sequences of functions [Lecture notes]. 18.100A Real Analysis, MIT OpenCourseWare. ocw.mit.edu
  4. Trench, W. F. (2013). 4.4: Sequences and series of functions. Introduction to Real Analysis, Mathematics LibreTexts. math.libretexts.org
  5. O'Connor, J. J., & Robertson, E. F. (1998). Karl Weierstrass. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  6. O'Connor, J. J., & Robertson, E. F. (1998). Niels Abel. MacTutor History of Mathematics Archive. mathshistory.st-andrews.ac.uk
  7. Weisstein, E. W. (n.d.). Uniform convergence. MathWorld: A Wolfram Web Resource. mathworld.wolfram.com
Key terms
Pointwise convergence
For each fixed x, f_n(x) to f(x); the threshold N may depend on x.
Uniform convergence
A single N works for all x at once: sup_x |f_n(x) - f(x)| to 0.
Limit function
The function f that a sequence f_n approaches.
Epsilon-tube
A band of half-width epsilon around f; uniform convergence traps the whole graph of f_n inside it.
Epsilon/3 argument
Splitting a gap into three epsilon/3 pieces to prove the uniform limit is continuous.

Open the interactive version with quizzes and progress →