Tutorials › Calculus I › Choosing Partitions Around Discontinuities

Riemann Sums and the Integral · Tutorial 968 of 1495

Choosing Partitions Around Discontinuities

Build partitions that give jump points only a small total interval length and make the oscillation small everywhere else.

Intermediate 11 min read

What You'll Learn

  • Define the mesh, oscillation, and upper-minus-lower sum used to assess a partition.
  • Surround each jump point with a short exceptional interval.
  • Bound the total contribution of exceptional intervals using boundedness.
  • Use uniform continuity to control oscillation on the remaining intervals.
  • Prove the partition criterion for bounded piecewise continuous functions.
  • Identify why a small mesh alone does not control oscillation near jumps.

Why Partitions Need to Treat Jumps Differently

A small partition mesh is useful, but by itself it does not make the function vary only a little on every subinterval. Near a jump, an interval can be very short and still contain function values separated by a substantial amount. A successful partition therefore handles jump points and continuous portions in different ways.

The strategy is to surround each jump with a short interval. Boundedness limits the possible contribution from that interval, and its length can be made small. On the remaining portions, continuity lets us make the oscillation small by subdividing finely enough.

Oscillation on a Partition Interval

A partition of \([a,b]\) is a finite increasing list \(P=\{x_0,x_1,\ldots,x_n\}\), where \(a=x_0<x_1<\cdots<x_n=b\). Its subintervals are \([x_{i-1},x_i]\), and its mesh is the length of its largest subinterval.

Definition: For a bounded function \(f\) on \([a,b]\), the oscillation on a subinterval \(I\) is \(\operatorname{osc}(f,I)=\sup_{x\in I}f(x)-\inf_{x\in I}f(x)\). The upper sum \(U(f,P)\) and lower sum \(L(f,P)\) are \[ U(f,P)=\sum_{i=1}^{n}\left(\sup_{[x_{i-1},x_i]}f\right)(x_i-x_{i-1}),\qquad L(f,P)=\sum_{i=1}^{n}\left(\inf_{[x_{i-1},x_i]}f\right)(x_i-x_{i-1}). \] Consequently, \[ U(f,P)-L(f,P)=\sum_{i=1}^{n}\operatorname{osc}(f,[x_{i-1},x_i])(x_i-x_{i-1}). \]

This identity follows by subtracting the lower-sum term from the upper-sum term on each subinterval and then adding the differences. Each contribution is nonnegative. A partition with small \(U(f,P)-L(f,P)\) has little total oscillation, weighted by interval length.

For a bounded function, the Riemann criterion says that it is Riemann integrable if, for every \(\varepsilon>0\), there is a partition \(P\) for which \(U(f,P)-L(f,P)<\varepsilon\). The construction below explains how to obtain such partitions for bounded piecewise continuous functions with finitely many jump points.

Isolate the Jump Points

Suppose the possible jumps occur at the finitely many interior points \(c_1,\ldots,c_N\), and \(f\) is bounded, say \(|f(x)|\le M\). Choose short intervals around the jumps, with endpoints included in the partition. Call subintervals lying in these neighborhoods exceptional; call the remaining subintervals regular.

On any exceptional interval \(I\), boundedness gives \(\sup_I f\le M\) and \(\inf_I f\ge -M\). Thus \(\operatorname{osc}(f,I)\le 2M\). If the total length of all exceptional intervals is at most \(\eta\), their total contribution to \(U-L\) is at most \(2M\eta\).

On the regular pieces, the function is continuous. Once the jump neighborhoods have been chosen, each remaining piece is a closed interval on which the function is continuous. A continuous function on a closed bounded interval is uniformly continuous: for every \(\gamma>0\), there is a distance \(\rho>0\) such that points less than \(\rho\) apart have function values less than \(\gamma\) apart. Subdividing the regular pieces into intervals shorter than \(\rho\) therefore makes their oscillations at most \(\gamma\).

Why the Construction Works

Theorem: A bounded function on a closed bounded interval that is continuous except at finitely many jump points is Riemann integrable, provided it is continuous on each piece between those points.

Here a jump point means a point where the finite left-hand and right-hand limits exist but are unequal. The function's value at the jump itself may be either of those values or another bounded value. The proof uses a partition that includes the endpoints of neighborhoods around every jump.

1
Choose the exceptional length.
Let the interval length be \(D=b-a>0\), and first suppose \(M>0\). Given \(\varepsilon>0\), choose jump neighborhoods with total length \(\eta<\varepsilon/(4M)\). Because there are finitely many jumps, their radii can be made small enough that the neighborhoods are disjoint and have this total length. Their contribution is at most \(2M\eta<\varepsilon/2\).
2
Control each regular piece.
Set \(\gamma=\varepsilon/(2D)\). On every closed regular piece, uniform continuity gives a positive subdivision width such that intervals no wider than that width have oscillation at most \(\gamma\). There are finitely many pieces, so subdivide each accordingly.
3
Add the contributions.
The total length of the regular pieces is at most \(D\). Their contribution is therefore at most \(\gamma D=\varepsilon/2\). Including the exceptional pieces gives \(U(f,P)-L(f,P)<\varepsilon\), so the Riemann criterion implies integrability.

If there are no jump points, the same argument uses uniform continuity on the whole interval. If \(M=0\), then \(f\) is identically zero and every upper-minus-lower sum is zero. If \(a=b\), there are no positive-length subintervals to control. These cases complete the argument without requiring the positive-length or positive-bound choices in the proof.

Worked Example: One Jump in a Step Function

Worked Example: One Jump in a Step Function

