Visual Tools
Calculators
Tables
Mathematical Keyboard
Converters
Other Tools


Limit Explorer - Interactive Visualizer

How to use
  1. The Function picker on the left lists seven families under six headings, from Continuous (control) to One-sided; tapping one loads it with its own cc and resets ε\varepsilon to 0.50.5. Learn more about the discontinuity zoo
  2. The Display checkboxes f(x), L⁻, L⁺, x = c and approach each hide or show one layer, and the legend under the plot lists only the layers that are on; Accent color under Appearance recolours the highlights. Learn more about the display toggles
  3. The distance ε slider under Parameters sets how far from cc the two samples are taken, on a logarithmic scale down to ε=0.001\varepsilon = 0.001; Reset returns it to 0.50.5. Learn more about the epsilon slider
  4. The plot draws ff as a solid blue curve, the limit values as dashed light-blue lines, x=cx = c as a dashed grey line, and the two samples as dots at c−εc - \varepsilon and c+εc + \varepsilon. Learn more about getting started
  5. The From the left and From the right cards print xx, f(x)f(x) and the target L−L^- or L+L^+; shrink ε\varepsilon and the f(x)f(x) row closes in on the target. Learn more about the approach bar
  6. The Limit at x = c box shows three cards, Left limit L⁻, Right limit L⁺ and Two-sided limit, each holding a number, +∞+\infty, −∞-\infty or DNE. Learn more about the three limit cards
  7. Under the cards, the first verdict row tags the limit, for example limit exists or DNE (jump), and the second gives f(c)f(c) and tags the point, for example continuous or removable. Learn more about the two verdict rows
  8. The S, M, L and XL buttons set the plot size, the Applied strip repeats cc and ε\varepsilon, and the info panel tabs Explanation and Concepts give the live reading and the theory. Learn more about the plot size, applied strip and info panel


Holef(x) = (x² − 1) / (x − 1)
×
880 × 460
f(x)L⁻ and L⁺x = capproach
From the leftx → c⁻
x =0.5
f(x) =1.5
↓ as ε → 0
L⁻ =2
From the rightx → c⁺
x =1.5
f(x) =2.5
↓ as ε → 0
L⁺ =2
Limit at x = cc = 1
Left limit L⁻
2
lim x→c⁻ f(x)
Right limit L⁺
2
lim x→c⁺ f(x)
Two-sided limit
2
L⁻ = L⁺
Limit exists. L⁻ and L⁺ agree at 2, so lim x→1 f(x) = 2.limit exists
f(c) = undefined. The limit exists but f isn’t defined at c. Set f(c) = 2 and the function becomes continuous.removable
Appliedc=1ε=0.5L⁻ = L⁺ ⇒ limit exists





Key Terms



Key Terms

Limit at a point — the value f(x)f(x) approaches as xx approaches cc, written lim⁡x→cf(x)\lim_{x \to c} f(x). The limit is about the approach, not the value f(c)f(c) itself.

Left limit — L−=lim⁡x→c−f(x)L^{-} = \lim_{x \to c^{-}} f(x). The value approached from values smaller than cc.

Right limit — L+=lim⁡x→c+f(x)L^{+} = \lim_{x \to c^{+}} f(x). The value approached from values larger than cc.

Two-sided limit — exists exactly when L−L^{-} and L+L^{+} are both finite and equal. The common value is the limit.

DNE — abbreviation for does not exist. Used for limits when the one-sided limits disagree, one is infinite, or the function oscillates.

Removable discontinuity — the two-sided limit exists but f(c)f(c) is either undefined or different from the limit. Patching f(c)f(c) would restore continuity.

Vertical asymptote — a value of cc where at least one one-sided limit is +∞+\infty or −∞-\infty.

Getting Started

The page opens with the Hole family f(x)=(x2−1)/(x−1)f(x) = (x^2 - 1)/(x - 1) already loaded, centered at c=1c = 1. You see:

• The blue curve of ff, with a gap at the hole.

• A dashed light-blue horizontal line at L−=L+=2L^{-} = L^{+} = 2.

• A dashed gray vertical line at x=cx = c.

• Two dots at (c−ε,f(c−ε))(c - \varepsilon, f(c - \varepsilon)) and (c+ε,f(c+ε))(c + \varepsilon, f(c + \varepsilon)) that move when you drag the ε\varepsilon slider.

