Теорема Больцано-Коши состоит из двух частей:
Начнём с первой теоремы — она часто используется при доказательстве второй. А в конце будет пара важных пояснений.
Теорема 1. (о нуле непрерывной функции). Пусть функция $f\left( x \right)$ непрерывна на отрезке $\left[ a;b \right]$. Пусть также на концах этого отрезка она принимает значения разных знаков, т.е. $f\left( a \right)\cdot f\left( b \right) \lt 0$.
Тогда существует число $c\in \left( a;b \right)$ такое, что $f\left( c \right)=0$.
Интуитивно теорема кажется очевидной: чтобы соединить две точки по разные стороны от оси $OX$ непрерывной линией, придётся в какой-то момент пересечь ось $OX$. Таких пересечений может быть несколько:
А может быть лишь одно. Но пересечение будет обязательно:
Докажем это.
Будем доказывать методом Больцано. Без ограничения общности положим $f\left( a \right) \lt 0$ и $f\left( b \right) \gt 0$.
Обозначим отрезок ${{I}_{0}}=\left[ a;b \right]$ и разделим его пополам точкой ${{c}_{1}}={\left( a+b \right)}/{2}\;$. Возможны три варианта:
Суть в том, что $f\left( {{c}_{1}} \right)$ имеет знак, отличный либо от $f\left( a \right)$, либо от $f\left( b \right)$. И в качестве ${{I}_{1}}$ мы выбираем ту половину ${{I}_{0}}$, у которой знаки $f\left( x \right)$ на концах различаются.
Далее делим ${{I}_{1}}=\left[ {{a}_{1}};{{b}_{1}} \right]$ пополам точкой ${{c}_{2}}={\left( {{a}_{1}}+{{b}_{1}} \right)}/{2}\;$, считаем $f\left( {{c}_{2}} \right)$ и, если нужно, выбираем ${{I}_{2}}$.
Повторяя эту процедуру много раз, мы либо наткнёмся на некое ${{c}_{n}}$ такое, что $f\left( {{c}_{n}} \right)=0$, либо построим последовательность стягивающихся отрезков
\[{{I}_{1}}\supset {{I}_{2}}\supset \ldots \supset {{I}_{n}}\supset \ldots \]
Длина этих отрезков $\left| {{I}_{n}} \right|=\left| a-b \right|\cdot {{2}^{-n}}$ стремится к нулю при $n\to +\infty $. Следовательно, по лемме о стягивающихся отрезках существует единственная точка $c\in {{I}_{n}}$ для всех $n\in \mathbb{N}$.
Далее обозначим концы ${{I}_{n}}=\left[ {{a}_{n}};{{b}_{n}} \right]$ и рассмотрим последовательность левых концов $\left\{ {{a}_{n}} \right\}$ и последовательность правых концов $\left\{ {{b}_{n}} \right\}$. Очевидно, что ${{a}_{n}}\to c$ и ${{b}_{n}}\to c$ при $n\to +\infty $.
Но функция $f\left( x \right)$ непрерывна на отрезке $\left[ a;b \right]$. Следовательно, она непрерывна в точке $c\in \left[ a;b \right]$. Вспомним определение непрерывности по Гейне:
\[\begin{align} \lim\limits_{n\to \infty }f\left( {{a}_{n}} \right) &=f\left( c \right) \\ \lim\limits_{n\to \infty }f\left( {{b}_{n}} \right) &=f\left( c \right) \\ \end{align}\]
С другой стороны, мы выбирали ${{a}_{n}}$ и ${{b}_{n}}$ так, что $f\left( {{a}_{n}} \right) \lt 0$ и $f\left( {{b}_{n}} \right) \gt 0$. Тогда по свойству пределов:
\[\begin{align} f\left( {{a}_{n}} \right) \lt 0 & \Rightarrow \lim\limits_{n\to \infty }f\left( {{a}_{n}} \right)=f\left( c \right)\le 0 \\ f\left( {{b}_{n}} \right) \gt 0 & \Rightarrow \lim\limits_{n\to \infty }f\left( {{b}_{n}} \right)=f\left( c \right)\ge 0 \\ \end{align}\]
Но тогда
\[\lim\limits_{n\to \infty }f\left( {{a}_{n}} \right)\cdot f\left( {{b}_{n}} \right)={{f}^{2}}\left( c \right)\le 0\]
Откуда $f\left( c \right)=0$, что и требовалось доказать.
Берём отрезок $I=\left[ a;b \right]$ , делим его пополам и шаг за шагом выбираем ту половинку ${{I}_{n}}=\left[ {{a}_{n}};{{b}_{n}} \right]$, для которой $f\left( {{a}_{n}} \right)\cdot f\left( {{b}_{n}} \right) \lt 0$. В конце концов мы:
Теорема полностью доказана. А вся идея доказательства уместилась в двух пунктах. Плюс лемма о стягивающихся отрезках, которые должны иметь ровно одну общую точку.:)
Замечание 1. В начале доказательства были произнесены слова «без ограничения общности». Это следует понимать так: ничего не поменяется, если мы дополнительно потребуем, чтобы $f\left( a \right) \lt 0$ и $f\left( b \right) \gt 0$.
В конце концов, неравенство $f\left( a \right)\cdot f\left( b \right) \lt 0$ выполняется либо при $f\left( a \right) \lt 0$ и $f\left( b \right) \gt 0$, либо при $f\left( a \right) \gt 0$ и $f\left( b \right) \lt 0$. Но это никак не повлияет на доказательство, о чём можно дополнительно написать в конце рассуждений.
Переходим к обобщению теоремы о нуле непрерывной функции — это будет та самая теорема, которая изначально и называлась теоремой Больцано-Коши.
Теорема 2. Путь функция $f\left( x \right)$ непрерывна на отрезке $\left[ a;b \right]$, причём $f\left( a \right)=m$, $f\left( b \right)=M$ и $m\ne M$. Пусть также $c$ — любое число, которое удовлетворяет условию
\[\begin{align} m & \le c\le M\left( m \lt M \right) \\ M & \le c\le m\left( M \lt m \right) \\ \end{align}\]
Тогда найдётся точка ${{x}_{0}}\in \left[ a;b \right]$ такая, что $f\left( {{x}_{0}} \right)=c$.
Это и есть теорема о промежуточном значении непрерывной функции. Графически это выглядит так:
Интуитивно всё понятно. Теперь докажем теорему строго.
Вновь без ограничения общности положим $m \lt M$ и зафиксируем точку $c\in \left[ m;M \right]$. Если $c=m=f\left( a \right)$, то ${{x}_{0}}=a$. Если $c=M=f\left( b \right)$, то ${{x}_{0}}=b$.
Пусть теперь $m \lt c \lt M$. Рассмотрим функцию $g\left( x \right)=f\left( x \right)-c$. Она непрерывна на отрезке $\left[ a;b \right]$, как и функция $f\left( x \right)$. Поэтому
\[\begin{align} g\left( a \right) & =f\left( a \right)-c=m-c \lt 0 \\ g\left( b \right) & =f\left( b \right)-c=M-c \gt 0 \\ \end{align}\]
Следовательно, функция $g\left( x \right)$ принимает на концах отрезка значения разных знаков:
\[g\left( a \right)\cdot g\left( b \right) \lt 0\]
По теореме о нуле непрерывной функции найдётся точка ${{x}_{0}}\in \left[ a;b \right]$ такая, что
\[\begin{align} g\left( {{x}_{0}} \right) & =0 \\ f\left( {{x}_{0}} \right)-c & =0 \\ f\left( {{x}_{0}} \right) & =c\end{align}\]
Итак, мы предъявили точку ${{x}_{0}}\in \left[ a;b \right]$ такую, что $f\left( {{x}_{0}} \right)=c$. Теорема доказана.
Иногда в курсе матанализа основная теорема Больцано-Коши, которую мы только что доказали, формулируется и доказывается первой. В этом случае теорема о нуле непрерывной функции становится ещё частным случаем (для $c=0$). Впрочем, из последнего доказательства легко видеть, что эти теоремы эквивалентны.
Часто в учебниках (и на многих сайтах) эти теоремы нумеруют:
Всё это порождает путаницу, особенно когда в экзаменационных билетах написано одно, а на лекциях теорема называлась по-другому. Однако суть теорем от этого никак не меняется.
Важно понимать, что обе теоремы отражают универсальные свойства непрерывных функций. Они работают именно на отрезках, но могут быть обобщены на произвольный компакт (об этом — в отдельном уроке по топологии).