Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Chain rule
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|For derivatives of composed functions}} {{about|composed derivatives in calculus|the probability theory concept|Chain rule (probability)|other uses}} {{Calculus |Differential}} In [[calculus]], the '''chain rule''' is a [[formula]] that expresses the [[derivative]] of the [[Function composition|composition]] of two [[differentiable function]]s {{mvar|f}} and {{mvar|g}} in terms of the derivatives of {{mvar|f}} and {{mvar|g}}. More precisely, if <math>h=f\circ g</math> is the function such that <math>h(x)=f(g(x))</math> for every {{mvar|x}}, then the chain rule is, in [[Lagrange's notation]], <math display="block">h'(x) = f'(g(x)) g'(x).</math> or, equivalently, <math display="block">h'=(f\circ g)'=(f'\circ g)\cdot g'.</math> The chain rule may also be expressed in [[Leibniz's notation]]. If a variable {{mvar|z}} depends on the variable {{mvar|y}}, which itself depends on the variable {{mvar|x}} (that is, {{mvar|y}} and {{mvar|z}} are [[dependent variable]]s), then {{mvar|z}} depends on {{mvar|x}} as well, via the intermediate variable {{mvar|y}}. In this case, the chain rule is expressed as <math display="block">\frac{dz}{dx} = \frac{dz}{dy} \cdot \frac{dy}{dx},</math> and <math display="block"> \left.\frac{dz}{dx}\right|_{x} = \left.\frac{dz}{dy}\right|_{y(x)} \cdot \left. \frac{dy}{dx}\right|_{x} ,</math> for indicating at which points the derivatives have to be evaluated. In [[integral|integration]], the counterpart to the chain rule is the [[substitution rule]]. ==Intuitive explanation== Intuitively, the chain rule states that knowing the instantaneous rate of change of {{math|''z''}} relative to {{math|''y''}} and that of {{math|''y''}} relative to {{math|''x''}} allows one to calculate the instantaneous rate of change of {{math|''z''}} relative to {{math|''x''}} as the product of the two rates of change. 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."<ref>[[George F. Simmons]], ''Calculus with Analytic Geometry'' (1985), p. 93.</ref> The relationship between this example and the chain rule is as follows. Let {{mvar|z}}, {{mvar|y}} and {{mvar|x}} be the (variable) positions of the car, the bicycle, and the walking man, respectively. The rate of change of relative positions of the car and the bicycle is <math DISPLAY = inline>\frac {dz}{dy}=2.</math> Similarly, <math DISPLAY = inline>\frac {dy}{dx}=4.</math> So, the rate of change of the relative positions of the car and the walking man is <math display="block">\frac{dz}{dx}=\frac{dz}{dy}\cdot\frac{dy}{dx}=2\cdot 4=8.</math> The rate of change of positions is the ratio of the speeds, and the speed is the derivative of the position with respect to the time; that is, <math display="block">\frac{dz}{dx}=\frac \frac{dz}{dt}\frac{dx}{dt},</math> or, equivalently, <math display="block">\frac{dz}{dt}=\frac{dz}{dx}\cdot \frac{dx}{dt},</math> which is also an application of the chain rule. == History == The chain rule seems to have first been used by [[Gottfried Wilhelm Leibniz]]. He used it to calculate the derivative of <math>\sqrt{a + bz + cz^2}</math> as the composite of the square root function and the function <math>a + bz + cz^2\!</math>. He first mentioned it in a 1676 memoir (with a sign error in the calculation).<ref>{{Cite journal |last=Child |first=J. M. |date=1917 |title=THE MANUSCRIPTS OF LEIBNIZ ON HIS DISCOVERY OF THE DIFFERENTIAL CALCULUS. PART II (Continued) |url=https://www.jstor.org/stable/27900650 |journal=The Monist |volume=27 |issue=3 |pages=411–454 |doi=10.5840/monist191727324 |jstor=27900650 |issn=0026-9662|url-access=subscription }}</ref> The common notation of the chain rule is due to Leibniz.<ref name="OHR">{{cite journal|url= https://scholarworks.umt.edu/tme/vol7/iss2/10/ |title=A Semiotic Reflection on the Didactics of the Chain Rule |journal=The Mathematics Enthusiast |year=2010 |volume=7 |pages=321–332 |issue=2 |first1=Omar Hernández |last1=Rodríguez |first2=Jorge M. |last2=López Fernández |doi=10.54870/1551-3440.1191 |s2cid=29739148 |access-date=2019-08-04|doi-access=free }}</ref> [[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.{{citation needed|date=September 2022}}. It is believed that the first "modern" version of the chain rule appears in Lagrange's 1797 ''Théorie des fonctions analytiques''; it also appears in Cauchy's 1823 ''Résumé des Leçons données a L’École Royale Polytechnique sur Le Calcul Infinitesimal''.<ref name="OHR"/> == Statement == The simplest form of the chain rule is for real-valued functions of one [[real number|real]] variable. It states that if ''{{mvar|g}}'' is a function that is differentiable at a point ''{{mvar|c}}'' (i.e. the derivative {{math|''g''′(''c'')}} exists) and ''{{mvar|f}}'' is a function that is differentiable at {{math|''g''(''c'')}}, then the composite function <math>f \circ g</math> is differentiable at ''{{mvar|c}}'', and the derivative is<ref>{{cite book|title=Mathematical analysis|author-link=Tom Apostol|first=Tom|last=Apostol|year=1974|edition=2nd|publisher=Addison Wesley|page=Theorem 5.5|no-pp=true}}</ref> <math display="block"> (f\circ g)'(c) = f'(g(c))\cdot g'(c). </math> The rule is sometimes abbreviated as <math display="block">(f\circ g)' = (f'\circ g) \cdot g'.</math> If {{math|1=''y'' = ''f''(''u'')}} and {{math|1=''u'' = ''g''(''x'')}}, then this abbreviated form is written in [[Leibniz notation]] as: <math display="block">\frac{dy}{dx} = \frac{dy}{du} \cdot \frac{du}{dx}.</math> The points where the derivatives are evaluated may also be stated explicitly: <math display="block">\left.\frac{dy}{dx}\right|_{x=c} = \left.\frac{dy}{du}\right|_{u = g(c)} \cdot \left.\frac{du}{dx}\right|_{x=c}.</math> Carrying the same reasoning further, given ''{{mvar|n}}'' functions <math>f_1, \ldots, f_n\!</math> with the composite function <math>f_1 \circ ( f_2 \circ \cdots (f_{n-1} \circ f_n) )\!</math>, if each function <math>f_i\!</math> 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): <math display="block">\frac{df_1}{dx} = \frac{df_1}{df_2}\frac{df_2}{df_3}\cdots\frac{df_n}{dx}.</math> == Applications == [[File:Chain rule en.png|thumb|upright=1.6|The chain rule in case of composites of more than two functions]] === Composites of more than two functions === 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 {{mvar|f}}, {{mvar|g}}, and ''{{mvar|h}}'' (in that order) is the composite of {{mvar|f}} with {{math|''g'' ∘ ''h''}}. The chain rule states that to compute the derivative of {{math|''f'' ∘ ''g'' ∘ ''h''}}, it is sufficient to compute the derivative of ''{{mvar|f}}'' and the derivative of {{math|''g'' ∘ ''h''}}. The derivative of {{mvar|f}} can be calculated directly, and the derivative of {{math|''g'' ∘ ''h''}} can be calculated by applying the chain rule again.{{citation needed|date=November 2023}} For concreteness, consider the function <math display="block">y = e^{\sin (x^2)}.</math> This can be decomposed as the composite of three functions: <math display="block">\begin{align} y &= f(u) = e^u, \\ u &= g(v) = \sin v, \\ v &= h(x) = x^2. \end{align}</math> So that <math> y = f(g(h(x))) </math>. Their derivatives are: <math display="block">\begin{align} \frac{dy}{du} &= f'(u) = e^u, \\ \frac{du}{dv} &= g'(v) = \cos v, \\ \frac{dv}{dx} &= h'(x) = 2x. \end{align}</math> The chain rule states that the derivative of their composite at the point {{math|1=''x'' = ''a''}} is: <math display="block">\begin{align} (f \circ g \circ h)'(a) & = f'((g \circ h)(a)) \cdot (g \circ h)'(a) \\ & = f'((g \circ h)(a)) \cdot g'(h(a)) \cdot h'(a) \\ & = (f' \circ g \circ h)(a) \cdot (g' \circ h)(a) \cdot h'(a). \end{align}</math> In [[Leibniz's notation]], this is: <math display="block">\frac{dy}{dx} = \left.\frac{dy}{du}\right|_{u=g(h(a))}\cdot\left.\frac{du}{dv}\right|_{v=h(a)}\cdot\left.\frac{dv}{dx}\right|_{x=a},</math> or for short, <math display="block">\frac{dy}{dx} = \frac{dy}{du}\cdot\frac{du}{dv}\cdot\frac{dv}{dx}.</math> The derivative function is therefore: <math display="block">\frac{dy}{dx} = e^{\sin(x^2)}\cdot\cos(x^2)\cdot 2x.</math> Another way of computing this derivative is to view the composite function {{math|''f'' ∘ ''g'' ∘ ''h''}} as the composite of {{math|''f'' ∘ ''g''}} and ''h''. Applying the chain rule in this manner would yield: <math display="block">\begin{align} (f \circ g \circ h)'(a) &= (f \circ g)'(h(a)) \cdot h'(a) \\ &= f'(g(h(a))) \cdot g'(h(a)) \cdot h'(a). \end{align}</math> This is the same as what was computed above. This should be expected because {{math|1=(''f'' ∘ ''g'') ∘ ''h'' = ''f'' ∘ (''g'' ∘ ''h'')}}. Sometimes, it is necessary to differentiate an arbitrarily long composition of the form <math>f_1 \circ f_2 \circ \cdots \circ f_{n-1} \circ f_n\!</math>. In this case, define <math display="block">f_{a\,.\,.\,b} = f_{a} \circ f_{a+1} \circ \cdots \circ f_{b-1} \circ f_{b}</math> where <math>f_{a\,.\,.\,a} = f_a</math> and <math>f_{a\,.\,.\,b}(x) = x</math> when <math>b < a</math>. Then the chain rule takes the form <math display="block">\begin{align} Df_{1\,.\,.\,n} &= (Df_1 \circ f_{2\,.\,.\,n}) (Df_2 \circ f_{3\,.\,.\,n}) \cdots (Df_{n-1} \circ f_{n\,.\,.\,n}) Df_n \\ &= \prod_{k=1}^n \left[Df_k \circ f_{(k+1)\,.\,.\,n}\right] \end{align}</math> or, in the Lagrange notation, <math display="block">\begin{align} f_{1\,.\,.\,n}'(x) &= f_1' \left( f_{2\,.\,.\,n}(x) \right) \; f_2' \left( f_{3\,.\,.\,n}(x) \right) \cdots f_{n-1}' \left(f_{n\,.\,.\,n}(x)\right) \; f_n'(x) \\[1ex] &= \prod_{k=1}^{n} f_k' \left(f_{(k+1\,.\,.\,n)}(x) \right) \end{align}</math> === Quotient rule === {{See also|Quotient rule}} 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 {{math|''f''(''x'')/''g''(''x'')}} as the product {{math|''f''(''x'') · 1/''g''(''x'')}}. First apply the product rule: <math display="block">\begin{align} \frac{d}{dx}\left(\frac{f(x)}{g(x)}\right) &= \frac{d}{dx}\left(f(x)\cdot\frac{1}{g(x)}\right) \\ &= f'(x)\cdot\frac{1}{g(x)} + f(x)\cdot\frac{d}{dx}\left(\frac{1}{g(x)}\right). \end{align}</math> To compute the derivative of {{math|1/''g''(''x'')}}, notice that it is the composite of {{mvar|g}} with the reciprocal function, that is, the function that sends {{mvar|x}} to {{math|1/''x''}}. The derivative of the reciprocal function is <math>-1/x^2\!</math>. By applying the chain rule, the last expression becomes: <math display="block">f'(x)\cdot\frac{1}{g(x)} + f(x)\cdot\left(-\frac{1}{g(x)^2}\cdot g'(x)\right) = \frac{f'(x) g(x) - f(x) g'(x)}{g(x)^2},</math> which is the usual formula for the quotient rule. === Derivatives of inverse functions === {{Main|Inverse functions and differentiation}} Suppose that {{math|1=''y'' = ''g''(''x'')}} has an [[inverse function]]. Call its inverse function {{mvar|f}} so that we have {{math|1=''x'' = ''f''(''y'')}}. There is a formula for the derivative of {{mvar|f}} in terms of the derivative of {{mvar|g}}. To see this, note that {{mvar|f}} and {{mvar|g}} satisfy the formula <math display="block">f(g(x)) = x.</math> And because the functions <math>f(g(x))</math> and {{mvar|x}} are equal, their derivatives must be equal. The derivative of {{mvar|x}} is the constant function with value 1, and the derivative of <math>f(g(x))</math> is determined by the chain rule. Therefore, we have that: <math display="block">f'(g(x)) g'(x) = 1.</math> To express {{mvar|f'}} as a function of an independent variable {{mvar|y}}, we substitute <math>f(y)</math> for {{mvar|x}} wherever it appears. Then we can solve for {{mvar|f'}}. <math display="block">\begin{align} f'(g(f(y))) g'(f(y)) &= 1 \\ f'(y) g'(f(y)) &= 1 \\ f'(y) = \frac{1}{g'(f(y))}. \end{align}</math> For example, consider the function {{math|1=''g''(''x'') = ''e''<sup>''x''</sup>}}. It has an inverse {{math|1=''f''(''y'') = ln ''y''}}. Because {{math|1=''g''′(''x'') = ''e''<sup>''x''</sup>}}, the above formula says that <math display="block">\frac{d}{dy}\ln y = \frac{1}{e^{\ln y}} = \frac{1}{y}.</math> This formula is true whenever {{mvar|g}} is differentiable and its inverse {{mvar|f}} is also differentiable. This formula can fail when one of these conditions is not true. For example, consider {{math|1=''g''(''x'') = ''x''<sup>3</sup>}}. Its inverse is {{math|1=''f''(''y'') = ''y''<sup>1/3</sup>}}, which is not differentiable at zero. If we attempt to use the above formula to compute the derivative of {{mvar|f}} at zero, then we must evaluate {{math|1=1/''g''′(''f''(0))}}. Since {{math|1=''f''(0) = 0}} and {{math|1=''g''′(0) = 0}}, we must evaluate 1/0, which is undefined. Therefore, the formula fails in this case. This is not surprising because {{mvar|f}} is not differentiable at zero. === Back propagation === The chain rule forms the basis of the [[back propagation]] algorithm, which is used in [[gradient descent]] of [[neural network (machine learning)|neural networks]] in [[deep learning]] ([[artificial intelligence]]).<ref>{{citation|title=Deep learning|first1=Ian|last1=Goodfellow|authorlink1=Ian Goodfellow|first2=Yoshua|last2=Bengio|authorlink2=Yoshua Bengio|first3=Aaron|last3=Courville|year=2016|publisher=MIT}}, pp=197–217.</ref> == Higher derivatives == [[Faà di Bruno's formula]] generalizes the chain rule to higher derivatives. Assuming that {{math|''y'' {{=}} ''f''(''u'')}} and {{math|''u'' {{=}} ''g''(''x'')}}, then the first few derivatives are: <math display="block"> \begin{align} \frac{dy}{dx} & = \frac{dy}{du} \frac{du}{dx} \\ \frac{d^2 y }{d x^2} & = \frac{d^2 y}{d u^2} \left(\frac{du}{dx}\right)^2 + \frac{dy}{du} \frac{d^2 u}{dx^2} \\ \frac{d^3 y }{d x^3} & = \frac{d^3 y}{d u^3} \left(\frac{du}{dx}\right)^3 + 3 \, \frac{d^2 y}{d u^2} \frac{du}{dx} \frac{d^2 u}{d x^2} + \frac{dy}{du} \frac{d^3 u}{d x^3} \\ \frac{d^4 y}{d x^4} & = \frac{d^4 y}{du^4} \left(\frac{du}{dx}\right)^4 + 6 \, \frac{d^3 y}{d u^3} \left(\frac{du}{dx}\right)^2 \frac{d^2 u}{d x^2} + \frac{d^2 y}{d u^2} \left( 4 \, \frac{du}{dx} \frac{d^3 u}{dx^3} + 3 \, \left(\frac{d^2 u}{dx^2}\right)^2\right) + \frac{dy}{du} \frac{d^4 u}{dx^4}. \end{align}</math> == Proofs == === First proof === One proof of the chain rule begins by defining the derivative of the composite function {{math|''f'' ∘ ''g''}}, where we take the [[Limit of a function|limit]] of the [[difference quotient]] for {{math|''f'' ∘ ''g''}} as {{mvar|x}} approaches {{mvar|a}}: <math display="block">(f \circ g)'(a) = \lim_{x \to a} \frac{f(g(x)) - f(g(a))}{x - a}.</math> Assume for the moment that <math>g(x)\!</math> does not equal <math>g(a)</math> for any <math>x</math> near <math>a</math>. Then the previous expression is equal to the product of two factors: <math display="block">\lim_{x \to a} \frac{f(g(x)) - f(g(a))}{g(x) - g(a)} \cdot \frac{g(x) - g(a)}{x - a}.</math> If <math>g</math> oscillates near {{mvar|a}}, then it might happen that no matter how close one gets to {{mvar|a}}, there is always an even closer {{mvar|x}} such that {{math|1=''g''(''x'') = ''g''(''a'')}}. For example, this happens near {{math|1=''a'' = 0}} for the [[continuous function]] {{mvar|g}} defined by {{math|1=''g''(''x'') = 0}} for {{math|1=''x'' = 0}} and {{math|1=''g''(''x'') = ''x''<sup>2</sup> sin(1/''x'')}} otherwise. Whenever this happens, the above expression is undefined because it involves [[division by zero]]. To work around this, introduce a function <math>Q</math> as follows: <math display="block">Q(y) = \begin{cases} \displaystyle\frac{f(y) - f(g(a))}{y - g(a)}, & y \neq g(a), \\ f'(g(a)), & y = g(a). \end{cases}</math> We will show that the difference quotient for {{math|''f'' ∘ ''g''}} is always equal to: <math display="block">Q(g(x)) \cdot \frac{g(x) - g(a)}{x - a}.</math> Whenever {{math|''g''(''x'')}} is not equal to {{math|''g''(''a'')}}, this is clear because the factors of {{math|''g''(''x'') − ''g''(''a'')}} cancel. When {{math|''g''(''x'')}} equals {{math|''g''(''a'')}}, then the difference quotient for {{math|''f'' ∘ ''g''}} is zero because {{math|''f''(''g''(''x''))}} equals {{math|''f''(''g''(''a''))}}, and the above product is zero because it equals {{math|''f''′(''g''(''a''))}} times zero. So the above product is always equal to the difference quotient, and to show that the derivative of {{math|''f'' ∘ ''g''}} at {{math|''a''}} exists and to determine its value, we need only show that the limit as {{math|''x''}} goes to {{math|''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 {{math|''Q''(''g''(''x''))}} and {{math|(''g''(''x'') − ''g''(''a'')) / (''x'' − ''a'')}}. The latter is the difference quotient for {{mvar|g}} at {{mvar|a}}, and because {{mvar|g}} is differentiable at {{mvar|a}} by assumption, its limit as {{mvar|x}} tends to {{mvar|a}} exists and equals {{math|''g''′(''a'')}}. As for {{math|''Q''(''g''(''x''))}}, notice that {{math|''Q''}} is defined wherever ''{{mvar|f}}'' is. Furthermore, ''{{mvar|f}}'' is differentiable at {{math|''g''(''a'')}} by assumption, so {{math|''Q''}} is continuous at {{math|''g''(''a'')}}, by definition of the derivative. The function {{mvar|g}} is continuous at {{mvar|a}} because it is differentiable at {{mvar|a}}, and therefore {{math|''Q'' ∘ ''g''}} is continuous at {{mvar|a}}. So its limit as ''{{mvar|x}}'' goes to ''{{mvar|a}}'' exists and equals {{math|''Q''(''g''(''a''))}}, which is {{math|''f''′(''g''(''a''))}}. This shows that the limits of both factors exist and that they equal {{math|''f''′(''g''(''a''))}} and {{math|''g''′(''a'')}}, respectively. Therefore, the derivative of {{math|''f'' ∘ ''g''}} at ''a'' exists and equals {{math|''f''′(''g''(''a''))}}{{math|''g''′(''a'')}}. === Second proof === 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 <math display="block">g(a + h) - g(a) = g'(a) h + \varepsilon(h) h.</math> Here the left-hand side represents the true difference between the value of ''g'' at ''a'' and at {{math|''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 <math display="block">f(g(a) + k) - f(g(a)) = f'(g(a)) k + \eta(k) k.</math> 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 {{math|1=''η''(0) = 0}}, then ''η'' is continuous at 0. Proving the theorem requires studying the difference {{math|''f''(''g''(''a'' + ''h'')) − ''f''(''g''(''a''))}} as ''h'' tends to zero. The first step is to substitute for {{math|''g''(''a'' + ''h'')}} using the definition of differentiability of ''g'' at ''a'': <math display="block">f(g(a + h)) - f(g(a)) = f(g(a) + g'(a) h + \varepsilon(h) h) - f(g(a)).</math> The next step is to use the definition of differentiability of ''f'' at ''g''(''a''). This requires a term of the form {{math|''f''(''g''(''a'') + ''k'')}} for some ''k''. In the above equation, the correct ''k'' varies with ''h''. Set {{math|1=''k''<sub>''h''</sub> = ''g''′(''a'') ''h'' + ''ε''(''h'') ''h''}} and the right hand side becomes {{math|''f''(''g''(''a'') + ''k''<sub>''h''</sub>) − ''f''(''g''(''a''))}}. Applying the definition of the derivative gives: <math display="block">f(g(a) + k_h) - f(g(a)) = f'(g(a)) k_h + \eta(k_h) k_h.</math> To study the behavior of this expression as ''h'' tends to zero, expand ''k''<sub>''h''</sub>. After regrouping the terms, the right-hand side becomes: <math display="block">f'(g(a)) g'(a)h + [f'(g(a)) \varepsilon(h) + \eta(k_h) g'(a) + \eta(k_h) \varepsilon(h)] h.</math> Because ''ε''(''h'') and ''η''(''k''<sub>''h''</sub>) 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 {{math|''f''(''g''(''a'' + ''h'')) − ''f''(''g''(''a''))}}, by the definition of the derivative {{math|''f'' ∘ ''g''}} is differentiable at ''a'' and its derivative is {{math|''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: <math display="block">Q(y) = f'(g(a)) + \eta(y - g(a)). </math> The need to define ''Q'' at ''g''(''a'') is analogous to the need to define ''η'' at zero. === Third proof === [[Constantin Carathéodory]]'s alternative definition of the differentiability of a function can be used to give an elegant proof of the chain rule.<ref>{{cite journal|first=Stephen|last=Kuhn|title=The Derivative á la Carathéodory|journal=[[The American Mathematical Monthly]]|year=1991|volume=98|issue=1|pages=40–44|doi=10.2307/2324035|jstor=2324035}}</ref> Under this definition, a function {{mvar|f}} is differentiable at a point {{mvar|a}} if and only if there is a function {{mvar|q}}, continuous at {{mvar|a}} and such that {{math|1=''f''(''x'') − ''f''(''a'') = ''q''(''x'')(''x'' − ''a'')}}. There is at most one such function, and if {{mvar|f}} is differentiable at {{mvar|a}} then {{math|1=''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 {{mvar|q}}, continuous at {{math|''g''(''a'')}}, and {{mvar|r}}, continuous at {{mvar|a}}, and such that, <math display="block">f(g(x))-f(g(a))=q(g(x))(g(x)-g(a))</math> and <math display="block">g(x)-g(a)=r(x)(x-a).</math> Therefore, <math display="block">f(g(x))-f(g(a))=q(g(x))r(x)(x-a),</math> but the function given by {{math|1=''h''(''x'') = ''q''(''g''(''x''))''r''(''x'')}} is continuous at {{mvar|a}}, and we get, for this {{mvar|a}} <math display="block">(f(g(a)))'=q(g(a))r(a)=f'(g(a))g'(a).</math> 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 continuity|Lipschitz continuous]], [[Hölder condition|Hölder continuous]], etc. Differentiation itself can be viewed as the [[polynomial remainder theorem]] (the little [[Étienne Bézout|Bézout]] theorem, or factor theorem), generalized to an appropriate class of functions.{{ citation needed|date=February 2016}} === Proof via infinitesimals === {{See also|Non-standard calculus}} If <math>y=f(x)</math> and <math>x=g(t)</math> then choosing infinitesimal <math>\Delta t\not=0</math> we compute the corresponding <math>\Delta x=g(t+\Delta t)-g(t)</math> and then the corresponding <math>\Delta y=f(x+\Delta x)-f(x)</math>, so that <math display="block">\frac{\Delta y}{\Delta t} = \frac{\Delta y}{\Delta x} \frac{\Delta x}{\Delta t}</math> and applying the [[standard part]] we obtain <math display="block">\frac{d y}{d t}=\frac{d y}{d x} \frac{dx}{dt}</math> which is the chain rule. == Multivariable case == The full generalization of the chain rule to [[multi-variable function]]s (such as <math>f : \mathbb{R}^m \to \mathbb{R}^n</math>) is rather technical. However, it is simpler to write in the case of functions of the form <math display="block">f(g_1(x), \dots, g_k(x)),</math> where <math>f : \reals^k \to \reals</math>, and <math>g_i : \mathbb{R} \to \mathbb{R}</math> for each <math>i = 1, 2, \dots, k.</math> As this case occurs often in the study of functions of a single variable, it is worth describing it separately. ===Case of scalar-valued functions with multiple inputs=== Let <math>f : \reals^k \to \reals</math>, and <math>g_i : \mathbb{R} \to \mathbb{R}</math> for each <math>i = 1, 2, \dots, k.</math> To write the chain rule for the composition of functions <math display="block">x \mapsto f(g_1(x), \dots , g_k(x)),</math> one needs the [[partial derivative]]s of {{mvar|f}} with respect to its {{mvar|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 use [[Notation for differentiation#D-notation|''D''-Notation]], and to denote by <math display="block">D_i f</math> the partial derivative of {{mvar|f}} with respect to its {{mvar|i}}th argument, and by <math display="block">D_i f(z)</math> the value of this derivative at {{mvar|z}}. With this notation, the chain rule is <math display="block">\frac{d}{dx}f(g_1(x), \dots, g_k (x))=\sum_{i=1}^k \left(\frac{d}{dx}{g_i}(x)\right) D_i f(g_1(x), \dots, g_k (x)).</math> ====Example: arithmetic operations==== If the function {{mvar|f}} is addition, that is, if <math display="block">f(u,v)=u+v,</math> then <math display="inline">D_1 f = \frac{\partial f}{\partial u} = 1</math> and <math display="inline">D_2 f = \frac{\partial f}{\partial v} = 1</math>. Thus, the chain rule gives <math display="block">\frac{d}{dx}(g(x)+h(x)) = \left( \frac{d}{dx}g(x) \right) D_1 f+\left( \frac{d}{dx}h(x)\right) D_2 f=\frac{d}{dx}g(x) +\frac{d}{dx}h(x).</math> For multiplication <math display="block">f(u,v)=uv,</math> the partials are <math>D_1 f = v</math> and <math>D_2 f = u</math>. Thus, <math display="block">\frac{d}{dx}(g(x)h(x)) = h(x) \frac{d}{dx} g(x) + g(x) \frac{d}{dx} h(x).</math> The case of exponentiation <math display="block">f(u,v)=u^v</math> is slightly more complicated, as <math display="block">D_1 f = vu^{v-1},</math> and, as <math>u^v=e^{v\ln u},</math> <math display="block">D_2 f = u^v\ln u.</math> It follows that <math display="block">\frac{d}{dx}\left(g(x)^{h(x)}\right) = h(x)g(x)^{h(x)-1} \frac{d}{dx}g(x) + g(x)^{h(x)} \ln g(x) \,\frac{d}{dx}h(x).</math> ===General rule: Vector-valued functions with multiple inputs=== The simplest way for writing the chain rule in the general case is to use the [[Total derivative#The total derivative as a linear map|total derivative]], which is a linear transformation that captures all [[directional derivative]]s in a single formula. Consider differentiable functions {{math|''f'' : '''R'''<sup>''m''</sup> → '''R'''<sup>''k''</sup>}} and {{math|''g'' : '''R'''<sup>''n''</sup> → '''R'''<sup>''m''</sup>}}, and a point {{math|'''a'''}} in {{math|'''R'''<sup>''n''</sup>}}. Let {{math|''D''<sub>'''a'''</sub> ''g''}} denote the total derivative of {{math|''g''}} at {{math|'''a'''}} and {{math|''D''<sub>''g''('''a''')</sub> ''f''}} denote the total derivative of {{math|''f''}} at {{math|''g''('''a''')}}. These two derivatives are linear transformations {{math|'''R'''<sup>''n''</sup> → '''R'''<sup>''m''</sup>}} and {{math|'''R'''<sup>''m''</sup> → '''R'''<sup>''k''</sup>}}, respectively, so they can be composed. The chain rule for total derivatives is that their composite is the total derivative of {{math|''f'' ∘ ''g''}} at {{math|'''a'''}}: <math display="block">D_{\mathbf{a}}(f \circ g) = D_{g(\mathbf{a})}f \circ D_{\mathbf{a}}g,</math> or for short, <math display="block">D(f \circ g) = Df \circ Dg.</math> The higher-dimensional chain rule can be proved using a technique similar to the second proof given above.<ref name="spivak_manifolds">{{cite book |first=Michael |last=Spivak |author-link=Michael Spivak |title=[[Calculus on Manifolds (book)|Calculus on Manifolds]] |location=Boston |publisher=Addison-Wesley |year=1965 |isbn=0-8053-9021-9 |pages=19–20 }}</ref> 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: <math display="block">J_{f \circ g}(\mathbf{a}) = J_{f}(g(\mathbf{a})) J_{g}(\mathbf{a}),</math> or for short, <math display="block">J_{f \circ g} = (J_f \circ g)J_g.</math> 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 {{mvar|k}}, {{mvar|m}}, and {{mvar|n}} are 1, so that {{math|''f'' : '''R''' → '''R'''}} and {{math|''g'' : '''R''' → '''R'''}}, then the Jacobian matrices of {{math|''f''}} and {{math|''g''}} are {{math|1 × 1}}. Specifically, they are: <math display="block">\begin{align} J_g(a) &= \begin{pmatrix} g'(a) \end{pmatrix}, \\ J_{f}(g(a)) &= \begin{pmatrix} f'(g(a)) \end{pmatrix}. \end{align}</math> The Jacobian of {{math|''f'' ∘ ''g''}} is the product of these {{math|1 × 1}} matrices, so it is {{math|''f''′(''g''(''a''))⋅''g''′(''a'')}}, as expected from the one-dimensional chain rule. In the language of linear transformations, {{math|''D''<sub>''a''</sub>(''g'')}} is the function which scales a vector by a factor of {{math|''g''′(''a'')}} and {{math|''D''<sub>''g''(''a'')</sub>(''f'')}} is the function which scales a vector by a factor of {{math|''f''′(''g''(''a''))}}. The chain rule says that the composite of these two linear transformations is the linear transformation {{math|''D''<sub>''a''</sub>(''f'' ∘ ''g'')}}, and therefore it is the function that scales a vector by {{math|''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 {{math|1='''y''' = ''f''('''u''') = (''f''<sub>1</sub>('''u'''), …, ''f''<sub>''k''</sub>('''u'''))}} and {{math|1='''u''' = ''g''('''x''') = (''g''<sub>1</sub>('''x'''), …, ''g''<sub>''m''</sub>('''x'''))}}. In this case, the above rule for Jacobian matrices is usually written as: <math display="block">\frac{\partial(y_1, \ldots, y_k)}{\partial(x_1, \ldots, x_n)} = \frac{\partial(y_1, \ldots, y_k)}{\partial(u_1, \ldots, u_m)} \frac{\partial(u_1, \ldots, u_m)}{\partial(x_1, \ldots, x_n)}.</math> 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 {{mvar|i}}-th coordinate direction is found by multiplying the Jacobian matrix by the {{mvar|i}}-th basis vector. By doing this to the formula above, we find: <math display="block">\frac{\partial(y_1, \ldots, y_k)}{\partial x_i} = \frac{\partial(y_1, \ldots, y_k)}{\partial(u_1, \ldots, u_m)} \frac{\partial(u_1, \ldots, u_m)}{\partial x_i}.</math> Since the entries of the Jacobian matrix are partial derivatives, we may simplify the above formula to get: <math display="block">\frac{\partial(y_1, \ldots, y_k)}{\partial x_i} = \sum_{\ell = 1}^m \frac{\partial(y_1, \ldots, y_k)}{\partial u_\ell} \frac{\partial u_\ell}{\partial x_i}.</math> More conceptually, this rule expresses the fact that a change in the {{math|''x''<sub>''i''</sub>}} direction may change all of {{math|''g''<sub>1</sub>}} through {{math|''g<sub>m</sub>''}}, and any of these changes may affect {{math|''f''}}. In the special case where {{math|1=''k'' = 1}}, so that {{math|''f''}} is a real-valued function, then this formula simplifies even further: <math display="block">\frac{\partial y}{\partial x_i} = \sum_{\ell = 1}^m \frac{\partial y}{\partial u_\ell} \frac{\partial u_\ell}{\partial x_i}.</math> This can be rewritten as a [[dot product]]. Recalling that {{math|'''u''' {{=}} (''g''<sub>1</sub>, …, ''g''<sub>''m''</sub>)}}, the partial derivative {{math|∂'''u''' / ∂''x''<sub>''i''</sub>}} is also a vector, and the chain rule says that: <math display="block">\frac{\partial y}{\partial x_i} = \nabla y \cdot \frac{\partial \mathbf{u}}{\partial x_i}.</math> ==== Example ==== Given {{math|1=''u''(''x'', ''y'') = ''x''<sup>2</sup> + 2''y''}} where {{math|1=''x''(''r'', ''t'') = ''r'' sin(''t'')}} and {{math|1=''y''(''r'',''t'') = sin<sup>2</sup>(''t'')}}, determine the value of {{math|∂''u'' / ∂''r''}} and {{math|∂''u'' / ∂''t''}} using the chain rule.{{citation needed|date=November 2023}} <math display="block">\frac{\partial u}{\partial r}=\frac{\partial u}{\partial x} \frac{\partial x}{\partial r}+\frac{\partial u}{\partial y} \frac{\partial y}{\partial r} = (2x)(\sin(t)) + (2)(0) = 2r \sin^2(t),</math> and <math display="block">\begin{align} \frac{\partial u}{\partial t} &= \frac{\partial u}{\partial x} \frac{\partial x}{\partial t}+\frac{\partial u}{\partial y} \frac{\partial y}{\partial t} \\ &= (2x)(r\cos(t)) + (2)(2\sin(t)\cos(t)) \\ &= (2r\sin(t))(r\cos(t)) + 4\sin(t)\cos(t) \\ &= 2(r^2 + 2) \sin(t)\cos(t) \\ &= (r^2 + 2) \sin(2t). \end{align}</math> ==== Higher derivatives of multivariable functions ==== {{Main|Faà di Bruno's formula#Multivariate version}} Faà di Bruno's formula for higher-order derivatives of single-variable functions generalizes to the multivariable case. If {{math|1=''y'' = ''f''('''u''')}} is a function of {{math|1='''u''' = ''g''('''x''')}} as above, then the second derivative of {{math|''f'' ∘ ''g''}} is: <math display="block">\frac{\partial^2 y}{\partial x_i \partial x_j} = \sum_k \left(\frac{\partial y}{\partial u_k}\frac{\partial^2 u_k}{\partial x_i \partial x_j}\right) + \sum_{k, \ell} \left(\frac{\partial^2 y}{\partial u_k \partial u_\ell}\frac{\partial u_k}{\partial x_i}\frac{\partial u_\ell}{\partial x_j}\right).</math> == Further generalizations == 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 [[manifold]]s. In this situation, the chain rule represents the fact that the derivative of {{math|''f'' ∘ ''g''}} is the composite of the derivative of {{math|''f''}} and the derivative of {{math|''g''}}. This theorem is an immediate consequence of the higher dimensional chain rule given above, and it has exactly the same formula. The chain rule is also valid for [[Fréchet derivative]]s in [[Banach space]]s. The same formula holds as before.<ref>{{cite book |first=Ward |last=Cheney |author-link=Elliott Ward Cheney Jr. |title=Analysis for Applied Mathematics |location=New York |publisher=Springer |year=2001 |chapter=The Chain Rule and Mean Value Theorems |pages=121–125 |isbn=0-387-95279-9 }}</ref> This case and the previous one admit a simultaneous generalization to [[Banach manifold]]s. In [[differential algebra]], the derivative is interpreted as a morphism of modules of [[Kähler differential]]s. A [[ring homomorphism]] of [[commutative ring]]s {{math|''f'' : ''R'' → ''S''}} determines a morphism of Kähler differentials {{math|''Df'' : Ω<sub>''R''</sub> → Ω<sub>''S''</sub>}} which sends an element {{math|''dr''}} to {{math|''d''(''f''(''r''))}}, the exterior differential of {{math|''f''(''r'')}}. The formula {{math|1=''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 {{math|''C''<sup>''r''</sup>}}-manifold to a {{math|''C''<sup>''r''−1</sup>}}-manifold (its tangent bundle) and a {{math|''C''<sup>''r''</sup>}}-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 {{math|1=''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]]) ''dX''<sub>''t''</sub> with a twice-differentiable function ''f''. In Itō's lemma, the derivative of the composite function depends not only on ''dX''<sub>''t''</sub> 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. ==See also== * {{annotated link|Automatic differentiation}} − a computational method that makes heavy use of the chain rule to compute exact numerical derivatives. * {{annotated link|Differentiation rules}} * {{annotated link|Integration by substitution}} * {{annotated link|Leibniz integral rule}} * {{annotated link|Product rule}} * {{annotated link|Quotient rule}} * {{annotated link|Triple product rule}} == References == {{Reflist}} ==External links== * {{springer|title=Leibniz rule|id=Leibniz_rule}} * {{MathWorld | urlname=ChainRule | title=Chain Rule}} {{Calculus topics}} [[Category:Articles containing proofs]] [[Category:Differentiation rules]] [[Category:Theorems in mathematical analysis]] [[Category:Theorems in calculus]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:About
(
edit
)
Template:Annotated link
(
edit
)
Template:Bigger
(
edit
)
Template:Calculus
(
edit
)
Template:Calculus topics
(
edit
)
Template:Citation
(
edit
)
Template:Citation needed
(
edit
)
Template:Cite book
(
edit
)
Template:Cite journal
(
edit
)
Template:Endflatlist
(
edit
)
Template:Main
(
edit
)
Template:Math
(
edit
)
Template:MathWorld
(
edit
)
Template:Mvar
(
edit
)
Template:Reflist
(
edit
)
Template:See also
(
edit
)
Template:SfnRef
(
edit
)
Template:Short description
(
edit
)
Template:Springer
(
edit
)
Template:Startflatlist
(
edit
)