Below the graph, the From the left and From the right cards report the numerical values approaching L−L^{-} and L+L^{+} as ε\varepsilon shrinks. The card below that gives the two-sided limit verdict and the continuity classification.

To explore quickly, switch families in the left panel — the discontinuity zoo covers every canonical case you'd meet in a first calculus course.

The Discontinuity Zoo

DemoPicking a family
Step 0 of 5
Seven function families are organized into six groups:

Continuous (control):

• Quadratic — f(x)=x2f(x) = x^2 at c=1c = 1. Everything agrees; the baseline.

Removable:

• Hole — (x2−1)/(x−1)(x^2 - 1)/(x - 1) at c=1c = 1. Limit exists; f(c)f(c) is undefined.

Jump:

• Step — piecewise xx on the left and x+1x + 1 on the right of c=0c = 0. Finite one-sided limits, different values.

Infinite:

• 1/x² — both one-sided limits go to +∞+\infty at c=0c = 0.

• 1/x — left limit goes to −∞-\infty, right to +∞+\infty at c=0c = 0.

Oscillating:

• sin(1/x) — neither one-sided limit exists at c=0c = 0. The function bounces infinitely fast.

One-sided:

• Square root — x\sqrt{x} at c=0c = 0. Only defined on the right; the left limit is undefined.

Quadratic: the Control Case

f(x)=x2f(x) = x^2 centered at c=1c = 1 is the family with nothing wrong with it, and it is here to give the other six something to be compared against.

At ε=0.5\varepsilon = 0.5 the tool samples f(0.5)=0.25f(0.5) = 0.25 on the left and f(1.5)=2.25f(1.5) = 2.25 on the right. Both one-sided limits are 11, f(1)=1f(1) = 1, and the single LL line passes straight through the curve.
-3 -2 -1 1 2 3 4 5 -1 1 2 3 4 x y f(x) = x²
Quadratic, frozen at c = 1, ε = 0.5

One L line at height 1, with the f(c) marker sitting on it and the two approach markers straddling c at 0.25 and 2.25. Everything agrees - this is the case with nothing to diagnose.

Shrink ε\varepsilon and the two sampled values close in on 11 from either side. That is the definition being enacted: the limit is the number the function values approach, and here they approach it from both directions at once.

Because f(c)f(c) also equals that number, this family is continuous at cc as well. Limit and continuity coincide in the easy case — the six families that follow are exactly the ways they can come apart.

Hole: the Limit Exists Without the Value

f(x)=x2−1x−1f(x) = \frac{x^2 - 1}{x - 1} at c=1c = 1. The expression cancels to x+1x + 1 everywhere except at x=1x = 1, where it reads 00\frac{0}{0} and is undefined.

At ε=0.5\varepsilon = 0.5: f(0.5)=1.5f(0.5) = 1.5, f(1.5)=2.5f(1.5) = 2.5. Both one-sided limits are 22, and the LL line is drawn at that height — but no f(c)f(c) marker appears on it, because there is no value there.
-3 -2 -1 1 2 3 4 5 -1 1 2 3 4 x y f(x) = (x² − 1) / (x − 1)
Hole, frozen at c = 1, ε = 0.5

The L line is drawn at 2 and the approach markers close in on it from 1.5 and 2.5, but the line carries no f(c) marker: the value at c is missing while the limit is not.

This family makes the sharpest point in the whole tool: the limit does not care what happens at cc. Its definition only involves xx near cc with x≠cx \neq c, so the missing value is irrelevant to it. The limit is 22 regardless.

That is why the verdict rows split the way they do. The limit row passes; the continuity row fails. Filling the hole with f(1)=2f(1) = 2 would repair continuity without changing the limit at all.

Step: One-Sided Limits That Disagree

A piecewise function — f(x)=xf(x) = x below zero, f(x)=x+1f(x) = x + 1 from zero up — centered at c=0c = 0.

At ε=0.5\varepsilon = 0.5: f(−0.5)=−0.5f(-0.5) = -0.5 approaching from the left, f(0.5)=1.5f(0.5) = 1.5 from the right. The two LL lines sit at 00 and 11, and shrinking ε\varepsilon drives the samples toward those two different numbers.
-4 -3 -2 -1 1 2 3 4 -4 -3 -2 -1 1 2 3 4 x y f(x) = x for x<0; x+1 for x≥0
Step, frozen at c = 0, ε = 0.5

