Limit Explorer

Type a function and a point a. The page walks x in on a from both sides, ten times closer at each step, and reads what f does on the way: one value from both sides, two different values, a run to infinity, or no settling at all.

A limit exists when both sides agree on a finite value
Continuous at a
The limit sine's derivative rests on
Loading interactive simulation...

Lesson

The theory — Limit Explorer

lim f(x) = L as x → a means that f(x) stays as close to L as you like once x is close enough to a, with x ≠ a. The value f(a) plays no part: it may be missing, or something else.

What each symbol means

a
the point x approaches
L
the limit
L⁻, L⁺
the left and right limits, from x < a and from x > a
h
how far from a the page samples f, from 10⁻¹ down to 10⁻⁸

Where the formula comes from

  1. Substitute first. Where f is continuous, the limit is its value. Polynomials, sin, cos and eˣ are continuous everywhere, and a quotient of them is wherever its bottom is not 0.
  2. 0/0 means there is work to do. A factor (x − a) shared by top and bottom cancels, because the limit never looks at x = a itself. A root is cleared by multiplying by its conjugate.
  3. Read the two sides. When they disagree, or run off to infinity, there is no finite limit, and the way they fail names the discontinuity in the guide at the foot of the page.
  4. Squeeze what will not simplify. If g ≤ f ≤ h near a, and g and h share the limit L, then f has it too. The radians page proves sin x / x → 1 this way, and it is how a wobble inside a shrinking envelope dies.

Every derivative is a 0/0 in disguise 🖖

The slope of a curve at a point would be (f(x+h) − f(x)) / h with h set to 0, and that is 0/0 wherever f is defined. Division cannot answer it: 0/0 is not a number, and no algebra makes it one. A limit sidesteps the question. It asks what the quotient heads toward as h shrinks, never what it equals once h arrives, and the tangent line takes its slope from that. The next page is this limit, taken at every x.

When the table of numbers lies 🖖

Press Sampled at the wrong points. The page samples f at x = a ± 10⁻ⁿ for n = 1 to 8, and for sin(π/x) near 0 every row reads 0, because sin(10ⁿπ) = 0 for whole-number exponents. So the page reports a limit of 0. Between those sample points the function swings between −1 and +1 forever, and the true limit does not exist. Numerical convergence is a hint, never a proof.

LIMIT THEORY — WHAT THE GRAPH DOES AS x CLOSES IN ON a

Which Limit Case Are You Looking At?

A limit asks where f is heading as x approaches a, never what f does at a. Read the two one-sided limits first: if they agree you have a limit, and the only question left is whether f(a) matches it. If they disagree, the way they disagree — a step, a blow-up, or an endless wobble — names the case.

Removable hole — both sides agree, f(a) is missing L⁻ = L⁺ ≠ f(a)
0/0 that cancels — factor before you conclude 0/0 → ÷(x − a)
Jump — the two sides disagree L⁻ ≠ L⁺
Infinite — the values run off the scale f → ±∞ at x = a
Oscillation — the values never settle ∄L, |f| ≤ 1

01

Removable hole — both sides agree, f(a) is missing

What you know: The left and right limits are equal and finite, but f(a) is undefined. Substituting a gives 0/0, and no factor cancels.

Test: L⁻ = L⁺ ≠ f(a)

Worked example: f(x) = sin(x)/x at a = 0 → f(0) reads 0/0, yet f(±0.001) = 0.99999983 → limit = 1

Open this case: sinc sin(x)/x
Removable hole — both sides agree, f(a) is missing. Both branches aim at the same height; only the point itself is punched out. The left and right limits are equal and finite, but f(a) is undefined. Substituting a gives 0/0, and no factor cancels.
Both branches aim at the same height; only the point itself is punched out.

02

0/0 that cancels — factor before you conclude

What you know: Substituting a gives 0/0, and the numerator and denominator share a factor of (x − a).

Test: 0/0 → ÷(x − a)

Worked example: f(x) = (x² − 1)/(x − 1) at a = 1 → (x − 1)(x + 1)/(x − 1) = x + 1 → limit = 2

Open this case: 0/0 that cancels
0/0 that cancels — factor before you conclude. After cancelling, the graph is the straight line y = x + 1 with one point removed. Substituting a gives 0/0, and the numerator and denominator share a factor of (x − a).
After cancelling, the graph is the straight line y = x + 1 with one point removed.

