Зачем нужен функциональный анализ будущим специалистам по прикладной математике и информатике

Если Вам учиться легко, то Вы либо очень способны, либо Вас ничему не учат. Татьяна Толстая

Меня (Дениса Антипова) недавно попросили написать текст о том, зачем на кафедре «Компьютерные технологии» (КТ) Университета ИТМО нужен такой предмет, как функциональный анализ (как говорят студенты, функан), так как этот вопрос возникает не только среди студентов, но даже и преподавателей.

Существует и противоположная точка зрения: один наш выдающийся выпускник сказал, что никогда не стеснялся того, что закончил нашу кафедру, так как в программу, когда он учился, входили такие предметы, как функан и теория функций комплексной переменной. Другой незаурядный выпускник сказал, что после изучения функана, он лучше понял матан (математический анализ), а один наш феллоу пошутил: «А о чем можно разговаривать с человеком, который не слушал функан?»

Меня, в первую очередь, удивил сам факт того, что у студентов и преподавателей возникает вопрос необходимости этого предмета в учебной программе. Во-первых, для меня вопрос «зачем нужен функан на КТ» стоит в одном ряду с вопросом «зачем нужна математика в школе». Он кажется нелепым по той причине, что функциональный анализ является одним из базовых математических предметов, что пояснено ниже.

Вопрос студентов удивил меня также и тем, что он задается несмотря на то, что в наше время у всех есть доступ в Интернет. Если погуглить, то легко найти обсуждение этой темы. Например, по запросу Why learn functional analysis сразу можно выйти на [1], где приведены примеры применения и причины необходимости функционального анализа в учебной программе по прикладной математике. Указанное обсуждение является далеко не единственным в сети на эту тему. Если же вопрос ставить не только про функциональный анализ, а более общий: зачем вообще нужна чистая математика в учебных программах для обучающихся прикладной математике, то, опять, по запросу Why we learn pure math можно найти обсуждение и этого вопроса, например, в [2]. Правда, для всего этого надо знать английский язык. А тот, кто его не знает или не хочет знать, может затеять дискуссию, зачем в институте учить иностранный язык, и такое можно устроить с любым предметом, который дается весьма непросто, например, с физвоспитанием.

Далее, меня удивило то, что студенты в течение многих лет не задавали этот вопрос на нашей кафедре (у них, по крайней мере, «не поворачивался язык» говорить об этом), и только в последние годы они не стесняются его задавать, причем в такой, например, форме: «Если я собираюсь делать сайты, то зачем мне нужны функан и диффуры?» Возникает вопрос, а туда ли они поступили, и мне кажется, что с такой мотивацией они скоро с кафедры куда-то исчезнут.

Меня удивило также, и то, что люди не задали этот вопрос много лет преподающему функан Николаю Юрьевичу Додонову, который преподает его не только у нас, но и на Матмехе СПбГУ, или хотя бы мне, так как многие знают, что я имею отношение к преподаванию математики на кафедре. Мы могли бы объяснить или хотя бы посоветовать посмотреть, например, книгу [3], которая хотя и была издана давно, но приведенные в ней примеры актуальны до сих пор.

Несмотря на это, я, все-таки, понимаю необходимость написания этого текста. При этом я своей задачей ставлю именно сбор разобщенной информации в одном месте. Хорошо, что у меня под рукой есть много источников информации, и поэтому могу просто процитировать известных людей, которые умнее меня вместо того, чтобы формулировать какие-то мысли самому. Хотя ближе к концу я добавлю и некоторые свои рассуждения.

На самом деле вопрос необходимости функана куда более глубокий, чем кажется, и уходит корнями в философские вопросы о методах познания. Для начала вспомним, что в Новое время (в XVII веке) появились два основных направления в философии науки – эмпиризм и рационализм, которые во многом противопоставляли себя друг другу [4]. В основе классического рационализма, главные принципы которого были сформулированы Декартом [5], лежит идея возможности логического познания мира. Она берет свое начало еще из «Аналитик» Аристотеля [6]. Эмпиризм, основателем которого принято считать Бэкона [7], напротив, считает возможным только чувственное восприятие мира и ставит единственным критерием истинности эксперимент.

В наше время большинство ученых сходится в том, что ни экспериментальная, ни теоретическая наука не самодостаточны, а дополняют друг друга, и потому они обе необходимы для расширения человеческих знаний. Более подробное рассуждение на эту тему в области эволюционных вычислений можно найти в первой части [8].

