The idea: f(x) gets as close to L as you like when x is close enough to a

A limit describes what f does near a point a, not at it. We write limx→a f(x) = L when the values f(x) can be kept as close to L as anyone asks, just by taking x close enough to a. The value f(a) itself plays no part: it may be different, or missing.

The curve y = x squared near a = 1. An orange horizontal band runs from L minus epsilon = 0.5 to L plus epsilon = 1.5. A green vertical window runs from a minus delta to a plus delta, with delta about 0.22. Where they cross there is a box, and the curve enters it through the left side and leaves through the right side, so inside the window the curve stays inside the band.
For ε = 0.5 the window δ ≈ 0.22 works: every x in the window gives an f(x) inside the band.

The ε–δ definition

"As close as you like" is made exact with two numbers. Someone picks a tolerance ε > 0: the orange band from L − ε to L + ε. You must answer with a δ > 0: the green window from a − δ to a + δ, such that

0 < |x − a| < δ  ⟹  |f(x) − L| < ε

If you can answer every ε, the limit is L. The "0 <" leaves out x = a itself. Each Shrink ε halves the band and the page draws the widest window that still works. For f(x) = x² at a = 1 the right side is the tighter one, so δ = √(1 + ε) − 1:

εδ = √(1 + ε) − 1δ / ε
10.4140.41
0.50.2250.45
0.250.1180.47
0.1250.06070.49
0.06250.03080.49

A smaller ε forces a smaller δ. Here δ is about ε / 2 because the slope of x² at 1 is 2: a steep curve needs a narrow window. (Demo: ε–δ for x² at a = 1)

One-sided limits and the table

Approach a sets x = a − h (from the left) and x = a + h (from the right) for h = 0.5, 0.1, 0.01, 0.001, 0.0001, and writes f in two columns. If the left column settles on a number, that is the left limit limx→a⁻ f(x); the right column gives the right limit limx→a⁺ f(x). The limit exists exactly when both exist and are equal.

hx² at 1−hx² at 1+hstep at 1−hstep at 1+h
0.50.252.250.52.5
0.10.811.210.92.1
0.010.98011.02010.992.01
→1112

A table is evidence, not proof: it only samples a few x. sin(1/x) shows why. Its table looks random, and a cleverer choice of h could even make it look constant (h = 1/(2πk) gives 0 every time).

Four ways a limit fails (or f(a) spoils it)

Four small graphs. Removable hole: a line with an open circle at height 2 and a filled dot above it at height 3; the limit 2 exists but f(1) = 3. Jump: a lower line ending in an open circle and an upper line starting at a filled dot; left 1 is not right 2. Infinite spike: 1 over x squared rising on both sides of 0; f goes to plus infinity. Oscillation: sin(1 over x) wiggling faster and faster near 0; it never settles.
Only the hole has a limit; there the trouble is f(a). The jump, the spike and the oscillation have no limit at all.
  • Removable hole. (x² − 1)/(x − 1) is x + 1 for every x ≠ 1, so both sides go to 2. The extra point f(1) = 3 sits above the hole and the ε–δ window ignores it. (Demo: removable hole)
  • Jump. x for x < 1 and x + 1 for x ≥ 1: left limit 1, right limit 2. With L = 1.5, ε = 1 still works (δ = 0.5), but ε = 0.5 fails for every δ: no band thinner than the jump can hold both sides. (Demo: jump)
  • Infinite spike. 1/x² gives 4, 100, 10⁴, 10⁶, 10⁸ as h shrinks. We write lim = +∞, but that means "no finite limit": every band around any L is left behind. (Demo: infinite spike) The line x = 0 is then a vertical asymptote; see Types of Asymptotes.
  • Oscillation. sin(1/x) hits 1 at x = 1/(π/2 + 2πk) and −1 halfway between, for every k. Every window around 0 holds both, so no L is within ε < 1 of all the values. (Demo: oscillation)

Continuity: three conditions

f is continuous at a when limx→a f(x) = f(a). Spelled out, that is three checks, and Continuous? runs them in order:

  1. f(a) is defined;
  2. limx→a f(x) exists (left = right, finite);
  3. the two are equal.
f at a1. f(a)2. limit3. equalverdict
x² at 11 ✓1 ✓✓continuous
hole at 13 ✓2 ✓✗removable: set f(1) = 2
step at 12 ✓1 ≠ 2 ✗✗jump
1/x² at 0none ✗+∞ ✗✗infinite
sin(1/x) at 0none ✗none ✗✗oscillating

Only the removable kind can be repaired by changing one value. Polynomials, eˣ, sin and cos are continuous everywhere, and sums, products and compositions of continuous functions are continuous, so most limits are found by just plugging in a. That is what makes the hole interesting: plugging in gives 0/0, and the limit has to be found another way (here, by cancelling x − 1).

Where limits come next

Continuity is what makes bisection work: a continuous f that changes sign must cross zero, see Root Finding: Bisection vs Newton vs Secant.

What the page leaves out

The page computes δ from exact formulas for these five functions instead of proving it in general. Limits at infinity (x → ∞), the limit laws, the squeeze theorem (which proves sin x / x → 1 and x·sin(1/x) → 0), L'Hôpital's rule, uniform continuity, and limits of functions of several variables are not covered. The table uses double-precision arithmetic, so the hole's values carry rounding in the last digits.