\documentclass[12pt,titlepage]{article} \usepackage{amsmath} \usepackage{mathrsfs} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsthm} \usepackage{mathtools} \usepackage{graphicx} \usepackage{color} \usepackage{ucs} \usepackage[utf8x]{inputenc} \usepackage{xparse} \usepackage{hyperref} %----Macros---------- % % Unresolved issues: % % \righttoleftarrow % \lefttorightarrow % % \color{} with HTML colorspec % \bgcolor % \array with options (without options, it's equivalent to the matrix environment) % Of the standard HTML named colors, white, black, red, green, blue and yellow % are predefined in the color package. Here are the rest. \definecolor{aqua}{rgb}{0, 1.0, 1.0} \definecolor{fuschia}{rgb}{1.0, 0, 1.0} \definecolor{gray}{rgb}{0.502, 0.502, 0.502} \definecolor{lime}{rgb}{0, 1.0, 0} \definecolor{maroon}{rgb}{0.502, 0, 0} \definecolor{navy}{rgb}{0, 0, 0.502} \definecolor{olive}{rgb}{0.502, 0.502, 0} \definecolor{purple}{rgb}{0.502, 0, 0.502} \definecolor{silver}{rgb}{0.753, 0.753, 0.753} \definecolor{teal}{rgb}{0, 0.502, 0.502} % Because of conflicts, \space and \mathop are converted to % \itexspace and \operatorname during preprocessing. % itex: \space{ht}{dp}{wd} % % Height and baseline depth measurements are in units of tenths of an ex while % the width is measured in tenths of an em. \makeatletter \newdimen\itex@wd% \newdimen\itex@dp% \newdimen\itex@thd% \def\itexspace#1#2#3{\itex@wd=#3em% \itex@wd=0.1\itex@wd% \itex@dp=#2ex% \itex@dp=0.1\itex@dp% \itex@thd=#1ex% \itex@thd=0.1\itex@thd% \advance\itex@thd\the\itex@dp% \makebox[\the\itex@wd]{\rule[-\the\itex@dp]{0cm}{\the\itex@thd}}} \makeatother % \tensor and \multiscript \makeatletter \newif\if@sup \newtoks\@sups \def\append@sup#1{\edef\act{\noexpand\@sups={\the\@sups #1}}\act}% \def\reset@sup{\@supfalse\@sups={}}% \def\mk@scripts#1#2{\if #2/ \if@sup ^{\the\@sups}\fi \else% \ifx #1_ \if@sup ^{\the\@sups}\reset@sup \fi {}_{#2}% \else \append@sup#2 \@suptrue \fi% \expandafter\mk@scripts\fi} \def\tensor#1#2{\reset@sup#1\mk@scripts#2_/} \def\multiscripts#1#2#3{\reset@sup{}\mk@scripts#1_/#2% \reset@sup\mk@scripts#3_/} \makeatother % \slash \makeatletter \newbox\slashbox \setbox\slashbox=\hbox{$/$} \def\itex@pslash#1{\setbox\@tempboxa=\hbox{$#1$} \@tempdima=0.5\wd\slashbox \advance\@tempdima 0.5\wd\@tempboxa \copy\slashbox \kern-\@tempdima \box\@tempboxa} \def\slash{\protect\itex@pslash} \makeatother % math-mode versions of \rlap, etc % from Alexander Perlis, "A complement to \smash, \llap, and lap" % http://math.arizona.edu/~aprl/publications/mathclap/ \def\clap#1{\hbox to 0pt{\hss#1\hss}} \def\mathllap{\mathpalette\mathllapinternal} \def\mathrlap{\mathpalette\mathrlapinternal} \def\mathclap{\mathpalette\mathclapinternal} \def\mathllapinternal#1#2{\llap{$\mathsurround=0pt#1{#2}$}} \def\mathrlapinternal#1#2{\rlap{$\mathsurround=0pt#1{#2}$}} \def\mathclapinternal#1#2{\clap{$\mathsurround=0pt#1{#2}$}} % Renames \sqrt as \oldsqrt and redefine root to result in \sqrt[#1]{#2} \let\oldroot\root \def\root#1#2{\oldroot #1 \of{#2}} \renewcommand{\sqrt}[2][]{\oldroot #1 \of{#2}} % Manually declare the txfonts symbolsC font \DeclareSymbolFont{symbolsC}{U}{txsyc}{m}{n} \SetSymbolFont{symbolsC}{bold}{U}{txsyc}{bx}{n} \DeclareFontSubstitution{U}{txsyc}{m}{n} % Manually declare the stmaryrd font \DeclareSymbolFont{stmry}{U}{stmry}{m}{n} \SetSymbolFont{stmry}{bold}{U}{stmry}{b}{n} % Manually declare the MnSymbolE font \DeclareFontFamily{OMX}{MnSymbolE}{} \DeclareSymbolFont{mnomx}{OMX}{MnSymbolE}{m}{n} \SetSymbolFont{mnomx}{bold}{OMX}{MnSymbolE}{b}{n} \DeclareFontShape{OMX}{MnSymbolE}{m}{n}{ <-6> MnSymbolE5 <6-7> MnSymbolE6 <7-8> MnSymbolE7 <8-9> MnSymbolE8 <9-10> MnSymbolE9 <10-12> MnSymbolE10 <12-> MnSymbolE12}{} % Declare specific arrows from txfonts without loading the full package \makeatletter \def\re@DeclareMathSymbol#1#2#3#4{% \let#1=\undefined \DeclareMathSymbol{#1}{#2}{#3}{#4}} \re@DeclareMathSymbol{\neArrow}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\neArr}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\seArrow}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\seArr}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\nwArrow}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\nwArr}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\swArrow}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\swArr}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\nequiv}{\mathrel}{symbolsC}{46} \re@DeclareMathSymbol{\Perp}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\Vbar}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\sslash}{\mathrel}{stmry}{12} \re@DeclareMathSymbol{\bigsqcap}{\mathop}{stmry}{"64} \re@DeclareMathSymbol{\biginterleave}{\mathop}{stmry}{"6} \re@DeclareMathSymbol{\invamp}{\mathrel}{symbolsC}{77} \re@DeclareMathSymbol{\parr}{\mathrel}{symbolsC}{77} \makeatother % \llangle, \rrangle, \lmoustache and \rmoustache from MnSymbolE \makeatletter \def\Decl@Mn@Delim#1#2#3#4{% \if\relax\noexpand#1% \let#1\undefined \fi \DeclareMathDelimiter{#1}{#2}{#3}{#4}{#3}{#4}} \def\Decl@Mn@Open#1#2#3{\Decl@Mn@Delim{#1}{\mathopen}{#2}{#3}} \def\Decl@Mn@Close#1#2#3{\Decl@Mn@Delim{#1}{\mathclose}{#2}{#3}} \Decl@Mn@Open{\llangle}{mnomx}{'164} \Decl@Mn@Close{\rrangle}{mnomx}{'171} \Decl@Mn@Open{\lmoustache}{mnomx}{'245} \Decl@Mn@Close{\rmoustache}{mnomx}{'244} \makeatother % Widecheck \makeatletter \DeclareRobustCommand\widecheck[1]{{\mathpalette\@widecheck{#1}}} \def\@widecheck#1#2{% \setbox\z@\hbox{\m@th$#1#2$}% \setbox\tw@\hbox{\m@th$#1% \widehat{% \vrule\@width\z@\@height\ht\z@ \vrule\@height\z@\@width\wd\z@}$}% \dp\tw@-\ht\z@ \@tempdima\ht\z@ \advance\@tempdima2\ht\tw@ \divide\@tempdima\thr@@ \setbox\tw@\hbox{% \raise\@tempdima\hbox{\scalebox{1}[-1]{\lower\@tempdima\box \tw@}}}% {\ooalign{\box\tw@ \cr \box\z@}}} \makeatother % \mathraisebox{voffset}[height][depth]{something} \makeatletter \NewDocumentCommand\mathraisebox{moom}{% \IfNoValueTF{#2}{\def\@temp##1##2{\raisebox{#1}{$\m@th##1##2$}}}{% \IfNoValueTF{#3}{\def\@temp##1##2{\raisebox{#1}[#2]{$\m@th##1##2$}}% }{\def\@temp##1##2{\raisebox{#1}[#2][#3]{$\m@th##1##2$}}}}% \mathpalette\@temp{#4}} \makeatletter % udots (taken from yhmath) \makeatletter \def\udots{\mathinner{\mkern2mu\raise\p@\hbox{.} \mkern2mu\raise4\p@\hbox{.}\mkern1mu \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern1mu}} \makeatother %% Fix array \newcommand{\itexarray}[1]{\begin{matrix}#1\end{matrix}} %% \itexnum is a noop \newcommand{\itexnum}[1]{#1} %% Renaming existing commands \newcommand{\underoverset}[3]{\underset{#1}{\overset{#2}{#3}}} \newcommand{\widevec}{\overrightarrow} \newcommand{\darr}{\downarrow} \newcommand{\nearr}{\nearrow} \newcommand{\nwarr}{\nwarrow} \newcommand{\searr}{\searrow} \newcommand{\swarr}{\swarrow} \newcommand{\curvearrowbotright}{\curvearrowright} \newcommand{\uparr}{\uparrow} \newcommand{\downuparrow}{\updownarrow} \newcommand{\duparr}{\updownarrow} \newcommand{\updarr}{\updownarrow} \newcommand{\gt}{>} \newcommand{\lt}{<} \newcommand{\map}{\mapsto} \newcommand{\embedsin}{\hookrightarrow} \newcommand{\Alpha}{A} \newcommand{\Beta}{B} \newcommand{\Zeta}{Z} \newcommand{\Eta}{H} \newcommand{\Iota}{I} \newcommand{\Kappa}{K} \newcommand{\Mu}{M} \newcommand{\Nu}{N} \newcommand{\Rho}{P} \newcommand{\Tau}{T} \newcommand{\Upsi}{\Upsilon} \newcommand{\omicron}{o} \newcommand{\lang}{\langle} \newcommand{\rang}{\rangle} \newcommand{\Union}{\bigcup} \newcommand{\Intersection}{\bigcap} \newcommand{\Oplus}{\bigoplus} \newcommand{\Otimes}{\bigotimes} \newcommand{\Wedge}{\bigwedge} \newcommand{\Vee}{\bigvee} \newcommand{\coproduct}{\coprod} \newcommand{\product}{\prod} \newcommand{\closure}{\overline} \newcommand{\integral}{\int} \newcommand{\doubleintegral}{\iint} \newcommand{\tripleintegral}{\iiint} \newcommand{\quadrupleintegral}{\iiiint} \newcommand{\conint}{\oint} \newcommand{\contourintegral}{\oint} \newcommand{\infinity}{\infty} \newcommand{\bottom}{\bot} \newcommand{\minusb}{\boxminus} \newcommand{\plusb}{\boxplus} \newcommand{\timesb}{\boxtimes} \newcommand{\intersection}{\cap} \newcommand{\union}{\cup} \newcommand{\Del}{\nabla} \newcommand{\odash}{\circleddash} \newcommand{\negspace}{\!} \newcommand{\widebar}{\overline} \newcommand{\textsize}{\normalsize} \renewcommand{\scriptsize}{\scriptstyle} \newcommand{\scriptscriptsize}{\scriptscriptstyle} \newcommand{\mathfr}{\mathfrak} \newcommand{\statusline}[2]{#2} \newcommand{\tooltip}[2]{#2} \newcommand{\toggle}[2]{#2} % Theorem Environments \theoremstyle{plain} \newtheorem{theorem}{Theorem} \newtheorem{lemma}{Lemma} \newtheorem{prop}{Proposition} \newtheorem{cor}{Corollary} \newtheorem*{utheorem}{Theorem} \newtheorem*{ulemma}{Lemma} \newtheorem*{uprop}{Proposition} \newtheorem*{ucor}{Corollary} \theoremstyle{definition} \newtheorem{defn}{Definition} \newtheorem{example}{Example} \newtheorem*{udefn}{Definition} \newtheorem*{uexample}{Example} \theoremstyle{remark} \newtheorem{remark}{Remark} \newtheorem{note}{Note} \newtheorem*{uremark}{Remark} \newtheorem*{unote}{Note} %------------------------------------------------------------------- \begin{document} %------------------------------------------------------------------- \section*{chain rule} \hypertarget{context}{}\subsubsection*{{Context}}\label{context} \hypertarget{differential_geometry}{}\paragraph*{{Differential geometry}}\label{differential_geometry} [[!include synthetic differential geometry - contents]] \hypertarget{contents}{}\section*{{Contents}}\label{contents} \noindent\hyperlink{statement}{Statement}\dotfill \pageref*{statement} \linebreak \noindent\hyperlink{examples}{Examples}\dotfill \pageref*{examples} \linebreak \noindent\hyperlink{elementary_calculus}{Elementary calculus}\dotfill \pageref*{elementary_calculus} \linebreak \noindent\hyperlink{remarks}{Remarks}\dotfill \pageref*{remarks} \linebreak \noindent\hyperlink{formal_algebra}{Formal algebra}\dotfill \pageref*{formal_algebra} \linebreak \noindent\hyperlink{related_concepts}{Related concepts}\dotfill \pageref*{related_concepts} \linebreak \noindent\hyperlink{references}{References}\dotfill \pageref*{references} \linebreak \hypertarget{statement}{}\subsection*{{Statement}}\label{statement} The \textbf{chain rule} is the statement that [[differentiation]] $d : Diff \to Diff$ is a [[functor]] on [[Diff]]: given two [[smooth function]]s between [[smooth manifold]]s $f : X \to Y$ and $g : Y \to Z$ we have \begin{displaymath} d(g \circ f) : T X \stackrel{d f}{\to} T Y \stackrel{d g}{\to} T Z \,. \end{displaymath} If one thinks of a [[tangent vector]] $v \in T_x X$ to be an equivalence class of a smooth path $\gamma_v : [-\epsilon,\epsilon] \to X$, for some $\epsilon\gt 0$, with $\gamma(0) = x$, then the chain rule is the [[associativity]] of the composite \begin{displaymath} [-\epsilon,\epsilon] \stackrel{\gamma_v}{\to} X \stackrel{f}{\to} Y \stackrel{g}{\to} Z \,. \end{displaymath} Bracketed as $(g \circ f)\circ \gamma_v$ this represents $d(g \circ f)(v)$. Bracketed as $g \circ (f \circ \gamma_v)$ is represents $d g (d f (v))$. Alternatively, in a context of [[synthetic differential geometry]] where with $D$ being the [[infinitesimal space|infinitesimal interval]] we may \emph{identify} $v$ with $v : D \to X$, the chain rule is the associativity of \begin{displaymath} D \stackrel{v}{\to} X \stackrel{f}{\to} Y \stackrel{g}{\to} Z \,. \end{displaymath} \hypertarget{examples}{}\subsection*{{Examples}}\label{examples} \hypertarget{elementary_calculus}{}\subsubsection*{{Elementary calculus}}\label{elementary_calculus} Let $X = Y = Z = \mathbb{R}$ the [[real line]]. Then the [[tangent bundle]] $T X$ is canonically identified with $\mathbb{R} \times \mathbb{R}$. Given two functions, $f, g : \mathbb{R} \to \mathbb{R}$ their derivatives are traditionally regarded again as functions $f', g' : \mathbb{R} \to \mathbb{R}$, though strictly speaking we are to think of them as the maps \begin{displaymath} d f, d g : \mathbb{R} \times \mathbb{R} = T \mathbb{R} \to T \mathbb{R} = \mathbb{R} \times \mathbb{R} \end{displaymath} given by \begin{displaymath} d f : (x,v) \mapsto (f(x), v f'(x)) \end{displaymath} and \begin{displaymath} d g : (x,v) \mapsto (g(x), v g'(x)) \,. \end{displaymath} The composite \begin{displaymath} d (g \circ f) : \mathbb{R} \times \mathbb{R} = T \mathbb{R} \to T \mathbb{R} = \mathbb{R} \times \mathbb{R} \end{displaymath} is therefore the map \begin{displaymath} d(g \circ f) : (x,v) \mapsto (f(x), v f'(x)) \mapsto (g(f(x)), v f'(x) g'(f(x))) \,. \end{displaymath} Therefore we have \begin{displaymath} (g \circ f)'(x) = f'(x) g'(f(x)) \,. \end{displaymath} This is the form in which the chain rule is usually introduced in elementary calculus. \hypertarget{remarks}{}\paragraph*{{Remarks}}\label{remarks} While the chain rule is of great theoretical importance, it is completely unnecessary for the working out of derivatives of elementary functions in ordinary calculus (including the multivariable case). Every result giving the derivative of an elementary function corresponds to a rule (along the lines of the [[product rule]]) for the operation of that function to any expression. For example, instead of learning that \begin{displaymath} \frac{\mathrm{d}}{\mathrm{d}x} (\sin x) = \cos x \end{displaymath} and then applying both this fact \emph{and} the chain rule to find the derivative of an expression of the form $\sin u$, just learn \begin{displaymath} \frac{\mathrm{d}}{\mathrm{d}x} (\sin u) = \cos u \,\frac{\mathrm{d}u}{\mathrm{d}x} \end{displaymath} and apply this rule directly; the original fact is the special case in which $u \coloneqq x$. Even better, learn the rule as \begin{displaymath} \mathrm{d}(\sin u) = \cos u \,\mathrm{d}u ; \end{displaymath} then it applies without further modification to multivariable calculus (as well as implicit differentiation, related rates, integration by substitution, and other stock features of one-variable calculus). The chain rule could still be used in the \emph{proof} of this `sine rule'. Even so, it is quite possible to prove the sine rule directly (much as one proves the product rule directly rather than using the two-variable chain rule and the partial derivatives of the function $x, y \mapsto x y$). In any case, the chain rule is not directly needed when working out specific derivatives. As a \emph{rule} of differentiation, the chain rule is needed only when an unspecified [[differentiable function]] $f$ appears, and then may be given in the form \begin{displaymath} \frac{\mathrm{d}}{\mathrm{d}x} \bigl(f(u)\bigr) = f'(u) \,\frac{\mathrm{d}u}{\mathrm{d}x} \end{displaymath} or \begin{displaymath} \mathrm{d}\bigl(f(u)\bigr) = f'(u) \,\mathrm{d}u \end{displaymath} to match other rules. Although the chain rule is often written as \begin{equation} \frac{\mathrm{d}y}{\mathrm{d}x} = \frac{\mathrm{d}y}{\mathrm{d}u} \, \frac{\mathrm{d}u}{\mathrm{d}x} , \label{trivial}\end{equation} this is an oversimplification. Upon choosing an independent variable, it is possible (and easy) to give a rigorous definition of the [[derivative|differential]] $\mathrm{d}u$, and then \eqref{trivial} is a triviality (assuming no division by zero). However, with such a definition of differential, \eqref{trivial} is \emph{not} the chain rule! The reason is that, when \eqref{trivial} is used as a mnemonic for the chain rule, ${\mathrm{d}u}/{\mathrm{d}x}$ uses $x$ as the independent variable, but ${\mathrm{d}y}/{\mathrm{d}u}$ uses $u$. Either may be chosen to define differentials\footnote{Well, either may be chosen as long as their differentials are nowhere zero, which is exactly what must be true for (1) to make sense. More precisely, given that $x$ works as an independent variable, the Chain Rule tells us that $u$ works just as well so long as $\mathrm{d}u$ (as defined using $x$) is nowhere zero. This may be related to the easy but wrong proof of the Chain Rule that founders on a division by zero in exactly the same place (where $\mathrm{d}u$ would be), although I don't see a direct connection.} , but one must (a priori) be consistent. Now, it so happens that the choice of independent variable is entirely irrelevant; differentials have the same meaning no matter which independent variable is used. But \emph{this} fact requires proof; \emph{it} is the chain rule (or at least a prerequisite for using \eqref{trivial} as the chain rule), and it is \emph{not} a triviality. In this form, the chain rule is also known as \textbf{Cauchy's invariant rule}. \hypertarget{formal_algebra}{}\subsubsection*{{Formal algebra}}\label{formal_algebra} The chain rule can also be discussed as a piece of formal algebra of [[power series]] (over a general [[commutative ring]] $A$). We present a conceptual proof based on considerations of SDG. The statement is that if $q, p \in A[ [x] ]$ are power series, with $0$ the $0^{th}$ (constant) [[coefficient]] of $p$, then $(q \circ p)'(x) = q'(p(x))p'(x)$ under standard definitions. Let $D = A[y]/(y^2)$ be the [[representing object]] for [[derivations]]. Let $\delta: A[ [x] ] \to A[ [x] ] \otimes_A D \cong A[ [x] ][y]/(y^2)$ be the unique topological $A$-algebra map (under the $(x)$-[[adic topologies]]) that sends $x$ to $x + y$. (If it helps, think $\delta(q) = q(x + y)$.) For $p \in A[ [x] ]$, define $p'$ via the equation $\delta(p) = p(x) + p'(x)y$. Let $\pi: A[ [x] ] \otimes_A D \to A[ [x] ] \otimes_A D$ be the unique [[topological algebra]] map taking $x$ to $p(x)$ and $y$ to $p'(x)y$. Let $- \circ p: A[ [x] ] \to A[ [x] ]$ denote the unique topological algebra map that takes $x$ to $p$. Then the diagram \begin{displaymath} \itexarray{ A[ [x] ] & \stackrel{\delta}{\to} & A[ [x] ] \otimes_A D \\ \mathllap{- \circ p} \downarrow & & \downarrow \mathrlap{\pi} \\ A[ [x] ] & \underset{\delta}{\to} & A[ [x] ] \otimes_A D } \end{displaymath} commutes in the category of topological algebras, since the two legs agree when evaluated at the generator $x$. But then, evaluating each leg at a power series $q \in A [ [x]]$, we have \begin{displaymath} [\delta(- \circ p)](q) = \delta(q \circ p) = (q \circ p)(x) + (q \circ p)'(x)y \end{displaymath} and \begin{displaymath} [\pi \delta](q) = \pi(\delta(q)) = \pi(q(x) + q'(x)y) = q(p(x)) + q'(p(x))(p'(x)y) \end{displaymath} whence the coefficients of $y$ agree: $(q \circ p)'(x) = q'(p(x))p'(x)$. \hypertarget{related_concepts}{}\subsection*{{Related concepts}}\label{related_concepts} \begin{itemize}% \item [[natural bundle]] \item [[total derivative]] \item [[(∞,1)-category theory|(∞,1)-]][[categorification]]: [[Goodwillie chain rule]] \end{itemize} \hypertarget{references}{}\subsection*{{References}}\label{references} A [[synthetic mathematics|synthetic]] formalization of the chain rule in [[differential cohesion|differential]] [[cohesive homotopy type theory]] is given in \begin{itemize}% \item [[Felix Wellen]], Lemma 3.5 of \emph{[[schreiber:thesis Wellen|Cartan Geometry in Modal Homotopy Type Theory]]} (\href{https://arxiv.org/abs/1806.05966}{arXiv:1806.05966}) \end{itemize} See also \begin{itemize}% \item Wikipedia, \emph{\href{https://en.wikipedia.org/wiki/Chain_rule}{Chain rule}} \end{itemize} On the [[Goodwillie chain rule]] in [[Goodwillie calculus]]: \begin{itemize}% \item John R. Klein, [[John Rognes]], \emph{A chain rule in the calculus of homotopy functors}, Geom. Topol. 6 (2002) 853-887 (\href{http://arxiv.org/abs/math/0301079}{arXiv:math/0301079}) \item [[Jacob Lurie]], section 6.3 of \emph{[[Higher Algebra]]} \end{itemize} [[!redirects chain rule]] [[!redirects chain law]] [[!redirects Cauchy's invariant rule]] \end{document}