Function Feature Analyser
Enter a function of x and an interval. The analyser samples densely, finds every zero by bisection, every local extremum by tracking the sign of the numerical derivative, detects vertical-asymptote candidates from large jumps, and reports the end behavior and the function's range on the interval.
A written summary instead of a picture
Describing a function on an interval means answering a fixed set of questions. Where does it cross the axis? Where does it turn? Where is it rising and falling? Does it blow up anywhere, what does it do at the ends, and what values does it take?
This analyser answers all of them and returns the result as text rather than as a drawing. It reports the zeros, the local extrema, the intervals of increase and decrease, any candidate vertical asymptotes, the endpoint values and the observed range.
Some questions want numbers, not a curve. An answer listing turning points to three decimals, or a table of intervals with arrows, is easier to produce from a text report than by reading coordinates off a plot.
The monotonicity list is the part genuinely awkward to obtain any other way. It needs every turning point first, then a direction test between each consecutive pair — tedious by hand, instant here.
How to use this calculator
- Enter the function of x Any expression the parser accepts, including rational and trigonometric forms. Powers use ^, and multiplication is best explicit.
- Give the interval as two numbers For example −3, 3. Everything reported is relative to this interval, including the range and end behaviour, so it is part of the question, not a display setting.
- Work down the report in order Zeros, y-intercept, extrema, monotonicity, asymptote candidates, endpoint values, observed range. Each section stands alone and says explicitly when it found nothing.
- Treat asymptote candidates as leads They are flagged from the sampled values, not proved. The word candidate is literal: confirm each against the algebra.
How each feature is detected
The function is evaluated at 800 evenly spaced points — twice the density used for plotting, since nothing here has to be drawn and a finer grid catches narrower features. Every section of the report derives from that one sample set.
Zeros come from sign changes between neighbouring samples, refined by repeated bisection. Local extrema come from sign changes in the numerical derivative, refined the same way, and are classified as maxima or minima by the direction in which that derivative turns.
Monotonicity is built from the extrema rather than searched for separately. The interval is cut at every turning point, the derivative is evaluated at the midpoint of each piece, and its sign gives the arrow. That is why the intervals meet at extrema and never overlap.
Vertical asymptote candidates are flagged where consecutive samples differ by more than a million, or where the function goes from defined to undefined; the reported position is the midpoint of that pair, which is why it is approximate. End behaviour is the function at the two endpoints, and the observed range is the smallest and largest finite values among the 800 samples — what was seen, not a proof of what the function can reach.
What each input means
- f(x) Function — form field “f(x)”
- The expression to analyse, in x. It is compiled once and evaluated 800 times, so it must be defined across most of the interval for the report to be useful.
- [xMin, xMax] Interval — form field “x range”
- Two comma-separated numbers, the lower first. Every result is scoped to this interval, so widening it can change the range, the extrema and the end behaviour together.
- ↑ ↓ Monotonicity arrows
- Attached to each sub-interval between consecutive turning points. Up means strictly increasing, down strictly decreasing.
Worked examples
Every number below is produced by the same calculation engine the tool above runs. Nothing here is typed by hand, so the walkthrough cannot drift from what you get when you enter the same values yourself.
A cubic with two turning points
Analyse x³ − 3x on the interval from −3 to 3. It has three roots and two extrema inside the window, so every section of the report is populated.
Inputs f(x) = x^3 - 3*x, x range = -3, 3
- Function f(x) = x^3 - 3*x
- Domain analysed [-3, 3]
- Zeros -1.73205, 0, 1.73205
- y-intercept (0, 0)
- Local extrema max at (-1, 2); min at (1, -2)
- Monotonicity (-3, -1) ↑, (-1, 1) ↓, (1, 3) ↑
- Vertical asymptote candidates None detected.
- End behavior f(-3) = -18, f(3) = 18
- Range on interval f ∈ [-18, 18]
Result 3 zeros, 2 extremuma
The monotonicity list comes out as three intervals with alternating arrows, split at the two turning points. That alternation is forced: between consecutive extrema the derivative cannot change sign again, or there would be another extremum in between.
The observed range spans the endpoint values rather than the extrema, because a cubic keeps growing beyond its local maximum. Confusing a local maximum with the largest value on an interval is the error this comparison exposes.
A rational function crossing its own asymptote region
Analyse (x² − 1)/(x − 2) from −3 to 5. The denominator vanishes at 2, which is inside the interval.
Inputs f(x) = (x^2 - 1)/(x - 2), x range = -3, 5
- Function f(x) = (x^2 - 1)/(x - 2)
- Domain analysed [-3, 5]
- Zeros -1, 1
- y-intercept (0, 0.5)
- Local extrema max at (0.267949, 0.535898); min at (3.73205, 7.4641)
- Monotonicity (-3, 0.267949) ↑, (0.267949, 3.73205) ↑, (3.73205, 5) ↑
- Vertical asymptote candidates None detected.
- End behavior f(-3) = -1.6, f(5) = 8
- Range on interval f ∈ [-296.01, 304.01]
Result 2 zeros, 2 extremuma
An asymptote candidate is flagged near 2, detected purely from the enormous jump between two neighbouring samples. Its reported position is the midpoint of that pair, so it is close to but not exactly the true value of 2.
The observed range is dominated by the samples nearest the asymptote and is therefore enormous in both directions. It describes what the sampling encountered, which for a function with a pole is not a useful summary of its typical behaviour.
Reading the result
Everything is scoped to the interval
A root, an extremum or a large value outside the chosen range does not exist as far as this report is concerned. Two runs over different intervals can disagree about range and end behaviour without either being wrong.
The reported range is observed, not proved
It is the smallest and largest of 800 sampled values. For a smooth function on a modest interval that is very close to the true range; near a pole, or for a sharp narrow spike, it can be far off.
Why candidates are only candidates
A jump between samples is consistent with a vertical asymptote, but also with a jump discontinuity or a function that simply changes very fast. Only the algebra distinguishes them, and the report does not guess.
When you would use this
Producing a full written description
Curve-sketching questions often ask for the features in prose rather than a drawing. The report supplies each item in the order such an answer is usually structured.
Checking calculus work numerically
Turning points found by solving the derivative should match the listed extrema, and a hand-built sign chart should match the arrows. Both are checks that share no method with the algebra.
Assumptions and limitations
What this calculator assumes
- The function is real-valued in one variable and can be evaluated at arbitrary points in the interval.
- Extrema and monotonicity come from the numerical derivative, so smoothness is assumed where it matters.
- Zeros are detected from sign changes, so a root the curve touches without crossing is missed.
- The reported range is the extent of the sampled values, not a proved bound.
Where it stops being the right tool
- No plot is produced. When a picture is what is wanted, the function grapher runs the same analysis and draws the curve.
- Asymptotes are reported as approximate candidates only, never as exact positions or as horizontal and oblique asymptotes.
- Inflection points and concavity are not reported, since only the first derivative is used.
Common mistakes
Quoting the observed range as the function's range
Why it happens. The line is labelled as a range and gives two definite numbers, which reads as a complete answer. It is the extent over one interval, computed from samples.
How to avoid it. Say which interval it applies to. For the range of the function as a whole, the domain and range calculator gives a closed form where one exists.
Taking an asymptote candidate as exact
Why it happens. A value such as x ≈ 2.003 looks like a computed result rather than a bracket midpoint, and it is usually very close to the truth.
How to avoid it. Solve for where the denominator vanishes. The candidate tells you where to look; the algebra gives the exact position.
Confusing a local maximum with the largest value
Why it happens. Both are maxima in ordinary speech, and on many intervals they coincide, so the distinction only bites when the function keeps growing towards an endpoint.
How to avoid it. Compare the extrema against the endpoint values in the end-behaviour line. The largest value on a closed interval is always at a turning point or at an end.
Frequently asked questions
Why does it run without drawing a graph?
Because some answers need the numbers rather than a picture — zeros and extrema as decimals, intervals with arrows. It uses the same analysis the grapher does, rendered as a report, and samples twice as densely since nothing has to be drawn.
Can it detect vertical asymptotes exactly?
No. It flags candidates wherever the function jumps by an outlier amount between neighbouring samples, or crosses from defined to undefined, and reports the midpoint of that pair. Confirming the exact position requires looking at the algebra.
What are the monotonicity intervals?
The pieces between consecutive turning points, each marked with an arrow for increasing or decreasing. The direction is determined by evaluating the derivative once at the middle of each piece.
Does it report inflection points?
No. Only the first derivative is used, which locates turning points and directions of change. Concavity and inflection require the second derivative and are outside what this report covers.