Mathematics · Article
The idea of a limit
Compare outputs near an input with the output at that input. Read holes, jumps and domain endpoints, turn closeness into an epsilon–delta guarantee, and distinguish a finite table from a proof.
Back to MathematicsAfter reading, you can
- Distinguish the approached input, nearby permitted inputs, approached output and value at the point.
- Read left and right approaches, open and filled graph markers, and limits relative to a declared domain.
- Explain the order of the epsilon–delta conditions and prove simple limit claims for every permitted nearby input.
- Identify a jump, an isolated input and a misleading finite table without treating samples as a general proof.
What happens just before and just after input one?
A rule doubles a real input and adds one: f(x) = 2x+1. Inputs 0.5 and 1.5 give outputs 2 and 4. Inputs 0.9 and 1.1 give 2.8 and 3.2. Inputs 0.99 and 1.01 give 2.98 and 3.02. The input gaps from 1 shrink, and both sets of outputs approach 3.
- ━ Left branch
- ┄ Right branch
- Filled: actual value
- Hollow: omitted value
The graph window is finite, with linear axes and labelled scales. Curve strokes illustrate the exact rules; the square and square-root strokes join sampled coordinates. Tables and formulas retain their actual values.
| Input x | Side | Distance |x−a| | Output |
|---|---|---|---|
| 1/2 | Left | 1/2 | 2 |
| 3/2 | Right | 1/2 | 4 |
| 3/4 | Left | 1/4 | 5/2 |
| 5/4 | Right | 1/4 | 7/2 |
| 7/8 | Left | 1/8 | 11/4 |
| 9/8 | Right | 1/8 | 13/4 |
| 15/16 | Left | 1/16 | 23/8 |
| 17/16 | Right | 1/16 | 25/8 |
The question is about every permitted input sufficiently near 1, rather than only those six inputs. Here the exact output distance from 3 is twice the input distance from 1: |f(x)−3| = 2|x−1|. This relationship lets us control all nearby outputs at once.
Write lim as x→1 of f(x) = 3, or limₓ→₁ f(x) = 3. The input approaches 1 and the output approaches 3; they are different numbers with different roles. The arrow does not instruct us to replace every nearby input by exactly 1.
Use functions and distances before formal proof
The lesson Functions, domains and ranges prepares function notation and permitted inputs. The lesson Inequalities, intervals and absolute value explains |x−a| as distance and strict interval endpoints. Revisit Reading graphs and spotting misleading scales for labelled axes and the difference between a graph window and a complete claim.
For the cancellation example, Polynomials, factoring and zeros prepares factoring a difference of squares. We factor this expression again below and keep its original excluded input, so the limit idea does not require a general limit-law theorem.
On a first reading, compare the nearby-value tables, the hole and the jump. Read epsilon as a requested output accuracy and delta as a sufficient input accuracy. Return to the formal proofs after practising distance inequalities. The proofs here use the stated function rules and distance inequalities; later limit laws and continuity develop more systematic methods.
There must be other permitted inputs arbitrarily close
Let D denote the domain of a real-valued function and let a be the approached real input. We study a limit only when D contains inputs other than a arbitrarily close to a. Precisely, every positive radius r contains some x in D with 0 < |x−a| < r. Such an a is called an accumulation point, or cluster point, of the domain.
The point a itself may belong to D or may be excluded. Removing that one point does not remove the nearby approach. By contrast, if D = {0,1,2}, input 1 is isolated: radius 0.5 contains no other permitted input. We do not assign a limit at this isolated input under our convention.
The domain contains only 0,1,2. The punctured interval 1/2 < x < 3/2 with x ≠ 1 contains none of them, so 1 is not an accumulation point.
This condition prevents an empty test from falsely accepting every proposed output. Without it, at an isolated input a sufficiently small neighbourhood would have no x to test, so every implication about nearby outputs would be automatically true.
The same nearby rule can have different values at the point
For x ≠ 1, define h(x) = (x²−1)/(x−1). Factor the numerator as (x−1)(x+1). Cancelling the nonzero factor gives h(x) = x+1 for every permitted input, but h(1) remains undefined. Nearby outputs approach 2 because |h(x)−2| = |x−1|.
An open circle at (1,2) records the excluded value of this graph. Now define g(x) = x+1 for x ≠ 1 and g(1) = 4. Its graph has the same hole at (1,2) and a filled point at (1,4). Its limit at 1 is still 2: changing only g(1) changes none of the inputs tested in the limit.
Hole: (x²−1)/(x−1)
- ━ Left branch
- ┄ Right branch
- Filled: actual value
- Hollow: omitted value
The graph window is finite, with linear axes and labelled scales. Curve strokes illustrate the exact rules; the square and square-root strokes join sampled coordinates. Tables and formulas retain their actual values.
| Input x | Side | Distance |x−a| | Output |
|---|---|---|---|
| 1/2 | Left | 1/2 | 3/2 |
| 3/2 | Right | 1/2 | 5/2 |
| 3/4 | Left | 1/4 | 7/4 |
| 5/4 | Right | 1/4 | 9/4 |
| 7/8 | Left | 1/8 | 15/8 |
| 9/8 | Right | 1/8 | 17/8 |
| 15/16 | Left | 1/16 | 31/16 |
| 17/16 | Right | 1/16 | 33/16 |
Changed centre: x+1 except at 1
- ━ Left branch
- ┄ Right branch
- Filled: actual value
- Hollow: omitted value
The graph window is finite, with linear axes and labelled scales. Curve strokes illustrate the exact rules; the square and square-root strokes join sampled coordinates. Tables and formulas retain their actual values.
| Input x | Side | Distance |x−a| | Output |
|---|---|---|---|
| 1/2 | Left | 1/2 | 3/2 |
| 3/2 | Right | 1/2 | 5/2 |
| 3/4 | Left | 1/4 | 7/4 |
| 5/4 | Right | 1/4 | 9/4 |
| 7/8 | Left | 1/8 | 15/8 |
| 9/8 | Right | 1/8 | 17/8 |
| 15/16 | Left | 1/16 | 31/16 |
| 17/16 | Right | 1/16 | 33/16 |
Compare the hole with the changed centre. The nearby curve and its limit agree in both; only the actual value at the centre differs.
A filled point shows an actual function value, not automatically the approached output. For the unmodified rule x+1, the point (1,2) is filled and the limit is also 2. A limit can equal the value at the point, differ from it, or exist where that value is undefined.
Both directions must agree when both directions are available
Approaching a from the left means using domain inputs x < a; approaching from the right means using x > a. The notations x→a⁻ and x→a⁺ record these restrictions. The superscripts describe the input side, not a positive or negative output.
Define j(x) = −1 for x < 0 and j(x) = 1 for x ≥ 0. Every negative nearby input gives −1 and every positive nearby input gives 1. The left limit at 0 is −1 and the right limit is 1. No single output describes both approaches, so the two-sided limit does not exist.
- ━ Left branch
- ┄ Right branch
- Filled: actual value
- Hollow: omitted value
The graph window is finite, with linear axes and labelled scales. Curve strokes illustrate the exact rules; the square and square-root strokes join sampled coordinates. Tables and formulas retain their actual values.
| Input x | Side | Distance |x−a| | Output |
|---|---|---|---|
| −1/2 | Left | 1/2 | −1 |
| 1/2 | Right | 1/2 | 1 |
| −1/4 | Left | 1/4 | −1 |
| 1/4 | Right | 1/4 | 1 |
| −1/8 | Left | 1/8 | −1 |
| 1/8 | Right | 1/8 | 1 |
| −1/16 | Left | 1/16 | −1 |
| 1/16 | Right | 1/16 | 1 |
When permitted inputs approach from both sides, a two-sided limit L implies that each restricted approach has the same limit L. Conversely, if both one-sided limits are L, choose the smaller of their two sufficient input radii. Every permitted nearby input different from a is on one side, so that radius controls both.
This agreement requires both sides to have arbitrarily close permitted inputs. Do not report a missing side as a second limit, or confuse no two-sided limit with an undefined function value: j(0) = 1 is defined.
At a domain endpoint, say which approach is meant
For s(x) = √x with domain x ≥ 0, there are permitted positive inputs arbitrarily close to 0, but no negative ones. Its right-hand limit at 0 is 0. Its value s(0) = 0 is a separate, defined value.
- ━ Left branch
- ┄ Right branch
- Filled: actual value
- Hollow: omitted value
No permitted left branch
The graph window is finite, with linear axes and labelled scales. Curve strokes illustrate the exact rules; the square and square-root strokes join sampled coordinates. Tables and formulas retain their actual values.
| Input x | Side | Distance |x−a| | Output |
|---|---|---|---|
| −1/2 | Left | 1/2 | Outside domain |
| 1/2 | Right | 1/2 | ≈ 0.707107 |
| −1/4 | Left | 1/4 | Outside domain |
| 1/4 | Right | 1/4 | ≈ 0.5 |
| −1/8 | Left | 1/8 | Outside domain |
| 1/8 | Right | 1/8 | ≈ 0.353553 |
| −1/16 | Left | 1/16 | Outside domain |
| 1/16 | Right | 1/16 | ≈ 0.25 |
There are no permitted negative inputs for √x. Positive inputs approach zero, and their outputs approach zero. The filled origin records s(0) = 0 separately from that guarantee.
In this lesson the general definition takes x only from D. Under that domain-relative convention, limₓ→₀ √x = 0 on D = [0,∞) too. Some elementary courses reserve the phrase two-sided limit for points approachable from both sides; under that wording, state the right-hand limit here instead. The permitted inputs and mathematical guarantee are the same.
For any positive output tolerance epsilon, 0 < x < epsilon² implies 0 < √x < epsilon. Thus the endpoint claim controls all permitted sufficiently close inputs, without pretending that √x has real values at negative inputs.
Translate closeness into two distance conditions
An output tolerance epsilon, written ε, is a positive number. The condition |f(x)−L| < ε says that the output lies strictly between L−ε and L+ε. An input radius delta, written δ, is also positive. The condition 0 < |x−a| < δ says that x lies strictly between a−δ and a+δ, with a itself removed.
This deleted interval is a punctured neighbourhood. Keep both inequalities: the lower bound excludes x = a, while the strict upper bound excludes the two boundary inputs. Only points in the declared domain are tested.
The tested real inputs are 3/4 < x < 5/4 with x ≠ 1. The two boundary inputs and the centre are excluded; intersect this set with the function’s domain.
The input strip and output band use their own axis scales. A strip that looks narrow on a picture need not numerically have the same width as the band. Open boundary markers and dashed band edges indicate strict comparisons; the graph of f remains a separate object.
One radius must control every nearby input
Let f be real-valued on D and let a be an accumulation point of D. We say limₓ→ₐ f(x) = L when: for every ε > 0, there exists δ > 0 such that, for every x in D, if 0 < |x−a| < δ, then |f(x)−L| < ε.
Read the order as a challenge and a guarantee. First any positive output accuracy ε is requested. Then choose a positive δ, which may depend on ε, the function and the fixed point a. This one δ must work for every permitted x in the punctured neighbourhood; choosing a new δ after seeing each x would change the statement.
The definition asks for arbitrarily small positive tolerances, not only a favourite accuracy such as 0.1. It does not ask that every nearby output differ from L, move monotonically toward L, or be measured at a particular speed. For the constant function f(x) = 7, every output is already 7, so any positive δ works for every ε.
Smaller positive radii preserve a valid guarantee because they test fewer inputs. There is no requirement to find the largest possible δ. A convenient sufficient choice is often easier to prove.
For a line, control output error by input error
For f(x) = 2x+1 at a = 1 with proposed L = 3, let ε > 0 be arbitrary. Choose δ = ε/2, which is positive. For every real x with 0 < |x−1| < δ, |f(x)−3| = 2|x−1| < 2δ = ε. This proves the limit for all positive tolerances.
- ━ Left branch
- ┄ Right branch
- Filled: actual value
- Hollow: omitted value
- Dashed bounds: strict tests
The graph window is finite, with linear axes and labelled scales. Curve strokes illustrate the exact rules; the square and square-root strokes join sampled coordinates. Tables and formulas retain their actual values.
| Input x | Side | Distance |x−a| | Output |
|---|---|---|---|
| 1/2 | Left | 1/2 | 2 |
| 3/2 | Right | 1/2 | 4 |
| 3/4 | Left | 1/4 | 5/2 |
| 5/4 | Right | 1/4 | 7/2 |
| 7/8 | Left | 1/8 | 11/4 |
| 9/8 | Right | 1/8 | 13/4 |
| 15/16 | Left | 1/16 | 23/8 |
| 17/16 | Right | 1/16 | 25/8 |
For ε = 0.5, the choice is δ = 0.25. Input 1.125 is inside the punctured strip and its output 3.25 has error 0.25 < 0.5. Input 1.25 is exactly at the strip boundary and has output error exactly 0.5: both strict tests exclude that boundary.
For the hole h and changed-value g, the nearby error is |x−1|, so δ = ε works. The proof uses x ≠ 1 and never substitutes the undefined h(1) or the exceptional g(1). For |x| at a = 0, the same choice δ = ε proves limit 0, even though its left and right slopes differ.
A nonlinear example needs a local bound
To prove limₓ→₁ x² = 1, factor the output error: |x²−1| = |x−1|·|x+1|. The second factor is not a constant for all real inputs, so first keep x close enough to 1 to bound it.
Let ε > 0 and choose δ = min(1, ε/3). If 0 < |x−1| < δ, then |x−1| < 1, so 0 < x < 2 and |x+1| < 3. Hence |x²−1| < 3|x−1| < 3δ ≤ ε. The strict inequality before the final bound gives the required strict output tolerance.
- ━ Left branch
- ┄ Right branch
- Filled: actual value
- Hollow: omitted value
- Dashed bounds: strict tests
The graph window is finite, with linear axes and labelled scales. Curve strokes illustrate the exact rules; the square and square-root strokes join sampled coordinates. Tables and formulas retain their actual values.
| Input x | Side | Distance |x−a| | Output |
|---|---|---|---|
| 1/2 | Left | 1/2 | 1/4 |
| 3/2 | Right | 1/2 | 9/4 |
| 3/4 | Left | 1/4 | 9/16 |
| 5/4 | Right | 1/4 | 25/16 |
| 7/8 | Left | 1/8 | 49/64 |
| 9/8 | Right | 1/8 | 81/64 |
| 15/16 | Left | 1/16 | 225/256 |
| 17/16 | Right | 1/16 | 289/256 |
The radius 1 supplies the local factor bound and ε/3 supplies the requested accuracy; the smaller radius supplies both. This is a sufficient radius rather than a claim that the quadratic behaves like a line or that δ must equal ε.
A promising table can miss the entire nearby behaviour
Define p(x) = 1 when 0 < |x| < 1/16, and p(x) = 0 otherwise, on all real inputs. The six samples x = ±1/2, ±1/4, ±1/8 all give zero. Those samples could suggest limit zero, but they never enter the inner interval.
| Input x | p(x) |
|---|---|
| −1/2 | 0 |
| −1/4 | 0 |
| −1/8 | 0 |
| −1/16 | 0 |
| −1/32 | 1 |
| 0 | 0 |
| 1/32 | 1 |
| 1/16 | 0 |
| 1/8 | 0 |
| 1/4 | 0 |
| 1/2 | 0 |
Inputs ±1/2, ±1/4 and ±1/8 give zero. Inputs ±1/32 give one. Inputs −1/16, 0 and 1/16 give zero. Every sufficiently close nonzero input gives one, so the limit is one even though p(0) is zero.
Every nonzero input with |x| < 1/16 instead gives exactly 1. Choosing δ = 1/16 works for every positive ε because |p(x)−1| = 0 there. Thus the actual limit at 0 is 1, while p(0) = 0. A smaller table reveals the change; the rule proves the conclusion.
Finite plots and computed tables are useful for predictions and error checks. They cannot alone establish a guarantee about all infinitely many nearby inputs. Rounded outputs can also appear equal while exact errors remain nonzero. Our tables use exact fractions where possible and label square-root approximations.
Failure means one tolerance defeats every radius
To disprove a proposed limit L, show some fixed ε > 0 for which every positive δ admits a permitted x with 0 < |x−a| < δ but |f(x)−L| ≥ ε. The input witness may depend on δ. One inconvenient faraway input is insufficient because a smaller radius might avoid it.
For the jump j, no real L can be its two-sided limit. A distance on a line is at most the sum of the distances through an intermediate point: |u+v| ≤ |u|+|v| follows by adding −|u| ≤ u ≤ |u| and −|v| ≤ v ≤ |v|. Thus at least one of |−1−L| and |1−L| is at least 1: otherwise their sum would be less than the distance 2 between −1 and 1. Fix ε = 1. For any δ > 0 choose x = −δ/2 or δ/2 on a side with that error. It is inside the punctured neighbourhood and defeats the tolerance.
An existing limit is unique. If distinct L and M both worked, use ε = |L−M|/3 for both and choose a permitted input different from a within the smaller radius. Its output would be within ε of both targets, implying |L−M| < 2|L−M|/3, an impossibility. The existence of that input is why we required an accumulation point.
Here L and a are finite real numbers. Approaching infinite inputs, outputs growing without bound, sequence limits and general limit laws have their own definitions or theorems later. A missing finite limit does not automatically mean an infinite limit.
Compare nearby outputs and a punctured input test
Choose a rule and an output tolerance. Use the graph and nearby table to predict whether the selected input lies in the proved punctured neighbourhood; then reveal its distance tests. Changing a value at the centre cannot change the nearby limit.
D = all real numbers
At a = 1 the output error from 3 is twice the input error; δ = ε/2 suffices.
Does the selected input belong to the domain, differ from a and lie strictly inside the sufficient radius? If it is tested, must its output be inside the tolerance band?
- ━ Left branch
- ┄ Right branch
- Filled: actual value
- Hollow: omitted value
- Dashed bounds: strict tests
The graph window is finite, with linear axes and labelled scales. Curve strokes illustrate the exact rules; the square and square-root strokes join sampled coordinates. Tables and formulas retain their actual values.
| Input x | Side | Distance |x−a| | Output |
|---|---|---|---|
| 1/2 | Left | 1/2 | 2 |
| 3/2 | Right | 1/2 | 4 |
| 3/4 | Left | 1/4 | 5/2 |
| 5/4 | Right | 1/4 | 7/2 |
| 7/8 | Left | 1/8 | 11/4 |
| 9/8 | Right | 1/8 | 13/4 |
| 15/16 | Left | 1/16 | 23/8 |
| 17/16 | Right | 1/16 | 25/8 |
The distance tests are hidden. Use the drawn rule, the labelled boundaries and the input offset to make your prediction.
The explorer uses seven exact rules and a finite set of dyadic inputs. Fraction values are exact; square-root decimal outputs are rounded to six places. The article’s algebra proves the guarantees for all real permitted nearby inputs, rather than only these samples.
Worked examples
A missing value does not remove a limit
Find the limit of (x²−1)/(x−1) as x approaches 1 and state its value at 1.
- The original domain excludes x = 1 because its denominator would be zero.
- For every x ≠ 1, factor and cancel to get x+1. Its distance from 2 is |x−1|.
- Given any ε > 0, choose δ = ε. Every permitted x with 0 < |x−1| < δ has output error less than ε.
- The proof uses only permitted nearby inputs; it does not define the missing value.
The limit is 2; the original function has no value at input 1.
The sign of a slope does not make a distance negative
Prove that −3x+2 has limit −4 as x approaches 2, and give a radius for ε = 0.6.
- The output error is |(−3x+2)−(−4)| = |−3(x−2)| = 3|x−2|.
- For arbitrary ε > 0, choose δ = ε/3. This radius is positive.
- For 0 < |x−2| < δ, the error is less than 3δ = ε.
- For ε = 0.6, δ = 0.2 suffices. Decreasing outputs still have nonnegative distances.
The limit is −4, with sufficient radius δ = ε/3; δ = 0.2 for the stated tolerance.
Combine a local bound with a requested accuracy
For x² near input 1, give a sufficient radius for output error less than 0.3, then justify the general choice.
- Use δ = min(1, ε/3). At ε = 0.3 this gives δ = 0.1.
- When 0 < |x−1| < δ ≤ 1, we have 0 < x < 2 and |x+1| < 3.
- The factorisation gives |x²−1| = |x−1||x+1| < 3|x−1| < 3δ ≤ ε.
- For input 1.05 the actual error is 1.1025−1 = 0.1025, below 0.3. The inequalities, rather than this sample, prove the guarantee.
Radius 0.1 suffices for tolerance 0.3; min(1, ε/3) proves the limit 1 for every ε > 0.
An endpoint uses only permitted inputs
State and prove the limit of √x at 0 on its real domain.
- The domain is x ≥ 0. Positive inputs approach 0 arbitrarily closely; negative ones are not permitted.
- For any ε > 0 choose δ = ε², which is positive.
- For a permitted input with 0 < |x| < δ, we have 0 < x < ε², hence |√x−0| = √x < ε.
- The right-hand limit is 0. It is also the domain-relative limit in the convention used here; there is no left-hand approach from this domain.
Right-hand and domain-relative limits are 0; s(0) = 0 is separately defined.
Try it yourself
For g(x) = x+1 when x ≠ 1 and g(1) = 4, state g(1), its limit at 1 and the two graph markers.
Show the answer and reasoning
g(1) = 4; the limit is 2. The graph has an open marker at (1,2) and a filled marker at (1,4).
The nearby rule has output error |x−1| from 2. The exceptional point is excluded from the limit test.
State the exact conditions on x for 0 < |x−2| < 0.1. Are 2, 1.9 and 2.1 included?
Show the answer and reasoning
1.9 < x < 2.1 with x ≠ 2. All three listed boundary or centre values are excluded.
The upper bound is strict and the lower bound removes the centre. The original domain must also be respected.
For f(x) = 2x+1 near 1, use ε = 0.5 and δ = 0.25. Compare inputs 0.875, 1 and 1.25.
Show the answer and reasoning
0.875 is tested and has error 0.25 < 0.5. Input 1 is excluded from the punctured test. Input 1.25 is excluded by the strict radius bound and has error 0.5.
The guarantee concerns only 0 < |x−1| < 0.25. An excluded input is not a counterexample to that implication.
Can f(x) = 7 have limit 7 even though every nearby output already equals 7? Prove it.
Show the answer and reasoning
Yes. Given any ε > 0, choose δ = 1; every tested output has error zero, which is less than ε.
A limit does not require the target to remain unattained or the error to decrease strictly.
If only j(0) is changed from 1 to 9, do the left and right limits or the missing two-sided limit change?
Show the answer and reasoning
No. The left limit stays −1 and the right limit stays 1; the two-sided limit still does not exist.
Every one-sided or punctured input test excludes x = 0, so the changed value affects neither approach.
For x² near 1, use δ = min(1, ε/3). What radii suffice for ε = 0.6 and ε = 6?
Show the answer and reasoning
For ε = 0.6, δ = 0.2. For ε = 6, δ = 1.
The minimum retains |x+1| < 3 as well as 3δ ≤ ε. A sufficient radius need not be largest.
For √x near 0 on x ≥ 0, what radius does δ = ε² give when ε = 1/4? Is x = −1/32 tested?
Show the answer and reasoning
δ = 1/16. The negative input is not tested because it is outside the real domain.
For permitted 0 < x < 1/16, √x < 1/4. Distance alone cannot override the domain.
A function is defined only at D = {0,1,2}. Is 1 an accumulation point? What fails if the nearby implication is used without this requirement?
Show the answer and reasoning
No. Radius 0.5 contains no other domain input, so every target L would satisfy the empty implication.
The accumulation-point requirement ensures actual permitted inputs arbitrarily near the point and allows a meaningful unique limit.
The rule p is 1 for 0 < |x| < 1/16 and 0 otherwise. What do samples ±1/8 show, and what is the actual limit at 0?
Show the answer and reasoning
Both samples give 0; the actual limit is 1, while p(0) = 0.
All sufficiently close nonzero inputs instead give 1. Radius 1/16 works for every positive tolerance.
Why is choosing a separate radius δ after seeing each nearby input x not the limit definition?
Show the answer and reasoning
The definition chooses one δ after ε, before testing all permitted nearby x.
A separate radius for each x may avoid that input by making the antecedent false. It supplies no common neighbourhood controlling all outputs.
What to carry forward
- A limit concerns permitted inputs arbitrarily close to a point, excluding the point itself. Its value at that point is separate.
- A table or graph suggests behaviour; a proof covers every sufficiently close permitted input for every positive output tolerance.
- Choose epsilon first, then one positive delta that works for all inputs in the punctured neighbourhood.
- When both sides can approach, a two-sided limit exists exactly when the one-sided limits exist and agree.
- Retain the domain and its convention. An endpoint can have a domain-relative limit without a left-hand approach.
- A limit may be attained, and nearby errors need not decrease monotonically. Neither failure to reach the target nor monotonic motion is part of the definition.
References
Sources for the concepts and teaching approaches in this article.
- Calculus Volume 1 · Published 30 March 2016; current online edition inspected 6 October 2026Gilbert Strang, Edwin “Jed” HermanOpen textbookCalculus Volume 1Nearby values, holes and one-sided approaches — §2.2Punctured epsilon–delta guarantees and failure witnesses — §2.5
- Basic Analysis I: Introduction to Real Analysis, Volume I · Version 6.3, 15 May 2026Jiří LeblOpen textbookBasic Analysis I: Introduction to Real Analysis, Volume IDomain accumulation points, finite limits and uniqueness — §3.1.1–3.1.2Limits on a restricted domain and one-sided limits — §3.1.4