03

Jump — the two sides disagree

What you know: Both one-sided limits are finite, but they are different numbers. The graph steps from one level to another at a.

Test: L⁻ ≠ L⁺

Worked example: f(x) = |x|/x at a = 0 → left limit = −1, right limit = +1 → the limit does not exist

Open this case: Jump |x|/x
Jump — the two sides disagree. Two flat branches at different heights: the sides disagree, so no single limit exists. Both one-sided limits are finite, but they are different numbers. The graph steps from one level to another at a.
Two flat branches at different heights: the sides disagree, so no single limit exists.

04

Infinite — the values run off the scale

What you know: At least one side grows without bound. Substituting a gives a non-zero number over zero, so a vertical asymptote stands at x = a.

Test: f → ±∞ at x = a

Worked example: f(x) = 1/x at a = 0 → values → −∞ from the left and → +∞ from the right → no finite limit

Open this case: Infinite 1/x
Infinite — the values run off the scale. Both branches race away from the axis along the vertical asymptote x = a. At least one side grows without bound. Substituting a gives a non-zero number over zero, so a vertical asymptote stands at x = a.
Both branches race away from the axis along the vertical asymptote x = a.

05

Oscillation — the values never settle

What you know: The function stays bounded, yet keeps sweeping the same range infinitely often, however close to a you look.

Test: ∄L, |f| ≤ 1

Worked example: f(x) = sin(1/x) at a = 0 → between x = 0.001 and x = 0.002 the graph completes about 80 full cycles, hitting every value in [−1, 1]

Open this case: Oscillation sin(1/x)
Oscillation — the values never settle. The wobble gets faster, not smaller, as x approaches 0. The function stays bounded, yet keeps sweeping the same range infinitely often, however close to a you look.
The wobble gets faster, not smaller, as x approaches 0.