Two L lines, at 0 and at 1, with an open endpoint below and a closed one above. The approach markers at -0.5 and 1.5 are heading for different heights.

Both one-sided limits exist here, which is what separates a jump from the wilder failures below. What fails is the requirement that they agree: lim⁡x→0f(x)\lim_{x \to 0} f(x) exists only when L−=L+L^- = L^+, and 0≠10 \neq 1.

The gap L+−L−=1L^+ - L^- = 1 is the jump's size, and it is a fixed property of the two pieces. No choice of f(0)f(0) can close it, which is what makes a jump irreparable while a hole is not.

1/x²: Both Sides Blow Up the Same Way

f(x)=1/x2f(x) = 1/x^2 at c=0c = 0 has a vertical asymptote, and the function grows without bound on both sides.

At ε=0.5\varepsilon = 0.5: f(−0.5)=4f(-0.5) = 4 and f(0.5)=4f(0.5) = 4 — equal, and both already large. Halve ε\varepsilon and both become 1616; halve again and they are 6464. No LL lines are drawn at all, because there is no finite height to draw them at.
-4 -3 -2 -1 1 2 3 4 -4 -3 -2 -1 1 2 3 4 x y f(x) = 1/x²
1/x², frozen at c = 0, ε = 0.5

No L lines at all - there is no finite height to draw one at. Both approach markers read 4 and climb together as ε shrinks.

The tool records this as L−=L+=+∞L^- = L^+ = +\infty, and that notation deserves care. It describes how the limit fails, not a value it takes. In the strict sense the limit does not exist, because "exists" means converging to a real number.

Some texts write lim⁡x→01/x2=+∞\lim_{x \to 0} 1/x^2 = +\infty as shorthand for exactly this behaviour, which is a legitimate convention as long as everyone understands it is a statement about unbounded growth. See one-sided vs two-sided for how the same distinction plays out with finite values.

1/x: Infinite in Opposite Directions

f(x)=1/xf(x) = 1/x at c=0c = 0 also has an asymptote, but the two sides run opposite ways.

At ε=0.5\varepsilon = 0.5: f(−0.5)=−2f(-0.5) = -2 and f(0.5)=2f(0.5) = 2. Shrink ε\varepsilon and the left sample dives toward −∞-\infty while the right climbs toward +∞+\infty.
-4 -3 -2 -1 1 2 3 4 -4 -3 -2 -1 1 2 3 4 x y f(x) = 1/x
1/x, frozen at c = 0, ε = 0.5

The same missing L lines, but the two branches leave the frame in opposite directions. The approach markers read -2 and +2 and separate further with every reduction of ε.

Compare this with 1/x21/x^2 directly. There, both sides agreed on their manner of failure; here they do not even do that. The tool reports L−=−∞L^- = -\infty and L+=+∞L^+ = +\infty, which is a jump and an infinity at once.

The practical consequence shows up in improper integrals and in graphing: the curve leaves the frame downward on one side and upward on the other, so the asymptote separates two branches that share no common value or common direction.

sin(1/x): Oscillation With No Limit at All

f(x)=sin⁡(1/x)f(x) = \sin(1/x) at c=0c = 0 is the family where neither one-sided limit exists — and not because the function grows too large. It stays neatly inside [−1,1][-1, 1] the whole time.

At ε=0.5\varepsilon = 0.5 the samples read f(−0.5)=−0.91f(-0.5) = -0.91 and f(0.5)=0.91f(0.5) = 0.91. Those numbers are honest but useless: pick a slightly different ε\varepsilon and they will be entirely different, because as x→0x \to 0 the argument 1/x1/x runs off to infinity and the sine cycles faster and faster.
-4 -3 -2 -1 1 2 3 4 -1 1 x y f(x) = sin(1/x)
sin(1/x), frozen at c = 0, ε = 0.5

The curve stays inside [-1, 1] yet packs more and more oscillations toward c. The two approach markers read -0.91 and 0.91 here, and would read something quite different at any other ε.

This is the cleanest demonstration that "bounded" is not "convergent". Between any two points, however close to zero, the function still completes infinitely many full oscillations, taking every value in [−1,1][-1, 1] along the way. There is no single number the values settle toward.

