A polynomial times an exponential
- Input
- d/dx (x^2 * exp(x))
- Expected output
- 2x·exp(x) + x^2·exp(x)
u = x², v = exp(x); u' = 2x, v' = exp(x); combines as u'v + uv'.
product rule derivative
The product rule differentiates the product of two functions that depend on the same variable. The most common mistake for anyone learning it is multiplying the two derivatives directly (u'·v'), which is wrong; the correct rule is u'·v + u·v'. This page opens with x·sin(x), a classic example.
u = x², v = exp(x); u' = 2x, v' = exp(x); combines as u'v + uv'.
u'v + uv' = cos(x)·cos(x) + sin(x)·(-sin(x)), which simplifies to cos²(x) - sin²(x).
Polynomials, trigonometric functions (sine, cosine, tangent and their inverses), hyperbolic functions, exponentials and logarithms, including combinations built from sums, subtraction, products, quotients and composition (the chain rule). Factorial, the remainder operator (%) and min/max are not elementarily differentiable, and the calculator says so instead of risking a wrong result.
Because the rate of change of a product of two functions changing at the same time is not the product of their individual rates of change, it is the sum of how each one contributes to the total change while the other one is momentarily held fixed, exactly what u'v + uv' captures and u'v' does not.
Yes, mathematically it extends to any number of factors; this calculator applies the rule at every binary multiplication in the expression's tree, so an expression with three multiplied factors is solved as two chained applications of the product rule.
Examples by rule
sin(x) + x * cos(x)
\sin\left(x\right) + x \cdot \cos\left(x\right)
No formula renderer on this page: copy the LaTeX above and paste it into an editor that displays it, like a document or a note.
Product rule: the derivative of u * v is u' * v + u * v'.
Derivative of the variable with respect to itself: the result is 1.
Derivative of sine (chain rule): the derivative of sin(u) is cos(u) * u'.
Derivative of the variable with respect to itself: the result is 1.
Everything runs in your browser: the expression you type, the symbolic differentiation and the graph never go through any server.