When Values Keep Oscillating Near a Point
An infinite discontinuity involves values that grow beyond every fixed bound on at least one side of a point. A different kind of behavior is possible: function values remain bounded but continue to vary, no matter how close the input gets to the point. The familiar expression \(\sin(1/x)\) near \(0\) illustrates this pattern. Its values stay between \(-1\) and \(1\), but they do not settle toward a single number.
Throughout this tutorial, let \(f:I\to\mathbb{R}\), where \(I\) is an interval, and let \(a\) be an interior point of \(I\). We focus on the behavior of \(f(x)\) as \(x\) approaches \(a\) through points different from \(a\). The assigned value \(f(a)\) matters for continuity, but it does not control this punctured behavior.
The terminology “oscillatory discontinuity” is used somewhat broadly, so this definition specifies the bounded behavior considered here. A function can fail to have a limit for reasons other than bounded oscillation; for example, it might be unbounded without tending to \(+\infty\) or \(-\infty\). The infinite-limit results in “Infinite Discontinuities” address a different pattern. Boundedness alone also does not establish a limit: it only rules out growth beyond every bound in the neighborhood under consideration.
Sequential Values Reveal Persistent Oscillation
A useful way to study bounded oscillation is to track values along sequences approaching \(a\). A real number \(y\) is a sequential cluster value of \(f\) at \(a\) if there is a sequence \((x_n)\) in \(I\setminus\{a\}\) such that \(x_n\to a\) and \(f(x_n)\to y\). If two such sequences give different limits, the Sequential Criterion for Continuity rules out continuity at \(a\). More generally, if two approaching sequences give different finite output limits, the Conflicting Sequential Limits Criterion rules out the existence of a finite punctured limit.
For reciprocal-sine oscillations, we can do more than find two conflicting sequences: we can find every sequential cluster value. The sequences will approach from either side, so the conclusion describes the oscillation on each side separately.
Proof. Since \(-1\leq s(x)\leq 1\) for every \(x\ne a\), any limit of a sequence of values \(s(x_n)\) must belong to the closed interval \([-1,1]\). Thus there are no sequential cluster values outside that interval.
Now fix any \(t\in[-1,1]\). Choose \(\theta\in[-\pi/2,\pi/2]\) such that \(\sin\theta=t\). For all sufficiently large positive integers \(n\), the denominator \(\theta+2\pi n\) is positive. Define
These points lie to the right of \(a\) and satisfy \(x_n\to a\). Moreover,
So every \(t\in[-1,1]\) is a cluster value from the right. To approach from the left, take \(\phi\in[-\pi/2,\pi/2]\) with \(\sin\phi=-t\) and use \(z_n=a-1/(\phi+2\pi n)\) for sufficiently large \(n\). Then \(z_n\to a\) from the left and \(1/(z_n-a)=-(\phi+2\pi n)\). We get
Thus every value in \([-1,1]\) is also a cluster value from the left. Finally, \(-1\) and \(1\) are distinct cluster values, so the Sequential Criterion for a finite limit rules out a finite punctured limit at \(a\). \(\square\)
Worked Example: Sine Oscillation at a Shifted Point
Define \(f:\mathbb{R}\to\mathbb{R}\) by \(f(x)=\sin(1/(x-4))\) for \(x\ne4\), and \(f(4)=6\). The theorem applies with \(a=4\). To see the conflicting values directly, set
Both sequences approach \(4\) from the right. Substitution gives
The function is bounded by \(1\) in absolute value whenever \(x\ne4\), but these two sequences show that no finite punctured limit exists. It is therefore a bounded oscillatory discontinuity at \(4\), regardless of the assigned value \(f(4)=6\). In fact, the theorem says that every value between \(-1\) and \(1\) is a cluster value on either side.
Oscillation with a Changing Amplitude
The sine factor does not need to have a constant multiplier. Suppose its amplitude varies continuously near \(a\) and approaches a nonzero number \(c\). The oscillation then persists, but its range of cluster values is scaled by that limiting amplitude. This observation is useful when a function is a product of a well-behaved factor and a rapidly oscillating one.
Proof. Fix a sequence \((x_n)\) approaching \(a\) from either side, and suppose \(h(x_n)\) converges to a finite value \(y\). Since \(g\) is continuous at \(a\), \(g(x_n)\to c\). Also, for every \(n\),
The right-hand side tends to \(0\). Therefore \(c\sin(1/(x_n-a))\to y\). Each of these values belongs to \([-|c|,|c|]\); because this interval is closed, its limit \(y\) also belongs to it. This proves that no other finite cluster values are possible.
Conversely, let \(y\in[-|c|,|c|]\) and set \(t=y/c\). Because \(c\ne0\), this is defined, and \(|t|\leq1\). By the Cluster Values of Reciprocal-Sine Oscillation theorem, on either chosen side of \(a\) there is a sequence \((x_n)\) approaching \(a\) for which \(\sin(1/(x_n-a))=t\) for every \(n\). Along that sequence, continuity gives \(g(x_n)\to c\), and hence
So every \(y\in[-|c|,|c|]\) is a cluster value on either side. In particular, the distinct values \(-|c|\) and \(|c|\) are both cluster values. The Sequential Criterion for a finite limit now shows that no finite punctured limit exists. \(\square\)
Worked Example: An Oscillation with Amplitude \(x+2\)
Define \(h:\mathbb{R}\to\mathbb{R}\) by \(h(x)=(x+2)\sin(1/(x-1))\) for \(x\ne1\), and let \(h(1)=0\). Take \(a=1\) and \(g(x)=x+2\). The function \(g\) is continuous at \(1\) and \(g(1)=3\ne0\). The theorem therefore says that the cluster values on each side of \(1\) are exactly \([-3,3]\). For a direct check of the two extreme values, use
Both sequences approach \(1\) from the right. Since \(\sin(1/(u_n-1))=1\) and \(\sin(1/(v_n-1))=-1\), we have
The amplitude \(x+2\) does not cancel the oscillation: it approaches the nonzero value \(3\). The two different output limits show that \(h\) has no finite punctured limit at \(1\). Its assigned value \(h(1)=0\) cannot change that conclusion.
Logarithmic Oscillation Near Zero
Reciprocal sine is not the only way to produce bounded oscillation. A function can oscillate because its argument moves through infinitely many periods as the input approaches a point. For instance, as \(x\) approaches \(0\) through positive values, \(\log x\) decreases without bound. Sine therefore continues to cycle, even though the function values themselves remain bounded.
Worked Example: Sine of a Logarithm
Define \(q:(0,\infty)\to\mathbb{R}\) by \(q(x)=\sin(\log x)\). We examine the right-hand behavior at \(0\), which is a boundary point of the domain. For positive integers \(n\), let
Both sequences are positive and tend to \(0\). Their logarithms are \(-\pi/2-2\pi n\) and \(-3\pi/2-2\pi n\), respectively. Therefore
The outputs have two different limits along sequences approaching \(0\) from within the domain, so \(q\) has no finite right-hand limit there. Since \(|q(x)|\leq1\) for every \(x>0\), this is bounded oscillation, not an infinite limit. The value \(x=0\) is not in the domain, so continuity at \(0\) is not at issue unless the function is extended to include that point.
What Boundedness Does—and Does Not—Show
The examples share a useful diagnostic. When two sequences approach the same point but their function values tend to different finite numbers, a finite punctured limit cannot exist. If the function is also bounded on a punctured neighborhood, this establishes a bounded oscillatory discontinuity under the definition used here. Neither sequence alone proves the full set of cluster values; for that, the reciprocal-sine theorem supplies a construction for every value in the interval.
A common pitfall is to treat boundedness as evidence that a limit exists. Boundedness controls the size of the outputs, not whether they settle toward a single value. The converse mistake is to call every failure of a limit an infinite discontinuity. Theorem (An Infinite Limit Is Locally Unbounded), from “Infinite Discontinuities,” shows that an infinite one-sided limit forces local unboundedness on that side. A bounded neighborhood therefore rules out such an infinite limit, but still permits persistent oscillation.
A second pitfall is to focus on the assigned value \(f(a)\) before analyzing nearby values. Changing \(f(a)\) can alter whether a function is continuous at \(a\), but it cannot remove two conflicting sequential limits through points different from \(a\). The next tutorial considers one-sided continuity, where the distinction between approaching from one side and approaching from both sides becomes central.
Check Your Understanding
Use the definitions and results in this tutorial to answer the following questions.
- What two properties are required for a bounded oscillatory discontinuity under the definition given here?
- Why do two sequences with different finite output limits rule out a finite punctured limit?
- What is the set of sequential cluster values of \(\sin(1/(x-a))\) on either side of \(a\)?
- Why does multiplying reciprocal-sine oscillation by a continuous function with nonzero value at \(a\) not remove the oscillation?
- For \(q(x)=\sin(\log x)\), which two sequences approaching \(0\) demonstrate the failure of a right-hand limit?
- Why does boundedness rule out an infinite limit without guaranteeing continuity?