Разумеется, стоит признать, что до сих пор даже среди ученых встречаются люди, не признающие чисто теоретические или чисто практические работы (первые встречаются чаще). В этом я убедился на недавней International Conference on Parallel Problem Solving from Nature (PPSN 2018), где потратил минут десять своего доклада на то, чтобы объяснить одному китайцу необходимость теории в области эволюционных вычислений. Однако десяти минут было недостаточно, чтобы изменить мнение убежденного эмпирика, так как, повторюсь, данные вопросы являются философскими.

Функциональный анализ, как это следует из его названия, является теоретической наукой, как и многие другие ветви математики, такие как топология, теория чисел, теория игр и другие. Однако несмотря на то, что они все являются теоретическими по своей сути, каждая из них нашла применение при решении практических задач. Топология используется в анализе данных (TDA – Topological Data Analysis) [9], теория чисел – в криптографии [10], теория игр – в экономике [11]. Функциональному анализу также было найдено практическое применение. Самым ярким примером является его применение в квантовой механике [12]. Однако сегодня многие студенты нашей кафедры не считают нужным изучать квантовую механику (и, как ни грустно, физику в целом), поэтому более близкий пример для КТ-шников – применение функана для оценки погрешности вычислений численных методов при решении различных задач, в том числе нелинейных, что изложено в [3]. Отмечу, что в этой книге содержится много ссылок на другие работы, посвященные практическому применению функционального анализа.

В случае, если читателю недостаточно примеров применения функана, отмечу, что он широко используется в теории вероятностей для анализа стохастических процессов [13]. В своей научной работе я пользуюсь функаном именно в этом контексте. Например, в моей последней публикации с Бенжамином Доерром [14] знания функционального анализа очень помогли осознавать особенности анализируемого стохастического процесса и получить новые научные результаты, например, разработать оригинальный метод анализа эволюционных алгоритмов.

Приведу еще одну причину, почему стоит изучать функан. Известно, что большинство известных математических результатов было получено просто потому, что математикам это было интересно, а не потому, что они знали про какое-либо их практическое применение заранее, которое, тем не менее, было найдено позже (иногда сразу же, а иногда и через много десятилетий). «Ищите и обрящете».

Здесь можно вновь привести примеры топологии, теории чисел и теории игр, так как сначала появились эти ветви математики, а только потом люди нашли им практическое применение. Однако наиболее интересным мне кажется пример Джорджа Буля.

Он одним из первых пришел к идее, что математик должен оперировать символами, представляющими некоторые объекты, а не самими объектами. Буль утверждал, что математика не должна привязываться к чему-то реальному и должна быть абстрактной. Это привело его к разработке матлогики и булевой алгебры в 1847 г. [15]. И хотя Буль очень хотел, чтобы его алгебра была примером чистой, не прикладной математики, все мы знаем, что после развития вычислительной техники работы Буля стали настолько прикладными, что современный мир просто не мог бы без них обойтись.