It also shows why sampling alone can never establish a limit. Two sample points always produce two numbers; whether those numbers mean anything depends on the function, and here they do not. The tool reports L−L^- and L+L^+ as DNE rather than picking a value from the noise.

Square Root: a Limit From One Side Only

f(x)=xf(x) = \sqrt{x} at c=0c = 0 is defined only for x≥0x \geq 0, so the left half of the graph is simply empty.

At ε=0.5\varepsilon = 0.5 the right sample reads f(0.5)=0.71f(0.5) = 0.71, and the left sample cannot be taken at all — f(−0.5)f(-0.5) is undefined. The tool reports L+=0L^+ = 0 and L−L^- as DNE.
-4 -3 -2 -1 1 2 3 4 -1 1 2 3 x y f(x) = √x
Square root, frozen at c = 0, ε = 0.5

Nothing is drawn left of c, so only one approach marker exists, at 0.71. The closed endpoint at the origin is where the right-hand limit lands.

The two-sided limit therefore does not exist, but the reason is different in kind from the previous families. Nothing misbehaves; there is simply no left side to approach from.

That is why one-sided limits are worth having as their own notion. lim⁡x→0+x=0\lim_{x \to 0^+} \sqrt{x} = 0 is a perfectly good statement, and it is exactly what justifies calling x\sqrt{x} continuous on [0,∞)[0, \infty) — continuity at an endpoint is defined using the one-sided limit, because that is the only one available.

The Epsilon Slider

DemoShrinking ε
Step 0 of 5
The distance ε slider controls how close to cc we probe. As you drag ε\varepsilon toward zero:

• The two approach dots move toward the vertical line at cc.

• The numbers in the From the left and From the right cards march toward L−L^{-} and L+L^{+}.

• The marker positions on the graph close in on the limit lines.

The slider is on a logarithmic scale, ranging from about ε=2\varepsilon = 2 (the top of the slider is 100.310^{0.3}) down to ε=10−3\varepsilon = 10^{-3}. Each tick is roughly an order of magnitude, so very small values of ε\varepsilon are easy to reach precisely.

This mirrors the formal definition of a limit: for the limit to equal LL, the value f(x)f(x) must get arbitrarily close to LL when xx gets sufficiently close to cc. Shrinking ε\varepsilon is the visual equivalent of "as close as you like".

The Reset button next to Parameters restores the default ε=0.5\varepsilon = 0.5.

The Approach Bar

Two cards below the graph track the numerical approach side by side.

From the left (x→c−x \to c^{-}) shows:

• x=c−εx = c - \varepsilon, the current probing position on the left.

• f(x)f(x) at that position.

• L−L^{-}, the left limit value (the target).

From the right (x→c+x \to c^{+}) shows the same triple for the right side.

The middle "↓\downarrow as ε→0\varepsilon \to 0" arrow is a reminder that the f(x)f(x) row is the dynamic quantity converging to the LL row below it. Watch the digits stabilize as ε\varepsilon shrinks.

This is the calculator-style version of the geometric picture above. When the limit exists, both f(x)f(x) rows converge to the same number. When one of them fails to settle (oscillating family) or runs off to infinity, the limit does not exist.

The Three Limit Cards

DemoLimit cards and verdicts
Step 0 of 5
The boxed card below the approach bar displays the analytic limit values for the current family:

• Left limit L⁻ — the analytic value of lim⁡x→c−f(x)\lim_{x \to c^{-}} f(x). May be a finite number, +∞+\infty, −∞-\infty, or DNE.

• Right limit L⁺ — same for lim⁡x→c+f(x)\lim_{x \to c^{+}} f(x).

• Two-sided limit — the common value when L−L^{-} and L+L^{+} agree and are finite, otherwise DNE.

Reading the row tells you exactly which kind of behavior is happening at cc:

• Both finite, equal → limit exists.

• Both finite, different → jump discontinuity.

• Either infinite → infinite discontinuity.

• Either DNE (analytical, not numerical) → oscillation or undefined-on-a-side.

These are the analytic values the approach bar should be converging to as ε\varepsilon shrinks.

The Two Verdict Rows

Below the three cards are two verdict rows that compress the analysis into plain language.

Limit verdict — names the limit's status with a tag:

• limit exists — both one-sided limits agree on a finite value.

• DNE (jump) — finite but different one-sided limits.

• DNE (infinite) — at least one limit is ±∞\pm\infty.

