Main Page: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
No edit summary
No edit summary
 
(466 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
In [[multivariable calculus]], the '''implicit function theorem''' is a tool which allows [[relation (mathematics)#Formal definition|relations]] to be converted to [[function (mathematics)|function]]s.  It does this by representing the relation as the [[graph of a function]].  There may not be a single function whose graph is the entire relation, but there may be such a function on a restriction of the [[domain (mathematics)|domain]] of the relation.  The implicit function theorem gives a sufficient condition to ensure that there is such a function.
This is a preview for the new '''MathML rendering mode''' (with SVG fallback), which is availble in production for registered users.


The theorem states that if the equation <math>R(x, y) = 0</math> (an [[implicit function]]) satisfies some mild conditions on its [[partial derivative]]s, then one can in principle solve this equation for <math>y</math>, at least over some small [[interval (mathematics)|interval]]. Geometrically, the [[Locus (mathematics)|locus]] defined by <math>R(x, y) = 0</math> will overlap [[local property|locally]] with the graph of a function <math>y = f(x)</math> (an explicit function, see article on [[implicit function]]s).
If you would like use the '''MathML''' rendering mode, you need a wikipedia user account that can be registered here [[https://en.wikipedia.org/wiki/Special:UserLogin/signup]]
* Only registered users will be able to execute this rendering mode.
* Note: you need not enter a email address (nor any other private information). Please do not use a password that you use elsewhere.


== First example ==
Registered users will be able to choose between the following three rendering modes:
[[Image:Implicit circle.svg|thumb|right|200px|The unit circle can be specified as the level curve <math>f(x,y)=1</math> of the function <math>f(x,y)=x^2 + y^2</math>. Around point A, ''y'' can be expressed as a function <math>y(x)</math>, specifically <math>g_1(x)=\sqrt{1-x^2}</math>. No such function exists around point B.]]
If we define the function <math>f(x,y)=x^2 + y^2</math>, then the equation <math>f(x,y)=1</math> cuts out the [[unit circle]] as the [[level set]] <math>\{ (x,y) | f(x,y) = 1 \}</math>.  There is no way to represent the unit circle as the graph of a function of one variable <math>y = g(x)</math> because for each choice of <math>x \in (-1,1),</math> there are two choices of <math>y</math>, namely <math>\pm\sqrt{1-x^2}</math>.


However, it is possible to represent part of the circle as the graph of a function of one variable.  If we let <math>g_1(x) = \sqrt{1-x^2}</math> for <math>-1 < x < 1</math>, then the graph of <math>y = g_1(x)</math> provides the upper half of the circle.  Similarly, if <math>g_2(x) = -\sqrt{1-x^2}</math>, then the graph of <math>y = g_2(x)</math> gives the lower half of the circle.
'''MathML'''
:<math forcemathmode="mathml">E=mc^2</math>


The purpose of the implicit function theorem is to tell us the existence of functions like <math>g_1(x)</math> and <math>g_2(x)</math>, even in situations where we cannot write down explicit formulas.  It guarantees that <math>g_1(x)</math> and <math>g_2(x)</math> are differentiable, and it even works in situations where we do not have a formula for <math>f(x,y)</math>.
<!--'''PNG'''  (currently default in production)
:<math forcemathmode="png">E=mc^2</math>


== Statement of the theorem ==
'''source'''
Let ''f'' : '''R'''<sup>''n+m''</sup> → '''R'''<sup>''m''</sup> be a [[continuously differentiable]] function.  We think of '''R'''<sup>''n+m''</sup> as the [[Cartesian product]] '''R'''<sup>''n''</sup> &times; '''R'''<sup>''m''</sup>, and we write a point of this product as ('''x''','''y''')&nbsp;=&nbsp;(''x<sub>1</sub>'',&nbsp;...,&nbsp;''x<sub>n</sub>'',&nbsp;''y<sub>1</sub>'',&nbsp;...,&nbsp;''y<sub>m</sub>''). Starting from the given function ''f'', our goal is to construct a function ''g'' : '''R'''<sup>''n''</sup> → '''R'''<sup>''m''</sup> whose graph ('''x''',&nbsp;g('''x''')) is precisely the set of all ('''x''', '''y''') such that ''f''('''x''',&nbsp;'''y''')&nbsp;=&nbsp;'''0'''.
:<math forcemathmode="source">E=mc^2</math> -->


As noted above, this may not always be possible.  We will therefore fix a point ('''a''','''b''')&nbsp;=&nbsp;(''a<sub>1</sub>'',&nbsp;...,&nbsp;''a<sub>n</sub>'',&nbsp;''b<sub>1</sub>'',&nbsp;...,&nbsp;''b<sub>m</sub>'') which satisfies ''f''('''a''',&nbsp;'''b''')&nbsp;=&nbsp;0, and we will ask for a ''g'' that works near the point ('''a''',&nbsp;'''b'''). In other words, we want an [[open set]] ''U'' of '''R'''<sup>''n''</sup>, an open set ''V'' of '''R'''<sup>''m''</sup>, and a function ''g'' : ''U'' → ''V'' such that the graph of ''g'' satisfies the relation ''f'' = 0 on ''U'' &times; ''V''. In symbols,
<span style="color: red">Follow this [https://en.wikipedia.org/wiki/Special:Preferences#mw-prefsection-rendering link] to change your Math rendering settings.</span> You can also add a [https://en.wikipedia.org/wiki/Special:Preferences#mw-prefsection-rendering-skin Custom CSS] to force the MathML/SVG rendering or select different font families. See [https://www.mediawiki.org/wiki/Extension:Math#CSS_for_the_MathML_with_SVG_fallback_mode these examples].


:<math>\{ (\mathbf{x}, g(\mathbf{x})) \mid \mathbf x \in U \} = \{ (\mathbf{x}, \mathbf{y})\in U \times V \mid f(\mathbf{x}, \mathbf{y}) = 0 \}.</math>
==Demos==


To state the implicit function theorem, we need the [[Jacobian matrix and determinant|Jacobian]], also called the ''differential'' or ''total derivative'', of <math>f</math>.  This is the matrix of [[partial derivative]]s of <math>f</math>.  Abbreviating (''a''<sub>1</sub>,&nbsp;...,&nbsp;''a''<sub>n</sub>,&nbsp;''b''<sub>1</sub>,&nbsp;...,&nbsp;''b''<sub>m</sub>) to ('''a''', '''b'''), the Jacobian matrix is
Here are some [https://commons.wikimedia.org/w/index.php?title=Special:ListFiles/Frederic.wang demos]:


:<math>\begin{matrix}
(Df)(\mathbf{a},\mathbf{b}) & = &
\left[\begin{matrix}
\frac{\partial f_1}{\partial x_1}(\mathbf{a},\mathbf{b}) &
    \cdots & \frac{\partial f_1}{\partial x_n}(\mathbf{a},\mathbf{b})\\
\vdots & \ddots & \vdots\\
\frac{\partial f_m}{\partial x_1}(\mathbf{a},\mathbf{b}) & \cdots & \frac{\partial f_m}{\partial x_n}(\mathbf{a},\mathbf{b})
\end{matrix}\right|\left.
\begin{matrix}
\frac{\partial f_1}{\partial y_1}(\mathbf{a},\mathbf{b}) & \cdots & \frac{\partial f_1}{\partial y_m}(\mathbf{a},\mathbf{b})\\
\vdots & \ddots & \vdots\\
\frac{\partial f_m}{\partial y_1}(\mathbf{a},\mathbf{b}) & \cdots & \frac{\partial f_m}{\partial y_m}(\mathbf{a},\mathbf{b})\\
\end{matrix}\right]\\
& = & \begin{bmatrix} X & | & Y  \end{bmatrix}\\
\end{matrix}</math>


where <math>X</math> is the matrix of partial derivatives in the <math>x</math>'s and <math>Y</math> is the matrix of partial derivatives in the <math>y</math>'s. The implicit function theorem says that if <math>Y</math> is an invertible matrix, then there are <math>U</math>, <math>V</math>, and <math>g</math> as desired.  Writing all the hypotheses together gives the following statement.
* accessibility:
** Safari + VoiceOver: [https://commons.wikimedia.org/wiki/File:VoiceOver-Mac-Safari.ogv video only], [[File:Voiceover-mathml-example-1.wav|thumb|Voiceover-mathml-example-1]], [[File:Voiceover-mathml-example-2.wav|thumb|Voiceover-mathml-example-2]], [[File:Voiceover-mathml-example-3.wav|thumb|Voiceover-mathml-example-3]], [[File:Voiceover-mathml-example-4.wav|thumb|Voiceover-mathml-example-4]], [[File:Voiceover-mathml-example-5.wav|thumb|Voiceover-mathml-example-5]], [[File:Voiceover-mathml-example-6.wav|thumb|Voiceover-mathml-example-6]], [[File:Voiceover-mathml-example-7.wav|thumb|Voiceover-mathml-example-7]]
** [https://commons.wikimedia.org/wiki/File:MathPlayer-Audio-Windows7-InternetExplorer.ogg Internet Explorer + MathPlayer (audio)]
** [https://commons.wikimedia.org/wiki/File:MathPlayer-SynchronizedHighlighting-WIndows7-InternetExplorer.png Internet Explorer + MathPlayer (synchronized highlighting)]
** [https://commons.wikimedia.org/wiki/File:MathPlayer-Braille-Windows7-InternetExplorer.png Internet Explorer + MathPlayer (braille)]
** NVDA+MathPlayer: [[File:Nvda-mathml-example-1.wav|thumb|Nvda-mathml-example-1]], [[File:Nvda-mathml-example-2.wav|thumb|Nvda-mathml-example-2]], [[File:Nvda-mathml-example-3.wav|thumb|Nvda-mathml-example-3]], [[File:Nvda-mathml-example-4.wav|thumb|Nvda-mathml-example-4]], [[File:Nvda-mathml-example-5.wav|thumb|Nvda-mathml-example-5]], [[File:Nvda-mathml-example-6.wav|thumb|Nvda-mathml-example-6]], [[File:Nvda-mathml-example-7.wav|thumb|Nvda-mathml-example-7]].
** Orca: There is ongoing work, but no support at all at the moment [[File:Orca-mathml-example-1.wav|thumb|Orca-mathml-example-1]], [[File:Orca-mathml-example-2.wav|thumb|Orca-mathml-example-2]], [[File:Orca-mathml-example-3.wav|thumb|Orca-mathml-example-3]], [[File:Orca-mathml-example-4.wav|thumb|Orca-mathml-example-4]], [[File:Orca-mathml-example-5.wav|thumb|Orca-mathml-example-5]], [[File:Orca-mathml-example-6.wav|thumb|Orca-mathml-example-6]], [[File:Orca-mathml-example-7.wav|thumb|Orca-mathml-example-7]].
** From our testing, ChromeVox and JAWS are not able to read the formulas generated by the MathML mode.


:Let ''f'' : '''R'''<sup>n+m</sup> &rarr; '''R'''<sup>m</sup> be a [[continuously differentiable]] function, and let '''R'''<sup>n+m</sup> have coordinates ('''x''',&nbsp;'''y''').  Fix a point (''a''<sub>1</sub>,...,''a''<sub>n</sub>,''b''<sub>1</sub>,...,''b''<sub>m</sub>)&nbsp;=&nbsp;('''a'',''b''') with ''f''('''a''','''b''')='''c''', where '''c'''&isin; '''R'''<sup>m</sup>.  If the matrix [(∂''f''<sub>i</sub>/∂''y''<sub>j</sub>)('''a''','''b''')] is [[invertible]], then there exists an open set ''U'' containing '''a''', an open set ''V'' containing '''b''', and a unique continuously differentiable function ''g'':''U'' &rarr; ''V'' such that
==Test pages ==
::<math>\{ (\mathbf{x}, g(\mathbf{x}))|\mathbf x \in U  \} = \{ (\mathbf{x}, \mathbf{y}) \in U \times V| f(\mathbf{x}, \mathbf{y}) = \mathbf{c} \}.</math>


===Regularity===
To test the '''MathML''', '''PNG''', and '''source''' rendering modes, please go to one of the following test pages:
*[[Displaystyle]]
*[[MathAxisAlignment]]
*[[Styling]]
*[[Linebreaking]]
*[[Unique Ids]]
*[[Help:Formula]]


It can be proven that whenever we have the additional hypothesis that ''f'' is continuously differentiable up to ''k'' times inside ''U×V'', then the same holds true for the explicit function ''g'' inside ''U'' and
*[[Inputtypes|Inputtypes (private Wikis only)]]
:<math>\frac{\partial  g}{\partial  x_j}(x)=-\left( \frac{\partial f}{\partial y}(x,g(x)) \right)^{-1}  \frac{\partial f}{\partial x_j}(x,g(x)) </math>.
*[[Url2Image|Url2Image (private Wikis only)]]
 
==Bug reporting==
Similarly, if ''f'' is [[analytic function|analytic]] inside ''U×V'', then the same holds true for the explicit function ''g'' inside ''U''.<ref> K. Fritzsche, H. Grauert (2002), [http://books.google.de/books?id=jSeRz36zXIMC&lpg=PP1&dq=fritzsche%20grauert&hl=de&pg=PA34#v=onepage&q&f=false "From Holomorphic Functions to Complex Manifolds"], Springer-Verlag,  page 34. </ref>
If you find any bugs, please report them at [https://bugzilla.wikimedia.org/enter_bug.cgi?product=MediaWiki%20extensions&component=Math&version=master&short_desc=Math-preview%20rendering%20problem Bugzilla], or write an email to math_bugs (at) ckurs (dot) de .
This generalization is called the '''analytic implicit function theorem'''.
 
== The circle example ==
Let us go back to the example of the [[unit circle]]. In this case <math> n=m=1 </math> and <math>f(x,y) = x^2 + y^2 - 1</math>. The matrix of partial derivatives is just a 1×2&nbsp;matrix, given by
 
:<math>\begin{matrix}
(Df)(a,b) & = & \begin{bmatrix}
\frac{\partial f}{\partial x}(a,b) & \frac{\partial f}{\partial y}(a,b)\\
\end{bmatrix}\\
& = & \begin{bmatrix} 2a &  2b  \end{bmatrix}.\\
\end{matrix}</math>
 
Thus, here, <math>Y</math> is just a number; the linear map defined by it is invertible [[iff]] <math>b \neq 0 </math>. By the implicit function theorem we see that we can write the circle in the form <math> y=g(x) </math> for all points where <math> y\neq 0 </math>. For <math> (-1,0) </math> and <math> (1,0) </math> we run into trouble, as noted before.
 
== Application: change of coordinates ==
 
Suppose we have an m-dimensional space, parametrised by a set of coordinates <math> (x_1,\ldots,x_m) </math>. We can introduce a new coordinate system <math> (x'_1,\ldots,x'_m) </math> by supplying m functions <math> h_1\ldots h_m </math>. These functions allow to calculate the new coordinates <math> (x'_1,\ldots,x'_m) </math> of a point, given the point's old coordinates <math> (x_1,\ldots,x_m) </math> using <math> x'_1=h_1(x_1,\ldots,x_m), \ldots,  x'_m=h_m(x_1,\ldots,x_m) </math>. One might want to verify if the opposite is possible: given coordinates <math> (x'_1,\ldots,x'_m) </math>, can we 'go back' and calculate the same point's  original coordinates <math> (x_1,\ldots,x_m) </math>? The implicit function theorem will provide an answer to this question. The (new and old) coordinates <math>(x'_1,\ldots,x'_m, x_1,\ldots,x_m)</math> are related by <math> f=0 </math>, with
:<math>
f(x'_1,\ldots,x'_m,x_1,\ldots x_m)=(h_1(x_1,\ldots x_m)-x'_1,\ldots , h_m(x_1,\ldots, x_m)-x'_m).
</math>
Now the Jacobian matrix of ''f'' at a certain point <math>(a,b)</math> [ where <math>a=(x'_1,\ldots,x'_m), b=(x_1,\ldots,x_m)</math> ] is given by
:<math>\begin{matrix}
(Df)(a,b) & = & \begin{bmatrix}
-1 & \cdots & 0 & \frac{\partial h_1}{\partial x_1}(b) & \cdots & \frac{\partial h_1}{\partial x_m}(b)\\
\vdots & \ddots & \vdots & \vdots & \ddots & \vdots\\
0 & \cdots & -1 & \frac{\partial h_m}{\partial x_1}(b) & \cdots & \frac{\partial h_m}{\partial x_m}(b)\\
\end{bmatrix}\\
& = & \begin{bmatrix} -1_m & | & J  \end{bmatrix}.\\
\end{matrix}</math>
where <math>1_m</math> denotes the <math>m\times m</math> [[identity matrix]], and J is the <math>m\times m</math> matrix of partial derivatives, evaluated at <math>(a,b)</math>. (In the above, these blocks were denoted by X and Y. As it happens, in this particular application of the theorem, neither matrix depends on <math>a</math>.) The implicit function theorem now states that we can locally express <math> (x_1,\ldots,x_m) </math> as a function of <math> (x'_1,\ldots,x'_m) </math> if J is invertible. Demanding J is invertible is equivalent to <math> \det J \neq 0 </math>, thus we see that we can go back from the primed to the unprimed coordinates if the determinant of the Jacobian J is non-zero. This statement is also known as the [[inverse function theorem]].
 
=== Example: polar coordinates ===
 
As a simple application of the above, consider the plane, parametrised by [[polar coordinates]] <math> (R,\theta) </math>. We can go to a new coordinate system ([[cartesian coordinates]]) by defining functions <math>x(R,\theta)=R \cos \theta </math> and
<math>y(R,\theta)=R \sin \theta </math>. This makes it possible given any point <math> (R,\theta) </math> to find corresponding cartesian coordinates <math> (x,y) </math>. When can we go back and convert cartesian into polar coordinates? By the previous example, we need <math> \det J \neq 0 </math>, with
:<math>
=\begin{bmatrix}
\frac{\partial x(R,\theta)}{\partial R} & \frac{\partial x(R,\theta)}{\partial \theta} \\
\frac{\partial y(R,\theta)}{\partial R} & \frac{\partial y(R,\theta)}{\partial \theta} \\
\end{bmatrix}=
\begin{bmatrix}
\cos \theta & -R \sin \theta \\
\sin \theta & R \cos \theta
\end{bmatrix}.
</math>
Since <math> \det J = R </math>, the conversion back to polar coordinates is only possible if <math> R\neq 0 </math>. This is a consequence of the fact that at the origin, polar coordinates don't exist: the value of <math> \theta </math>
is not well-defined.
 
== Generalizations ==
=== Banach space version ===
 
Based on the [[inverse function theorem]] in [[Banach space]]s, it is possible to extend the implicit function theorem to Banach space valued mappings.
 
Let <math>X</math>, <math>Y</math>, <math>Z</math> be [[Banach space]]s. Let the mapping <math>f:X\times Y\to Z</math> be continuously [[Frechet differentiable|Fréchet differentiable]]. If <math>(x_0,y_0)\in X\times Y</math>, <math>f(x_0,y_0)=0</math>, and <math>y\mapsto Df(x_0,y_0)(0,y)</math> is a Banach space isomorphism from <math>Y</math> onto <math>Z</math>, then there exist neighbourhoods <math>U</math> of <math>x_0</math> and <math>V</math> of <math>y_0</math> and a Frechet differentiable function <math>g:U\to V</math> such that <math>f(x,g(x))=0</math> and <math>f(x,y)=0</math> if and only if <math>y=g(x)</math>, for all <math>(x,y)\in U\times V</math>.
 
=== Implicit functions from non-differentiable functions ===
Various forms of the implicit function theorem exist for the case when the function <math>f</math> is not differentiable.  It is standard that it holds in one dimension.<ref>L. D. Kudryavtsev, "Implicit function" in Encyclopedia of Mathematics,M. Hazewinkel, Ed. Dordrecht, The Netherlands: Kluwer, 1990.</ref> The following more general form was proven by Kumagai<ref>S. Kumagai, "An implicit function theorem: Comment," ''Journal of Optimization Theory and Applications'', 31(2):285-288, June 1980.</ref> based on an observation by Jittorntrum.<ref>K. Jittorntrum, "An Implicit Function Theorem", ''Journal of Optimization Theory and Applications'', 25(4), 1978.</ref>
 
Consider a continuous function <math>f : R^n \times R^m \rightarrow R^n</math> such that <math>f(x_0, y_0) = 0</math>.  '''If''' there exist open neighbourhoods <math>A \subset R^n</math> and <math>B \subset R^m</math> of <math>x_0</math> and <math>y_0</math>, respectively, such that, for all <math>y \in B</math>, <math>f(\cdot, y) : A \rightarrow R^n</math> is locally one-to-one '''then''' there exist open neighbourhoods <math>A_0 \subset R^n</math> and <math>B_0 \subset R^m</math> of <math>x_0</math> and <math>y_0</math>,
such that, for all <math>y \in B_0</math>, the equation
:<math>f(x, y) = 0</math>
has a unique solution
:<math>x = g(y) \in A_0</math>,
where <math>g</math> is a continuous function from <math>B_0</math> into <math>A_0</math>.
 
== See also ==
*[[Constant rank theorem]]: Both the implicit function theorem and the [[Inverse function theorem]] can be seen as special cases of the constant rank theorem.
 
==Notes==
{{refs}}
 
== References ==
*{{springer
| title=Implicit function
| id= i/i050310
| last= Kudryavtsev
| first= L.D.
| author-link=Lev Dmitrievich Kudryavtsev
}}
*{{springer
| title=Implicit function (in algebraic geometry)
| id= i/i050320
| last= Danilov
| first= V.I.
| author-link=
}}
 
{{DEFAULTSORT:Implicit Function Theorem}}
[[Category:Theorems in calculus]]
[[Category:Theorems in real analysis]]
 
[[ca:Teorema de la funció implícita]]
[[de:Satz von der impliziten Funktion]]
[[es:Teorema de la función implícita]]
[[fr:Théorème des fonctions implicites]]
[[gl:Teorema da función implícita]]
[[ko:음함수 정리]]
[[it:Teorema delle funzioni implicite]]
[[he:משפט הפונקציות הסתומות]]
[[kk:Айқындалмаған функция]]
[[hu:Implicitfüggvény-tétel]]
[[nl:Impliciete functiestelling]]
[[ru:Теорема о неявной функции]]
[[scn:Tiurema dâ funzioni mplicita]]
[[sv:Implicita funktionssatsen]]
[[uk:Теорема про неявну функцію]]
[[zh:隐函数定理]]

Latest revision as of 22:52, 15 September 2019

This is a preview for the new MathML rendering mode (with SVG fallback), which is availble in production for registered users.

If you would like use the MathML rendering mode, you need a wikipedia user account that can be registered here [[1]]

  • Only registered users will be able to execute this rendering mode.
  • Note: you need not enter a email address (nor any other private information). Please do not use a password that you use elsewhere.

Registered users will be able to choose between the following three rendering modes:

MathML

E=mc2


Follow this link to change your Math rendering settings. You can also add a Custom CSS to force the MathML/SVG rendering or select different font families. See these examples.

Demos

Here are some demos:


Test pages

To test the MathML, PNG, and source rendering modes, please go to one of the following test pages:

Bug reporting

If you find any bugs, please report them at Bugzilla, or write an email to math_bugs (at) ckurs (dot) de .