Théorème de Weierstrass des Valeurs Extrêmes
Pourquoi, dans tant de problèmes d’optimisation, considère-t-on presque comme évident que « le maximum existe » ou qu’« il y a toujours un minimum » sur un certain intervalle, alors qu’en réalité rien n’obliga a priori à ce que cela se produise? Le Théorème de Weierstrass est la pièce manquante de ce puzzle: il garantit qu’une fonction continue définie sur un intervalle fermé et borné non seulement est bornée, mais atteint effectivement ses valeurs extrêmes. Dans cette entrée, nous examinons son énoncé, construisons en détail une démonstration rigoureuse fondée sur la continuité ponctuelle, la compacité et l’axiome du supremum, et commentons son interprétation moderne en termes de fonctions continues sur des ensembles compacts. L’objectif est qu’à la fin vous ne reteniez pas seulement le théorème comme une phrase, mais que vous compreniez pourquoi il est vrai et pourquoi il apparaît de manière récurrente en analyse, en optimisation et dans des modèles appliqués.
Objectifs d’apprentissage
- Comprendre l’énoncé du Théorème de Weierstrass.
Identifier avec précision les hypothèses du théorème (fonction continue sur un intervalle fermé et borné [a,b]) et ses conclusions principales: bornitude et existence de valeurs maximale et minimale. - Interpréter le Théorème de Weierstrass en termes de compacité.
Formuler le résultat en langage moderne: les fonctions continues envoient des ensembles compacts vers des ensembles où les valeurs extrêmes sont atteintes, reliant le cas de [a,b] au cadre général de l’analyse réelle. - Relier le Théorème de Weierstrass aux problèmes d’optimisation.
Reconnaître le rôle du théorème comme fondement théorique de l’existence de maxima et minima dans de nombreux problèmes d’optimisation en une variable, tant dans des contextes théoriques qu’appliqués.
INDEX DES CONTENUS:
Introduction
Énoncé du Théorème de Weierstrass
Démonstration
Étape 1: Continuité ponctuelle sur [a,b]
Étape 2: Recouvrement ouvert associé à la continuité
Étape 3: Compacité de [a,b] et sous-recouvrement fini
Étape 4: Construction d’un \delta indépendant de x_0 (continuité uniforme)
Étape 5: De la continuité uniforme à la bornitude de f sur [a,b]
Étape 6: Existence de valeurs maximale et minimale
Interprétation en termes de compacité et conclusion
Introduction
Le Théorème de Weierstrass des Valeurs Extrêmes est l’un de ces résultats qui, bien qu’il apparaisse généralement dans les premières unités d’Analyse Réelle, soutient en réalité de manière silencieuse une grande partie des mathématiques appliquées. Chaque fois qu’en physique, en économie ou en statistique nous parlons de « maximiser » ou de « minimiser » une quantité soumise à certaines contraintes, nous utilisons en arrière-plan une idée très proche de celle que garantit ce théorème: une fonction continue définie sur un intervalle fermé et borné non seulement est bornée, mais atteint effectivement ses valeurs extrêmes.
Intuitivement, il peut sembler « évident » que si nous traçons une courbe continue sur un segment [a,b], alors il doit exister un point le plus élevé et un point le plus bas. Cependant, il suffit d’effectuer de petits changements dans les hypothèses pour que cette intuition échoue de manière spectaculaire: si nous ouvrons l’intervalle, si la fonction cesse d’être continue ou si le domaine n’est pas borné, les maxima et minima peuvent simplement disparaître. Le Théorème de Weierstrass met de l’ordre dans cette intuition et nous indique précisément quand nous pouvons nous y fier et pourquoi.
D’un point de vue théorique, ce théorème constitue la première rencontre sérieuse avec l’idée de compacité: dans le langage moderne, il affirme qu’une fonction continue transforme des ensembles compacts en ensembles compacts. D’un point de vue pratique, cela se traduit par l’existence de solutions pour de nombreux problèmes d’optimisation en une dimension, et sera un élément clé pour des résultats ultérieurs tels que le Théorème des Accroissements Finis et, en dernière instance, pour comprendre sereinement le Théorème Fondamental du Calcul.
Dans cette section, nous énoncerons le Théorème de Weierstrass et développerons en détail sa démonstration, en nous appuyant sur la notion de continuité sur [a,b] et sur l’axiome du supremum. L’idée est que ce texte vous serve de référence solide: aussi bien pour étudier le résultat lui-même que pour y revenir chaque fois que vous aurez besoin de l’utiliser pour démontrer d’autres théorèmes ou pour justifier rigoureusement l’existence de maxima et minima dans des problèmes concrets.
Énoncé du Théorème de Weierstrass
Toute fonction f définie et continue sur [a,b], est bornée et possède des valeurs minimale et maximale, m et M, telles que si x\in[a,b], alors f(x)\in[m,M]. |
Démonstration
Montrons que si f:[a,b]\to\mathbb{R} est continue sur l’intervalle fermé et borné [a,b], alors f est bornée et atteint une valeur maximale et une valeur minimale sur [a,b]. Nous diviserons la démonstration en deux grandes parties:
- Tout d’abord, nous montrerons que la continuité de f sur [a,b] implique que f est uniformément continue, et à partir de cela nous déduirons qu’elle est bornée.
- Ensuite, en utilisant l’axiome du supremum, nous prouverons que f atteint ses valeurs maximale et minimale sur l’intervalle.
Étape 1: Continuité ponctuelle sur [a,b]
Par hypothèse, f est continue en chaque point x_0\in[a,b]. Selon la définition de la continuité en termes de \epsilon et \delta, cela signifie que:
\displaystyle (\forall x_0\in[a,b])(\forall \epsilon\gt 0)(\exists \delta(x_0)\gt 0) \big(|x-x_0|\lt\delta(x_0)\Rightarrow |f(x)-f(x_0)|\lt\epsilon\big).
À ce stade, le nombre \delta(x_0) peut dépendre du point x_0. Notre objectif immédiat sera de construire, à partir de ces \delta(x_0), un nombre unique \delta qui ne dépende pas de x_0 et qui fonctionne simultanément pour tous les points de l’intervalle.
Étape 2: Recouvrement ouvert associé à la continuité
Fixons un \epsilon\gt 0 quelconque. Pour chaque x_0\in[a,b], la continuité de f nous permet de choisir un nombre \delta(x_0)\gt 0 tel que
\displaystyle |x-x_0|\lt\delta(x_0)\Rightarrow |f(x)-f(x_0)|\lt\frac{\epsilon}{2}.
À partir de ces valeurs, nous définissons, pour chaque x_0\in[a,b], un intervalle ouvert
\displaystyle I_{x_0}=\left(x_0-\frac{\delta(x_0)}{2},\,x_0+\frac{\delta(x_0)}{2}\right).
Chaque I_{x_0} est un ensemble ouvert dans \mathbb{R} et, de plus, la famille
\displaystyle \{I_{x_0}\}_{x_0\in[a,b]}
forme un recouvrement ouvert de [a,b]. En effet, étant donné un point quelconque y\in[a,b], il suffit de prendre x_0=y ; par construction, y\in I_y. Ainsi, chaque point de l’intervalle appartient à au moins un des ouverts I_{x_0}.
Cette famille d’ouverts est en général infinie (il y en a un pour chaque x_0\in[a,b]). C’est ici qu’intervient la compacité de [a,b].
Étape 3: Compacité de [a,b] et sous-recouvrement fini
Nous savons, d’après le Théorème de Heine–Borel, qu’un sous-ensemble de \mathbb{R} est compact si et seulement s’il est fermé et borné. L’intervalle [a,b] est fermé et borné, donc il est compact. Par définition de la compacité, cela signifie que :
De tout recouvrement ouvert de [a,b] (même s’il contient une infinité d’ensembles), on peut extraire un sous-recouvrement fini.
En appliquant cette propriété au recouvrement ouvert \{I_{x_0}\}_{x_0\in[a,b]}, il s’ensuit qu’il existe des points x_1,\dots,x_N\in[a,b] tels que les intervalles correspondants
\displaystyle I_{x_1},\, I_{x_2},\,\dots,\,I_{x_N}
ils continuent de recouvrir tout l’intervalle :
\displaystyle [a,b]\subset I_{x_1}\cup I_{x_2}\cup\cdots\cup I_{x_N}.
Nous sommes ainsi passés d’une famille infinie d’intervalles ouverts à un sous-recouvrement contenant seulement un nombre fini d’intervalles, sans perdre la propriété de recouvrir [a,b].
Étape 4: Construction d’un \delta qui ne dépend pas de x_0 (continuité uniforme)
À partir du sous-recouvrement fini, nous définissons le nombre
\displaystyle \delta=\min\left\{\frac{\delta(x_1)}{2},\frac{\delta(x_2)}{2},\dots,\frac{\delta(x_N)}{2}\right\}.
Comme il s’agit du minimum d’un ensemble fini de nombres positifs, il s’ensuit que \delta\gt 0. Nous allons montrer que ce \delta fonctionne pour tout point x_0\in[a,b], c’est-à-dire qu’il ne dépend pas du choix de x_0.
Considérons maintenant :
- un point arbitraire x_0\in[a,b], et
- un point x\in[a,b] tel que |x-x_0|\lt\delta.
Comme les intervalles I_{x_1},\dots,I_{x_N} recouvrent [a,b], le point x_0 appartient à au moins l’un d’eux, disons à I_{x_j} pour un certain j\in\{1,\dots,N\}. Par la définition de I_{x_j}, cela signifie que
\displaystyle |x_0-x_j|\lt\frac{\delta(x_j)}{2}.
De plus, par la définition de \delta, nous avons \delta\le\frac{\delta(x_j)}{2}, de sorte que de |x-x_0|\lt\delta il s’ensuit
\displaystyle |x-x_0|\lt\frac{\delta(x_j)}{2}.
En appliquant l’inégalité triangulaire,
\displaystyle |x-x_j|\le |x-x_0|+|x_0-x_j| \lt \frac{\delta(x_j)}{2}+\frac{\delta(x_j)}{2} =\delta(x_j).
Par le choix de \delta(x_j) (continuité de f en x_j pour la valeur \epsilon/2), les inégalités |x_0-x_j|\lt\delta(x_j) et |x-x_j|\lt\delta(x_j) impliquent
\displaystyle |f(x_0)-f(x_j)|\lt\frac{\epsilon}{2} \quad\text{et}\quad |f(x)-f(x_j)|\lt\frac{\epsilon}{2}.
En utilisant de nouveau l’inégalité triangulaire, on obtient
\displaystyle |f(x)-f(x_0)| \le |f(x)-f(x_j)| + |f(x_j)-f(x_0)| \lt \frac{\epsilon}{2}+\frac{\epsilon}{2} =\epsilon.
Comme x_0 et x étaient arbitraires, nous avons démontré que pour le \epsilon fixé au départ, il existe un \delta\gt 0, indépendant de x_0, tel que
\displaystyle (\forall x_0\in[a,b])(\forall x\in[a,b]) \big(|x-x_0|\lt\delta\Rightarrow |f(x)-f(x_0)|\lt\epsilon\big).
Si l’on renomme x_0 comme y, cela s’écrit :
\displaystyle (\forall \epsilon\gt 0)(\exists \delta\gt 0)(\forall x,y\in[a,b]) \big(|x-y|\lt\delta\Rightarrow |f(x)-f(y)|\lt\epsilon\big),
ce qui est précisément la définition de la continuité uniforme de f sur [a,b]. Dans ce qui suit, nous n’aurons besoin d’appliquer ce résultat qu’au cas \epsilon=1.
Étape 5: De la continuité uniforme à la bornitude de f sur [a,b]
Appliquons maintenant la continuité uniforme avec \epsilon=1. Il existe un nombre \delta_1\gt 0 tel que pour tous x,y\in[a,b] on ait
\displaystyle |x-y|\lt\delta_1\Rightarrow |f(x)-f(y)|\lt 1.
Nous divisons à présent l’intervalle [a,b] en une quantité finie de sous-intervalles dont la longueur est inférieure à \delta_1. Autrement dit, nous choisissons un entier n et des points
\displaystyle a = x_0 \lt x_1 \lt \cdots \lt x_n = b
de sorte que pour chaque k=0,1,\dots,n-1] on ait
\displaystyle x_{k+1}-x_k\lt\delta_1.
Considérons maintenant l’ensemble fini de valeurs
\displaystyle \{f(x_0),f(x_1),\dots,f(x_{n-1})\}.
Comme il s’agit d’un ensemble fini de réels, nous pouvons définir sans difficulté
\displaystyle C = \max\{|f(x_k)| \;|\; k=0,1,\dots,n-1\}.
Nous allons montrer que C+1 est une borne supérieure en valeur absolue pour f sur tout l’intervalle [a,b]. Soit x\in[a,b] un point arbitraire. Il existe alors un indice k tel que x\in[x_k,x_{k+1}]. En particulier,
\displaystyle |x-x_k|\le x_{k+1}-x_k\lt\delta_1.
Par la continuité uniforme avec \epsilon=1, de |x-x_k|\lt\delta_1 il s’ensuit que
\displaystyle |f(x)-f(x_k)|\lt 1.
En utilisant l’inégalité triangulaire :
\displaystyle |f(x)|\le |f(x)-f(x_k)| + |f(x_k)| \lt 1 + |f(x_k)| \le 1 + C.
Comme x\in[a,b] était arbitraire, nous concluons que
\displaystyle |f(x)|\le C+1 \quad \text{pour tout } x\in[a,b],
c’est-à-dire que la fonction f est bornée sur [a,b].
Étape 6: Existence de valeurs maximale et minimale
Définissons l’ensemble des valeurs prises par la fonction sur l’intervalle :
\displaystyle H=\{f(x)\;|\;x\in[a,b]\}\subset\mathbb{R}.
Nous savons déjà que H n’est pas vide (car [a,b] ne l’est pas) et qu’il est borné, donc par l’axiome du supremum il existe des réels
\displaystyle M=\sup H,\qquad m=\inf H.
Montrons que M est atteint comme valeur de la fonction, c’est-à-dire qu’il existe x_1\in[a,b] tel que f(x_1)=M. Nous procéderons par l’absurde.
Supposons que f(x) n’atteigne jamais la valeur M, c’est-à-dire :
\displaystyle (\forall x\in[a,b])\big(f(x)\lt M\big).
Sous cette hypothèse, la fonction
\displaystyle g(x)=\frac{1}{M-f(x)}
est bien définie et positive pour tout x\in[a,b], puisque par hypothèse M-f(x)\gt 0. De plus, comme f est continue et M est constante, la fonction g l’est également. D’après la première partie de la démonstration, toute fonction continue sur [a,b] est bornée, il existe donc un nombre N\gt 0 tel que
\displaystyle (\forall x\in[a,b])\big(g(x)\le N\big).
En particulier, pour tout x\in[a,b], on vérifie que
\displaystyle \frac{1}{M-f(x)} = g(x)\le N,
ce qui équivaut à
\displaystyle M-f(x)\ge \frac{1}{N} \quad\Rightarrow\quad f(x)\le M-\frac{1}{N}.
Cela signifie que toutes les valeurs de f(x) sur [a,b] sont inférieures ou égales à M-\frac{1}{N}. En particulier, le supremum de H satisfait
\displaystyle \sup H\le M-\frac{1}{N}\lt M,
ce qui contredit la définition de M comme supremum de H. Par conséquent, notre hypothèse initiale était fausse, et il doit exister un point x_1\in[a,b] tel que
\displaystyle f(x_1)=M.
Un raisonnement entièrement analogue, appliqué à l’infimum m=\inf H (par exemple, en considérant la fonction h(x)=-f(x)), montre qu’il existe un point x_2\in[a,b] tel que
\displaystyle f(x_2)=m.
Interprétation en termes de compacité et conclusion
Nous avons montré que toute fonction continue f:[a,b]\to\mathbb{R} est bornée et atteint ses valeurs maximale et minimale sur [a,b]. Dans le langage moderne de l’analyse, cela s’interprète en disant que, dans \mathbb{R}, les intervalles fermés et bornés tels que [a,b] sont des ensembles compacts et que les fonctions continues envoient les ensembles compacts dans des ensembles compacts.
En particulier, si I est compact et si f est continue sur I, alors l’image f(I) est un sous-ensemble compact de \mathbb{R}. Cela garantit que f(I) est borné et qu’il y existe effectivement une valeur maximale et une valeur minimale, ce qui constitue précisément le contenu du Théorème de Weierstrass.