• DNE (oscillating) — neither one-sided limit settles, like sin⁡(1/x)\sin(1/x) near 00.

• DNE (one-sided only) — function only defined on one side of cc.

Continuity verdict — names the discontinuity at cc:

• continuous — limit exists, f(c)f(c) defined, and they agree.

• removable — limit exists but f(c)f(c) doesn't match (or is undefined). Patching f(c)f(c) fixes it.

• jump, infinite, essential — the unpatchable cases. No single value of f(c)f(c) can repair the discontinuity.

Display Toggles

DemoDisplay, plot size and tabs
Step 0 of 5
The Display section in the left panel lets you hide layers when one gets in the way:

• f(x) — toggles the function curve. Off, just the limit lines and approach markers remain.

• L⁻, L⁺ — toggles the horizontal limit reference lines and the hollow circles at (c,L±)(c, L^{\pm}). Off, the picture loses its analytic target.

• x = c — toggles the dashed vertical line at cc. Off, the location of cc is implied only by the markers and the family info.

• approach — toggles the two moving probe dots at (c±ε,f(c±ε))(c \pm \varepsilon, f(c \pm \varepsilon)). Off, the picture is static; the slider still controls the approach card numbers.

The Accent color picker at the bottom recolors the active highlight throughout the tool — useful for screenshots or personal preference.

Plot Size, Applied Strip and Info Panel

The S, M, L and XL buttons above the plot set its size, and the readout next to Maximize prints it: S is 500×400500 \times 400, M 700×550700 \times 550, L 900×850900 \times 850 and XL 1100×8501100 \times 850. The page opens at 880×460880 \times 460, which is none of the four. The plot never grows wider than its column, so on most screens the buttons mainly change its height. The curve, the limit lines and the markers are redrawn at the new size; the numbers below the plot do not change.

The Applied strip at the bottom of the middle column repeats the two values the picture depends on: cc, fixed by the family, and ε\varepsilon, set by the slider. Its last tag, L⁻ = L⁺ ⇒ limit exists, is the rule itself and reads the same for every family; the verdict for the current family is in the two verdict rows above it.

The info panel on the right has two tabs. Explanation is the live one: the family's description, its equation and cc, the current samples f(c−ε)f(c - \varepsilon) and f(c+ε)f(c + \varepsilon), both one-sided limits, the verdict, and a closing note that links to the section on that family. Concepts is fixed text on one-sided and two-sided limits. For the definition behind both, see what is a limit.

What Is a Limit

The limit of a function ff as xx approaches cc is the single value (if any) that f(x)f(x) gets arbitrarily close to as xx gets sufficiently close to cc. Written:

lim⁡x→cf(x)=L\lim_{x \to c} f(x) = L


The crucial point is that the limit is about the approach, not the destination. The actual value f(c)f(c) — if it exists — is irrelevant to the limit. The limit asks only what value f(x)f(x) is heading toward as xx closes in on cc.

Formally (the ε\varepsilon–δ\delta definition): for every ε>0\varepsilon > 0 there exists a δ>0\delta > 0 such that ∣f(x)−L∣<ε|f(x) - L| < \varepsilon whenever 0<∣x−c∣<δ0 < |x - c| < \delta. This formalizes "arbitrarily close" and "sufficiently close" with two tolerances chained together.

For the full theoretical treatment, see the limits page.

One-Sided vs Two-Sided

Approaching cc from values smaller than cc gives the left limit L−=lim⁡x→c−f(x)L^{-} = \lim_{x \to c^{-}} f(x). From values larger than cc gives the right limit L+=lim⁡x→c+f(x)L^{+} = \lim_{x \to c^{+}} f(x).

The two-sided limit exists if and only if both one-sided limits exist, are finite, and are equal:

lim⁡x→cf(x)=L  ⟺  L−=L+=L\lim_{x \to c} f(x) = L \iff L^{-} = L^{+} = L


So the two-sided limit fails to exist in three ways:

• L−L^{-} and L+L^{+} are both finite but unequal — a jump.

• At least one of L−L^{-}, L+L^{+} is infinite — an infinite limit.

• At least one of L−L^{-}, L+L^{+} fails to exist at all — an oscillating or one-sided case.

The tool's discontinuity zoo demonstrates each of these failure modes alongside the success case.

For deeper coverage of one-sided limits, see the one-sided limits page.