Продолжатель дела Буля – Клод Элвуд Шеннон закончил MIT по специальности «электротехника и математика». Это позволило ему приложить теорию Буля к релейно-контактным схемам в то время, как А.А. Шалыто рассказывал мне о математике Александре Григорьевиче Лунце, статья которого «Многополюсники, содержащие замыкающие контакты внутренних реле» в журнал «Доклады АН СССР» (https://www.mathnet.ru/links/cb87493b891de94bbd0d9def4107b8e0/dan31760.pdf) была представлена выдающимся математиком А.Н. Колмогоровым, долго расспрашивал коллегу, существенно ли то, что диод проводит только в одну сторону...

Таким образом, одной математики тоже может быть недостаточно, и именно поэтому в названии направления подготовки 01.03.02 на нашей кафедре есть слово «прикладная», но кроме прикладной математики в этом названии есть еще и слово «информатика». Это еще больше усугубляет необходимость изучения математики, так как «информатика» является переводом c английского термина Computer Science – компьютерная наука, а науки без математики не бывает. Еще Кант говорил, что «в каждой естественной науке заключено столько истины, сколько в ней математики». Тот, кто этого не понимает или не хочет понимать, как говорится, свободен … от обучения на кафедре КТ.

Для изучения компьютерной науки ей начать заниматься следует уже в студенческие годы, учитывая то, что выдающийся российский хирург Н.И. Пирогов говорил: «Отделить учебное от научного нельзя. Но научное без учебного все-таки светит и греет, а учебное без научного – только блестит».

И еще. Не путайте национальный исследовательский университет, куда Вы поступили, с профессионально-техническим училищем, курсами или даже институтом повышения квалификации, а также с богодельней…

Возвращаясь к функциональному анализу, заметим, что он так же, как и булева алгебра, развивался не столько с целью практического применения, сколько ради расширения математических знаний. Хоть он и берет свое начало примерно в одно время, что и квантовая механика, после получения основных результатов функана в квантовой механике произошел значительный прорыв [12]. Оказалось, что самосопряженные операторы как нельзя лучше подходят для описания изменений в квантовой системе. Более того, понятие «спектр оператора» оказалось тесно связанным с физическим спектром. Применение функционального анализа для оценки погрешностей было предложено только после того, как вычислительная техника достаточно развилась – с конца 40-х годов XX века. Если же говорить про применение функана к стохастическим процессам, то оно началось с квантовой механики. Кроме того, с развитием вычислителей появилось множество вероятностных алгоритмов, для анализа которых также были необходимы подходы из функционального анализа.

Таким образом, математику и, в частности, функциональный анализ стоит изучать не только ради собственного интереса, но и для практической пользы, которая может быть получена позже, но, может быть, и не получена…

Три выдающихся математика имели результаты и в области функционального анализа. Это им не помешало, а, возможно, помогло, получить и выдающиеся практические результаты. Первый из них – Джон фон Нейман (он считается основоположником современного функционального анализа) создал структуру ЭВМ, которая повсеместно применялась до последнего времени. Второй – Норберт Винер (в функане известна теорема Пэли-Винера-Шварца) – создал кибернетику, а еще известны фильтры Винера, которые совершенствовались сначала Эберхардом Хопфом, а потом – Почетным доктором Университета ИТМО Рудольфом Калманом (http://news.ifmo.ru/ru/archive/archive2/news/4931/). Третий – Андрей Колмогоров (известна книга Колмогоров А.Н., Фомин С.В. Элементы теории функций и функционального анализа. МГУ, 2006). Полученные им результаты в разных областях математики нашли многообразные применения в теории информации, теории вероятностей и теории алгоритмов.

И, наконец, даже если Вы не хотите иметь ничего общего с квантовой физикой, численными методами и вероятностями, Вам все равно целесообразно изучать функциональный анализ. Доктор физ-мат. наук, профессор Юрий Шполянский, выпускник кафедры КТ 2000 г., сказал, что функциональный анализ был самым сложным предметом из всей учебной программы на кафедре, и что хотя он сам не применяет его на практике, этот предмет является очень полезным для мозга. А вот, что по этому поводу написал один из студентов МФТИ: «У меня был предмет «Функциональный анализ» – это абстрактная, чисто математическая наука, очень красивая, только там мозги переворачиваются».

Я полностью согласен с этими словами Юрия: в ИТ-индустрии, безусловно, много направлений, не требующих от программистов знаний в области функционального анализа, однако как можно добиться существенных успехов в этой области без хорошо развитого математического мышления? Павел Дуров наверняка не знает функана, но зато его брат Николай (двукратный чемпион мира по спортивному программированию) изучал функан точно, так как учился на матмехе СПбГУ и защитил в свое время PhD по чистой математике [16]. Именно такая комбинация предпринимательского и математического талантов помогла братьям подняться до нынешних высот.

Если у Вас есть таланты Гейтса (сколько книг он сейчас читает даже представить трудно) или Джобса, то Вы, как и они, можете не учить математику, но в их компании на работу Вас без знания математики вряд ли возьмут. Кстати, одно из часовых (!) собеседований Ивана Белоногова, когда он поступал на работу в компанию OpenAI [17], было посвящено теории вероятностей и линейной алгебре, и он нормально прошел это испытание, как, впрочем, и все остальные.

Для развития математического мышления учебная программа должна содержать целый комплекс различных фундаментальных дисциплин, включающий в себя не только анализ (математический и функциональный), но и теорию вероятностей, матстатистику, дифференциальные уравнения, теорию функций комплексной переменной, теорию чисел и ряд других. Только тогда выпускник КТ сможет считать себя человеком с высшим образованием, а не стоять в одном ряду с программистами-самоучками, которые выучили несколько языков программирования с помощью Гугла для того, чтобы «кодить», что многим нравится делать вне зависимости от того, как результаты их «творчества» будут использоваться компаниями, в которых они работают.

Надо признать, что в последнее время в связи с развитием технологий, растет объем и число предметов, которые следует преподавать студентам нашего направления (в том, числе и факультативно). Однако это не значит, что нужно уменьшать объем математических дисциплин в учебной программе, а надо просто (хотя это сделать не очень не просто) повышать требования к студентам.

К нам поступают одни из самых талантливых школьников России в надежде получить лучшее образование, и кафедра должна отвечать ожиданиям не только самих студентов, но и их родителей. Не все поступающие могут справиться с нагрузкой, которую предполагает трудное обучение, однако это не является поводом подстраивать программу под них. В стране существует множество других кафедр, на которых обучают программированию, но с более простыми учебными планами. Знайте, что в стране около 450 вузов готовят ИТ-«специалистов», многие из которых соответствуют требованиям народного ИТ-ополчения, в то время как мы готовим спецназ.

Подведем итоги:

1. У функана есть множество практических применений [3, 12, 13].

2. Функан является сложным предметом, но это не причина не изучать его, хотя бы как предмет по выбору.

3. Функан, как и любая другая математическая дисциплина, может оказаться полезным в самых неожиданных областях.

4. Функан вносит неоценимый вклад в развитие математического мышления.

Я очень надеюсь, что данная работа поможет тем, кто учится на нашей кафедре, лучше понять, почему им нужен функан.

Текст написан мной при участии Анатолия Абрамовича Шалыто, который был также инициатором его написания. Мы благодарны коллегам за рецензирование текста.

Список литературы

1. What is the main purpose of learning about different spaces, like Hilbert, Banach, etc?

2. What is the «purpose» of pure mathematics?

3. Коллатц Л. Функциональный анализ и вычислительная математика. Мир, М. 1969.

4. Львов А.А. Курс лекций по дисциплине «История и философия науки». Лекция 5. Эксперимент и классическая наука Нового времени.

5. Декарт Р. Рассуждение о методе, с приложениями: Диоптрика, Метеоры, Геометрия. Классики науки. Изд-во Академии наук СССР, 1953.

6. Аристотель. Аналитики. Госполитиздат, Ленинград, 1952.

7. Bacon F. In The Stanford Encyclopedia of Philosophy. Metaphysics Research Lab, Stanford University, 2016.

8. Doerr B., Doerr C. Theory for non-theoreticians / Proceedings of the 2016 on Genetic and Evolutionary Computation Conference Companion (GECCO ’16 Companion), p. 463-482, NY, USA, 2016.

9. Appliedtopology source material for topological data analysis.

10. Goodrich M., Tamassia R. Algorithm design: Foundations, analysis, and Internet examples. 2002.

11. Neumann J. Theory of games and economic behavior. Princeton University Press, Princeton, 2007.

12. Neumann J., Beyer R. Mathematical Foundations of Quantum Mechanics. Investigations in physics. Princeton University Press, 1996.

13. Bobrowski A. Functional Analysis for Probability and Stochastic Processes: An Introduction. Cambridge University Press, 2005.

14. Antipov D., Doerr B. Precise runtime analysis for plateaus. CoRR, abs/1806.01331, 2018.

15. Boole G. The Mathematical Analysis of Logic: Being an Essay Towards a Calculus of Deductive Reasoning. Cambridge Library Collection – Mathematics. Cambridge University Press, 2009.

16. Nikolay Durov in nLab.

17. OpenAI.

29.10.2018. Автор: Денис Антипов.

http://is.ifmo.ru/education/funkan/, http://news.ifmo.ru/ru/blog/76/.

P.S. 1. В свое время было 2300 (!) просмотров этого текста на странице А.А. Шалыто в сети «ВКонтакте» (личный рекорд!) и 2200 просмотров группе «КТ ИТМО», на, казалось бы, на такую непопулярную тему.

2. Прочтя этот текст, Федор Царев спросил: «Есть краткий ответ на этот вопрос?». Шалыто ответил: «Специальность, которой обучаются наши студенты, называется «Прикладная, но математика», а еще и «информатика» (по-английски – Computer Science), а науки без математики не бывает. В Японии в настоящее время гуманитарные предметы не считают наукой, если там нет математики, программирования, моделирования и т. д. А математики, в свою очередь, не бывает без функана. Пока Вы молоды, надо глубоко учить математику, а параллельно с этим и после – все то, что предлагается здесь: https://lifehacker.ru/kursy-ot-google/». Федя продолжил: «Вот это хороший ответ! Не ясно только, зачем тогда весь остальной текст нужен)))».

3. Мой текст «Мысли, навеянные статьей об изучении функционального анализа будущими специалистами по прикладной математике и информатике» опубликован по следующим адресам: http://is.ifmo.ru/belletristic/funkan_thoughts/, https://vk.com/@1077823-mysli-naveyannye-statei-ob-izuchenii-funkcionalnogo-analiza

82 views·2 shares