In calculus, the chain rule is a formula to compute the derivative of a composite function. That is, if f and g are differentiable functions, then the chain rule expresses the derivative of their composite f ? g -- the function which maps x to -- in terms of the derivatives of f and g and the product of functions as follows:
Alternatively, by letting F = f ? g (equiv., F(x) = f(g(x)) for all x), one can also write the chain rule in Lagrange's notation, as follows:
The chain rule may also be rewritten in Leibniz's notation in the following way. If a variable z depends on the variable y, which itself depends on the variable x (i.e., y and z are dependent variables), then z, via the intermediate variable of y, depends on x as well. In which case, the chain rule states that:
More precisely, to indicate the point each derivative is evaluated at, .
The versions of the chain rule in the Lagrange and the Leibniz notation are equivalent, in the sense that if and , so that , then
Intuitively, the chain rule states that knowing the instantaneous rate of change of z relative to y and that of y relative to x allows one to calculate the instantaneous rate of change of z relative to x. As put by George F. Simmons: "if a car travels twice as fast as a bicycle and the bicycle is four times as fast as a walking man, then the car travels 2 × 4 = 8 times as fast as the man."
The chain rule seems to have first been used by Gottfried Wilhelm Leibniz. He used it to calculate the derivative of as the composite of the square root function and the function . He first mentioned it in a 1676 memoir (with a sign error in the calculation). The common notation of chain rule is due to Leibniz.Guillaume de l'Hôpital used the chain rule implicitly in his Analyse des infiniment petits. The chain rule does not appear in any of Leonhard Euler's analysis books, even though they were written over a hundred years after Leibniz's discovery.
Suppose that a skydiver jumps from an aircraft. Assume that t seconds after his jump, his height above sea level in meters is given by g(t) = 4000 - 4.9t2. One model for the atmospheric pressure at a height h is f(h) = 101325 e-0.0001h. These two equations can be differentiated and combined in various ways to produce the following data:
Here, the chain rule gives a method for computing (f ? g)?(t) in terms of f? and g?. While it is always possible to directly apply the definition of the derivative to compute the derivative of a composite function, this is usually very difficult. The utility of the chain rule is that it turns a complicated derivative into several easy derivatives.
The chain rule states that, under appropriate conditions,
In this example, this equals
In the statement of the chain rule, f and g play slightly different roles because f' is evaluated at , whereas g' is evaluated at t. This is necessary to make the units work out correctly.
For example, suppose that we want to compute the rate of change in atmospheric pressure ten seconds after the skydiver jumps. This is (f ? g)?(10) and has units of pascals per second. The factor g?(10) in the chain rule is the velocity of the skydiver ten seconds after his jump, and it is expressed in meters per second. is the change in pressure with respect to height at the height g(10) and is expressed in pascals per meter. The product of and therefore has the correct units of pascals per second.
Here, notice that it is not possible to evaluate f anywhere else. For instance, the 10 in the problem represents ten seconds, while the expression would represent the change in pressure at a height of ten meters, which is not what we wanted. Similarly, while g?(10) = -98 has a unit of meters per second, the expression f?(g?(10)) would represent the change in pressure at a height of -98 meters, which is again not what we wanted. However, g(10) is 3020 meters above sea level, the height of the skydiver ten seconds after his jump, and this has the correct units for an input to f.
The simplest form of the chain rule is for real-valued functions of one real variable. It states that if g is a function that is differentiable at a point c (i.e. the derivative g?(c) exists) and f is a function that is differentiable at g(c), then the composite function f ? g is differentiable at c, and the derivative is
The rule is sometimes abbreviated as
If y = f(u) and u = g(x), then this abbreviated form is written in Leibniz notation as:
The points where the derivatives are evaluated may also be stated explicitly:
Carrying the same reasoning further, given n functions with the composite function , if each function is differentiable at its immediate input, then the composite function is also differentiable by the repeated application of Chain Rule, where the derivative is (in Leibniz's notation):
It may be possible to apply the chain rule even when there are no formulas for the functions which are being differentiated. This can happen when the derivatives are measured directly. Suppose that a car is driving up a tall mountain. The car's speedometer measures its speed directly. If the grade is known, then the rate of ascent can be calculated using trigonometry. Suppose that the car is ascending at . Standard models for the Earth's atmosphere imply that the temperature drops about per kilometer ascended (called the lapse rate). To find the temperature drop per hour, we can apply the chain rule. Let the function g(t) be the altitude of the car at time t, and let the function f(h) be the temperature h kilometers above sea level. f and g are not known exactly: For example, the altitude where the car starts is not known and the temperature on the mountain is not known. However, their derivatives are known: f? is , and g? is . The chain rule states that the derivative of the composite function is the product of the derivative of f and the derivative of g. This is ? = .
One of the reasons why this computation is possible is because f? is a constant function. A more accurate description of how the temperature near the car varies over time would require an accurate model of how the temperature varies at different altitudes. This model may not have a constant derivative. To compute the temperature change in such a model, it would be necessary to know g and not just g?, because without knowing g it is not possible to know where to evaluate f?.
The chain rule can be applied to composites of more than two functions. To take the derivative of a composite of more than two functions, notice that the composite of f, g, and h (in that order) is the composite of f with g ? h. The chain rule states that to compute the derivative of f ? g ? h, it is sufficient to compute the derivative of f and the derivative of g ? h. The derivative of f can be calculated directly, and the derivative of g ? h can be calculated by applying the chain rule again.
For concreteness, consider the function
This can be decomposed as the composite of three functions:
Their derivatives are:
The chain rule states that the derivative of their composite at the point x = a is:
In Leibniz notation, this is:
or for short,
The derivative function is therefore:
Another way of computing this derivative is to view the composite function f ? g ? h as the composite of f ? g and h. Applying the chain rule in this manner would yield:
This is the same as what was computed above. This should be expected because (f ? g) ? h = f ? (g ? h).
Sometimes, it is necessary to differentiate an arbitrarily long composition of the form . In this case, define
where and when . Then the chain rule takes the form
or, in the Lagrange notation,
The chain rule can be used to derive some well-known differentiation rules. For example, the quotient rule is a consequence of the chain rule and the product rule. To see this, write the function f(x)/g(x) as the product f(x) · 1/g(x). First apply the product rule:
To compute the derivative of 1/g(x), notice that it is the composite of g with the reciprocal function, that is, the function that sends x to 1/x. The derivative of the reciprocal function is . By applying the chain rule, the last expression becomes:
which is the usual formula for the quotient rule.
Suppose that y = g(x) has an inverse function. Call its inverse function f so that we have x = f(y). There is a formula for the derivative of f in terms of the derivative of g. To see this, note that f and g satisfy the formula
And because the functions and x are equal, their derivatives must be equal. The derivative of x is the constant function with value 1, and the derivative of is determined by the chain rule. Therefore, we have that:
To express f' as a function of an independent variable y, we substitute for x wherever it appears. Then we can solve for f'.
For example, consider the function g(x) = ex. It has an inverse f(y) = ln y. Because g?(x) = ex, the above formula says that
This formula is true whenever g is differentiable and its inverse f is also differentiable. This formula can fail when one of these conditions is not true. For example, consider g(x) = x3. Its inverse is f(y) = y1/3, which is not differentiable at zero. If we attempt to use the above formula to compute the derivative of f at zero, then we must evaluate 1/g?(f(0)). Since f(0) = 0 and g?(0) = 0, we must evaluate 1/0, which is undefined. Therefore, the formula fails in this case. This is not surprising because f is not differentiable at zero.
Faà di Bruno's formula generalizes the chain rule to higher derivatives. Assuming that y = f(u) and u = g(x), then the first few derivatives are:
One proof of the chain rule begins with the definition of the derivative:
Assume for the moment that does not equal for any x near a. Then the previous expression is equal to the product of two factors:
If oscillates near a, then it might happen that no matter how close one gets to a, there is always an even closer x such that equals . For example, this happens for g(x) = x2sin(1 / x) near the point a = 0. Whenever this happens, the above expression is undefined because it involves division by zero. To work around this, introduce a function as follows:
We will show that the difference quotient for f ? g is always equal to:
Whenever g(x) is not equal to g(a), this is clear because the factors of g(x) - g(a) cancel. When g(x) equals g(a), then the difference quotient for f ? g is zero because f(g(x)) equals f(g(a)), and the above product is zero because it equals f?(g(a)) times zero. So the above product is always equal to the difference quotient, and to show that the derivative of f ? g at a exists and to determine its value, we need only show that the limit as x goes to a of the above product exists and determine its value.
To do this, recall that the limit of a product exists if the limits of its factors exist. When this happens, the limit of the product of these two factors will equal the product of the limits of the factors. The two factors are Q(g(x)) and (g(x) - g(a)) / (x - a). The latter is the difference quotient for g at a, and because g is differentiable at a by assumption, its limit as x tends to a exists and equals g?(a).
As for Q(g(x)), notice that Q is defined wherever f is. Furthermore, f is differentiable at g(a) by assumption, so Q is continuous at g(a), by definition of the derivative. The function g is continuous at a because it is differentiable at a, and therefore Q ? g is continuous at a. So its limit as x goes to a exists and equals Q(g(a)), which is f?(g(a)).
This shows that the limits of both factors exist and that they equal f?(g(a)) and g?(a), respectively. Therefore, the derivative of f ? g at a exists and equals f?(g(a))g?(a).
Another way of proving the chain rule is to measure the error in the linear approximation determined by the derivative. This proof has the advantage that it generalizes to several variables. It relies on the following equivalent definition of differentiability at a point: A function g is differentiable at a if there exists a real number g?(a) and a function ?(h) that tends to zero as h tends to zero, and furthermore
Here the left-hand side represents the true difference between the value of g at a and at a + h, whereas the right-hand side represents the approximation determined by the derivative plus an error term.
In the situation of the chain rule, such a function ? exists because g is assumed to be differentiable at a. Again by assumption, a similar function also exists for f at g(a). Calling this function ?, we have
The above definition imposes no constraints on ?(0), even though it is assumed that ?(k) tends to zero as k tends to zero. If we set ?(0) = 0, then ? is continuous at 0.
Proving the theorem requires studying the difference f(g(a + h)) - f(g(a)) as h tends to zero. The first step is to substitute for g(a + h) using the definition of differentiability of g at a:
The next step is to use the definition of differentiability of f at g(a). This requires a term of the form f(g(a) + k) for some k. In the above equation, the correct k varies with h. Set kh = g?(a) h + ?(h) h and the right hand side becomes f(g(a) + kh) - f(g(a)). Applying the definition of the derivative gives:
To study the behavior of this expression as h tends to zero, expand kh. After regrouping the terms, the right-hand side becomes:
Because ?(h) and ?(kh) tend to zero as h tends to zero, the first two bracketed terms tend to zero as h tends to zero. Applying the same theorem on products of limits as in the first proof, the third bracketed term also tends zero. Because the above expression is equal to the difference f(g(a + h)) - f(g(a)), by the definition of the derivative f ? g is differentiable at a and its derivative is f?(g(a)) g?(a).
The role of Q in the first proof is played by ? in this proof. They are related by the equation:
The need to define Q at g(a) is analogous to the need to define ? at zero.
Under this definition, a function f is differentiable at a point a if and only if there is a function q, continuous at a and such that f(x) - f(a) = q(x)(x - a). There is at most one such function, and if f is differentiable at a then f ?(a) = q(a).
Given the assumptions of the chain rule and the fact that differentiable functions and compositions of continuous functions are continuous, we have that there exist functions q, continuous at g(a) and r, continuous at a and such that,
but the function given by h(x) = q(g(x))r(x) is continuous at a, and we get, for this a
A similar approach works for continuously differentiable (vector-)functions of many variables. This method of factoring also allows a unified approach to stronger forms of differentiability, when the derivative is required to be Lipschitz continuous, Hölder continuous, etc. Differentiation itself can be viewed as the polynomial remainder theorem (the little Bézout theorem, or factor theorem), generalized to an appropriate class of functions.
If and then choosing infinitesimal we compute the corresponding and then the corresponding , so that
and applying the standard part we obtain
which is the chain rule.
The generalization of the chain rule to multi-variable functions is rather technical. However, it is simpler to write in the case of functions of the form
As this case occurs often in the study of functions of a single variable, it is worth describing it separately.
For writing the chain rule for a function of the form
one needs the partial derivatives of f with respect to its k arguments. The usual notations for partial derivatives involve names for the arguments of the function. As these arguments are not named in the above formula, it is simpler and clearer to denote by
the derivative of f with respect to its ith argument, and by
the value of this derivative at z.
With this notation, the chain rule is
If the function f is addition, that is, if
then (the constant function 1). Thus, the chain rule gives
the partials are and Thus,
The case of exponentiation
is slightly more complicated, as
It follows that
The simplest way for writing the chain rule in the general case is to use the total derivative, which is a linear transformation that captures all directional derivatives in a single formula. Consider differentiable functions f : Rm -> Rk and g : Rn -> Rm, and a point a in Rn. Let Dag denote the total derivative of g at a and Dg(a)f denote the total derivative of f at g(a). These two derivatives are linear transformations Rn -> Rm and Rm -> Rk, respectively, so they can be composed. The chain rule for total derivatives is that their composite is the total derivative of f ? g at a:
or for short,
The higher-dimensional chain rule can be proved using a technique similar to the second proof given above.
Because the total derivative is a linear transformation, the functions appearing in the formula can be rewritten as matrices. The matrix corresponding to a total derivative is called a Jacobian matrix, and the composite of two derivatives corresponds to the product of their Jacobian matrices. From this perspective the chain rule therefore says:
or for short,
That is, the Jacobian of a composite function is the product of the Jacobians of the composed functions (evaluated at the appropriate points).
The higher-dimensional chain rule is a generalization of the one-dimensional chain rule. If k, m, and n are 1, so that f : R -> R and g : R -> R, then the Jacobian matrices of f and g are 1 × 1. Specifically, they are:
The Jacobian of f ? g is the product of these 1 × 1 matrices, so it is f?(g(a))?g?(a), as expected from the one-dimensional chain rule. In the language of linear transformations, Da(g) is the function which scales a vector by a factor of g?(a) and Dg(a)(f) is the function which scales a vector by a factor of f?(g(a)). The chain rule says that the composite of these two linear transformations is the linear transformation Da(f ? g), and therefore it is the function that scales a vector by f?(g(a))?g?(a).
Another way of writing the chain rule is used when f and g are expressed in terms of their components as y = f(u) = (f1(u), ..., fk(u)) and u = g(x) = (g1(x), ..., gm(x)). In this case, the above rule for Jacobian matrices is usually written as:
The chain rule for total derivatives implies a chain rule for partial derivatives. Recall that when the total derivative exists, the partial derivative in the ith coordinate direction is found by multiplying the Jacobian matrix by the ith basis vector. By doing this to the formula above, we find:
Since the entries of the Jacobian matrix are partial derivatives, we may simplify the above formula to get:
More conceptually, this rule expresses the fact that a change in the xi direction may change all of g1 through gm, and any of these changes may affect f.
In the special case where k = 1, so that f is a real-valued function, then this formula simplifies even further:
This can be rewritten as a dot product. Recalling that u = (g1, ..., gm), the partial derivative ?u / ?xi is also a vector, and the chain rule says that:
Given u(x, y) = x2 + 2y where x(r, t) = r sin(t) and y(r,t) = sin2(t), determine the value of ?u / ?r and ?u / ?t using the chain rule.
Faà di Bruno's formula for higher-order derivatives of single-variable functions generalizes to the multivariable case. If y = f(u) is a function of u = g(x) as above, then the second derivative of f ? g is:
All extensions of calculus have a chain rule. In most of these, the formula remains the same, though the meaning of that formula may be vastly different.
One generalization is to manifolds. In this situation, the chain rule represents the fact that the derivative of f ? g is the composite of the derivative of f and the derivative of g. This theorem is an immediate consequence of the higher dimensional chain rule given above, and it has exactly the same formula.
In differential algebra, the derivative is interpreted as a morphism of modules of Kähler differentials. A ring homomorphism of commutative rings f : R -> S determines a morphism of Kähler differentials Df R -> ?S which sends an element dr to d(f(r)), the exterior differential of f(r). The formula D(f ? g) = Df ? Dg holds in this context as well.
The common feature of these examples is that they are expressions of the idea that the derivative is part of a functor. A functor is an operation on spaces and functions between them. It associates to each space a new space and to each function between two spaces a new function between the corresponding new spaces. In each of the above cases, the functor sends each space to its tangent bundle and it sends each function to its derivative. For example, in the manifold case, the derivative sends a Cr-manifold to a Cr-1-manifold (its tangent bundle) and a Cr-function to its total derivative. There is one requirement for this to be a functor, namely that the derivative of a composite must be the composite of the derivatives. This is exactly the formula D(f ? g) = Df ? Dg.
There are also chain rules in stochastic calculus. One of these, It?'s lemma, expresses the composite of an It? process (or more generally a semimartingale) dXt with a twice-differentiable function f. In It?'s lemma, the derivative of the composite function depends not only on dXt and the derivative of f but also on the second derivative of f. The dependence on the second derivative is a consequence of the non-zero quadratic variation of the stochastic process, which broadly speaking means that the process can move up and down in a very rough way. This variant of the chain rule is not an example of a functor because the two functions being composed are of different types.