Problems solved in full

  1. 0/0 that factors 3 steps

    Find the limit of (x² − 9)/(x − 3) as x → 3.

    Open this problem in the tool

    1. Substitute first. It gives 0/0, so there is work to do:

    2. The top is a difference of squares with the same factor as the bottom. Cancel it; the limit never looks at x = 3 itself:

    3. What is left is continuous at 3, so substitute:

    Answer

    The limit is 6. The function itself has no value at 3, and the page prints both: the limit 6 and the value at a undefined.

  2. 0/0 with a square root 3 steps

    Find the limit of (√(x + 4) − 2)/x as x → 0.

    Open this problem in the tool

    Show solution
    1. Substitute: 0/0 again.

    2. There is nothing to factor. Multiply top and bottom by the conjugate √(x + 4) + 2, which turns the top into a difference of squares, and cancel the x:

    3. Now substitute:

    Answer

    The limit is ¼. On the page the left column closes in on 0.25 from above and the right column from below.

  3. sin 3x over x 3 steps

    Find the limit of sin(3x)/x as x → 0.

    Open this problem in the tool

    Show solution
    1. The standard limit needs the same thing inside the sine and underneath it. Multiply and divide by 3:

    2. As x → 0, so does u = 3x, and the standard limit applies to u:

    3. So:

    Answer

    The limit is 3. The same move gives sin(kx)/x → k for any nonzero constant k.

  4. 1 − cos x over x², and a table that loses its digits 3 steps

    Find the limit of (1 − cos x)/x² as x → 0, and explain why the last row of the page's table reads 0.

    Open this problem in the tool

    Show solution
    1. Multiply top and bottom by 1 + cos x, and use 1 − cos²x = sin²x:

    2. Each factor now has a known limit:

    3. At x = 10⁻⁸, cos x differs from 1 by 5 × 10⁻¹⁷, less than half the gap between 1 and the next number below it a computer can store. So the computed cos x is exactly 1, and the top is exactly 0:

    Answer

    The limit is ½. The table holds 0.500000 down to x = 10⁻⁵, drifts at 10⁻⁶ and 10⁻⁷, and reads 0 at 10⁻⁸. The page reads its estimate from the steadiest rows, not the last one, and prints 0.5.

  5. A jump: the sides disagree 2 steps

    Find the one-sided limits of |x − 2|/(x − 2) at x = 2, and decide whether the limit exists.

    Open this problem in the tool

    Show solution
    1. Remove the absolute value on each side of 2 separately:

    2. The two sides give different numbers:

    Answer

    The left limit is −1, the right limit is 1, and the limit does not exist. No choice of f(2) repairs it: this is a jump.

  6. An infinite limit, and one that is not even that 3 steps

    Describe what 1/(x − 1)² does as x → 1, and compare it with 1/(x − 1).

    Open this problem in the tool

    Show solution
    1. Substitute: a number over 0. That is no limit in the finite sense; the question is which way it runs.

    2. The square is positive on both sides and shrinks to 0, so the fraction grows on both sides; at a distance of 10⁻³ it is already a million:

    3. Both sides run to +∞, so one writes the limit as +∞. Without the square, the sign of x − 1 flips at 1 and the two sides run opposite ways:

    Answer

    1/(x − 1)² → +∞ from both sides; 1/(x − 1) runs to −∞ on the left and +∞ on the right, and has no limit even in that sense. Neither function has a value at 1, so neither is continuous there.

  7. The squeeze 3 steps

    Find the limit of x² sin(1/x) as x → 0.

    Open this problem in the tool

    Show solution
    1. sin(1/x) oscillates forever near 0 and has no limit, so the limit of the product cannot be found as a product of limits. But it is bounded:

    2. Multiply through by x², which is never negative:

    3. Both bounds go to 0, so the function caught between them does too:

    Answer

    The limit is 0. The wobble is still there, infinitely fast, inside an envelope that closes on 0.

  8. Choosing a constant to make a function continuous 2 steps

    f(x) = kx + 1 for x < 2 and f(x) = x² for x ≥ 2. Find k so that f is continuous at 2.

    Show solution
    1. Continuity at 2 needs both one-sided limits to equal f(2). The right side and the value are both 4:

    2. Set the left side equal to it:

    Answer

    k = 3/2. With any other k the graph has a jump at 2.

  9. A limit at infinity 2 steps

    Find the limit of (3x² + 1)/(2x² − x) as x → ∞.

    Show solution
    1. Divide top and bottom by the highest power of x in the bottom, x²:

    2. Every term with x underneath goes to 0:

    Answer

    The limit is 3/2, the ratio of the leading coefficients. The graph has the horizontal asymptote y = 3/2.

  10. Proving that sin x / x → 1 with a δ for every ε 5 steps

    Prove that sin x / x → 1 by producing a δ for every ε, and predict the table's two usable rows before reading them. This is f(x) = sin(x)/x with x → 0.

    Open this problem in the tool

    Show solution
    1. Dividing the sine series by x is legal for every x ≠ 0, which is the only place a limit ever looks. What comes out has nothing but even powers of x in it, and that is why the left and right columns of the table carry identical digits on every row.

    2. Two terms are enough here: the x⁴ term is already down at 8.33 × 10⁻⁷, too small to touch the sixth decimal.

    3. Move in by a factor of ten and the gap to 1 shrinks by a factor of a hundred. The approach is quadratic in x, which is a much stronger claim than “the limit is 1” — and the table's own two rows are enough to establish it.

    4. Evidence is not proof, so bound the whole tail at once. For |x| ≤ 1 the series alternates with shrinking terms, so everything after the 1 is smaller in size than the first term dropped, and that term is x²/6. Turning the inequality around makes δ a formula rather than a search.

    5. Read what the square root costs. Tightening ε by a factor of a million buys back only a factor of a thousand in x.

    Answer

    The table prints 0.998334 at x = 0.1 and 0.999983 at x = 0.01, and both were written out here from four terms of a series before the panel was consulted. What δ = √(6ε) adds is certainty: name any tolerance and the x that meets it is one square root away, so no amount of further zooming can turn up a surprise. It also explains why the table runs out of things to say. Its rows step x down by ten while the gap falls by a hundred, so by the third row that gap is 1.6667 × 10⁻⁷ — under half a unit in the sixth decimal — and that row and the five below it all print 1.000000, though the value at x = 0.001 is 0.99999983. Keep the gap rather than discarding it: divide the first row's 1.665834 × 10⁻³ by 0.01 and you get 0.16658, which is 1/6. A second limit sits underneath the famous one, and the series named it in advance.

Learning path

Why everything looks straight up close

References (1)