Let \(f:[0,1]\to\mathbb R\) be \(f(x)=-1\) for \(0\le x<1/2\), and \(f(x)=2\) for \(1/2\le x\le1\). Isolate the jump using the interval \([49/100,51/100]\). Use the partition \(P=\{0,49/100,51/100,1\}\).

The exceptional interval has length \(51/100-49/100=2/100=1/50\). Its infimum is \(-1\), its supremum is \(2\), and its oscillation is \(2-(-1)=3\). Its contribution to \(U-L\) is \(3(1/50)=3/50=0.06\).

The two other intervals lie wholly in constant portions of \(f\), so their oscillations are both zero. Thus \(U(f,P)-L(f,P)=0.06\). In particular, this partition meets the Riemann criterion for any tolerance greater than \(0.06\). The calculation checks both parts of the construction: the jump interval contributes its oscillation times its short length, while the regular intervals contribute nothing.

Worked Example: A Jump Between Linear Pieces

Worked Example: A Jump Between Linear Pieces

Define \(f:[0,1]\to\mathbb R\) by \(f(x)=x\) when \(0\le x<1/2\), and \(f(x)=x+1\) when \(1/2\le x\le1\). Use the exceptional interval \([49/100,51/100]\). Divide each remaining interval, \([0,49/100]\) and \([51/100,1]\), into 49 equal pieces.

The exceptional interval has length \(2/100=0.02\). On it, the minimum is \(49/100=0.49\), while the maximum is \(151/100=1.51\). Its oscillation is \(151/100-49/100=102/100=1.02\), so its contribution is \(1.02(0.02)=0.0204\).

Each regular piece has length \((49/100)/49=1/100\). On either linear portion, the function changes by exactly the interval length, so each regular piece has oscillation \(1/100=0.01\). There are 98 such pieces, giving a combined contribution \(98(0.01)(0.01)=0.0098\). Therefore \(U(f,P)-L(f,P)=0.0204+0.0098=0.0302\). The result is less than \(0.04\), as can be checked by comparing \(0.0302<0.0400\). Notice that continuity controls the regular pieces, but the jump interval needs a separate estimate.

Worked Example: Two Jumps with Different Sizes

Worked Example: Two Jumps with Different Sizes

Let \(f:[0,1]\to\mathbb R\) equal \(0\) for \(0\le x<1/3\), \(3\) for \(1/3\le x<2/3\), and \(-2\) for \(2/3\le x\le1\). Surround each jump by an interval of radius \(1/100\). The two exceptional intervals are \([1/3-1/100,1/3+1/100]\) and \([2/3-1/100,2/3+1/100]\). They do not overlap: the distance between their centers is \(1/3\), greater than their combined radius \(2/100\).

Each exceptional interval has length \(2/100=0.02\). The first contains the values \(0\) and \(3\), so its oscillation is \(3\); its contribution is \(3(0.02)=0.06\). The second contains the values \(3\) and \(-2\), so its oscillation is \(3-(-2)=5\); its contribution is \(5(0.02)=0.10\).

Every remaining interval lies in a constant piece, so its oscillation is zero. Hence \(U(f,P)-L(f,P)=0.06+0.10=0.16\). As a check, the two jumps have different oscillations, and the larger jump contributes more even though the exceptional intervals have equal lengths.

A Common Mistake: Small Width Does Not Mean Small Oscillation

Consider again the step function that is \(-1\) to the left of \(1/2\) and \(2\) at and to the right of \(1/2\). A tempting but incorrect claim is: “If every subinterval has width at most \(1/100\), then every oscillation is at most \(1/100\).” An interval of width \(1/100\) that contains \(1/2\) has oscillation \(2-(-1)=3\), not \(1/100\). Width alone does not control variation across a jump.

The correction is to separate the two estimates. Put the jump inside a short exceptional interval and use boundedness there: its contribution is at most \(2M\) times its length. Then subdivide the continuous portions finely enough that uniform continuity controls their oscillations. A partition may have a small mesh and still need this separate treatment of jumps.

Why This Partition Design Matters

The construction turns a qualitative description—“continuous except for a few jumps”—into a quantitative estimate. One chooses the total exceptional length to control the jumps and then chooses regular subdivisions to control continuous variation. The same upper-minus-lower sum identity keeps track of both effects in a single calculation.

Changing the value of a function at finitely many points does not obstruct this construction: those points can be included in the exceptional intervals, and the function remains bounded there. The estimate depends on the length assigned to the exceptional region, not on making the function continuous at each jump.

Check Your Understanding

Answer each question by referring to the oscillation-times-length estimate.

  1. If \(|f(x)|\le M\), what is an upper bound for the oscillation on any subinterval?
  2. Why can a very short interval containing a jump still have large oscillation?
  3. How does making the total exceptional length small control the contribution from all jump neighborhoods?
  4. Why can uniform continuity be used on the regular pieces after the jump neighborhoods are chosen?
  5. In the two-jump example, what were the separate contributions to \(U-L\), and why were they different?

Test yourself: Calculus I final exam practice

Ready to check what you know? Work a full-length practice final, then open the complete worked solutions.

Want all 1,114 practice problems?

This tutorial covers one topic. Calc Pass covers the full Calculus AB & BC curriculum (the core of Calculus I and II): full review, every practice question, and step-by-step solutions to each one.

QR code to download the Calc Pass app

Get the Calc Pass App

Scan to download and practice on the go, with instant scoring.

Calc Pass Volume 1: 1,114 Practice Questions book cover

Vol. 1: 1,114 Questions

The complete practice question bank, organized by AB & BC topic.

View on Amazon
Calc Pass Volume 2: Solutions Manual book cover

Vol. 2: Solutions Manual

Fully worked solutions to every question in Volume 1.

View on Amazon