Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Математическая логика и теория алгоритмов. Анализ алгоритмов

.pdf
Скачиваний:
3
Добавлен:
12.11.2023
Размер:
8.87 Mб
Скачать

Джон Бэкус

(John Backus, 1924–2007)

Петер Наур

(Peter Naur, род. 1928)

Джон Маккарти

(1927–2011)

Он был руководителем команды, разработавшей первый высокоуровневый язык программирования Фортран, изобретателем формы Бэкуса – Наура, одной из самых универсальных нотаций, используемых для определения синтаксиса формальных языков. Петер Наур – датский учёный в области информатики, один из пионеров компьютерной науки.

Наур известен также как один из разработчиков первого языка структурного программирования«Алгол60».

Так называемое λ-исчисление реализовано Джоном Маккарти в языке Лисп.

Дональд Кнут – американский учёный, иностранный член Российской академии наук, преподаватель и идеолог программирования.

Широко известна книга Дональда Кнута «Искусство программирова-

ния»(TheArtofComputerProgramming,

Дональд Кнут (род. 1938)

11

ВильгельмАккерман(нем. WilhelmFriedrichAckermann)–
немецкийматематикилогик
(1896–1962)
Андрей Петрович Ершов
(1931–1988)

vol.1: Fundamental Algorithms). Боль-

шее влияние на юного Дональда Кнута оказали работы советского ученого Андрея Петровича Ершова, одного из пионеров отечественного теоретического и системного программирования, создателя сибирской школы информатики, академикаАН СССР.

Кнут вспоминал: «Когда я был студентом последнего курса, появилась книга Андрея «Программирование для БЭСМ», и мы,

группа студентов, смогли убедить преподавателя русского языка включить её вкурс в качестве одного из двух сборников текстов для изучения научной лексики на русском языке». Впоследствии Д. Кнут и А.П. Ершов стали друзьями.

В теории рекурсивных функций как одной из моделей алгоритмов описывается знаменитая функция Аккермана (всюду определённая вычислимая функция, которая не является примитивно рекурсивной). Аккерман – немецкийматематики логик.

Другой моделью алгоритма является так называемый нормальный алгорифм (алгоритм) Маркова (НАМ). А.А. Марков советский математик, основоположник советской школы конструктивной математики.

С 1959 по 1979 г. – заведующий кафедрой математической логики Московского государственного университета. Называются «алгорифмы» Маркова, а не «алгоритмы», так их назвал сам А.А. Марков, подчеркивая арабо-греческую этимологию слова. Интересно, что в дореволюционных российских энциклопедиях и учебниках использовалось слово «алгориϕм».

12

Отцом А.А. Маркова был другой выдающийся российский математик, это в честь его назван тип графов – марковские цепи.

Алгоритм может быть реализован не только программно (в терминах «софта»), но и аппаратно, соответственно сложность алгоритма может быть описана в терминах «железа».

В этом плане мы коснёмся теории автоматов. Иногда встречается название раздела математической логики, включающее автоматы: «Теория алгоритмов и автоматов». Клини Стефан Коул внёс огромный вклад в теорию конечных автоматов (теорема Клини, «звёздочка» Клини*, означающая итерацию, повторение символа).

Клини ввёл понятие «рекурсивная функция». Значительный вклад в теорию автоматов, вообще в математику, в том числе в дискретную и в математическую логику, внес и Виктор Михайлович Глушков.

В.М. Глушков – выдающийся советский кибернетик, академик. Сейчас это понятие редко употребляется. Под его руководством в 1966 г. была разработана первая персональная ЭВМ «МИР-1» (машина для инженерных расчётов). Метод синтеза автоматов назван метод Хаффмана – Глушкова. Алгоритмическая логика была им сформулирована ещё доХоара.

АндрейАндреевичМарков

(1903–1979)

КлиниСтефанКоул

(1909–1994)

ВикторМихайлович Глушков(1923–1982)

13

Один из авторов слышал легенду о том, что Виктор Михайлович якобы после защиты докторской диссертации был назначен преподавателем в Пермский государственный университет, на мехмат, но его направление дискретной математики в то время (в конце 50-х гг.) оказалось не востребовано. В «Википедии» же есть упоминание о работе на Урале «в одном из учреждений зарождающейся атомной промышленности» и о заведовании им кафедрой теоретической механики Уральского лесотехнического института тогда в Свердловске (сегодня Екатеринбург). Дальнейшая его деятельность связана с Украиной, Киевом и Вычислительным центром Академии наук Украинской Советской Социалистической Республики.

Логические схемы алгоритмов были предложены А.А. Ляпуновым.

Первую в СССР кафедру дискретной математики в МГУ возглавил Олег Борисович Лупанов – советский, российский математик, академик РАН, декан механико-математического факультета МГУ (1980–2006).

АлексейАндреевичЛяпунов

ОлегБорисовичЛупанов

(1911–1973)–выдающийсясоветский

(1932–2006)

математик,одинизосновоположников

 

кибернетики,член-корреспондент

 

АНСССР

 

14

С именем О.Б. Лупанова (помимо самого Тьюринга) связана всемирно известная проблема самоприменимости в теории алгоритмов, асимптотические оценки сложности булевых функций.

Как известно, задачи (проблемы) с точки зрения теории алгоритмов делятся на P-(polynomial) полиномиальные, E-экспонен-

циальные, NP (non-deterministic polynomial) не детерминирован-

но-полиномиальные и NPC – (NP-complete) NP-полные (рис. В.1).

Рис. В.1. Классификация задач (проблем)

В настоящее время активно развивается такое направление теории алгоритмов, как эволюционные вычисления (например, так называемые генетические алгоритмы). Джон Генри Холланд (John Henry Holland) – американский учёный, профессор психологии, профессор электротехники и информатики в Мичиганском университете.

Холланд известен как «отец» генетических алгоритмов. И они уже, по существу, не совсем-то и алгоритмы…Здесь речь идёт уже

ДжонГенриХолланд

(JohnHenryHolland) (род.1929г.)

15

о специфических процессах решения переборных задач на основе моделирования эволюции живых организмов. Как ни странно это констатировать в наше цифровое время, алгоритмам подвластна совсем небольшая часть задач. Алгоритмы бессильны в области задач очень высокой сложности, например, распознавания сложных образов (запахов, не дай Бог! нехороших веществ, что крайне актуально при обеспечении безопасности в наше неспокойное время). Многие практические «интеллектуальные» задачи сегодня решаются методами моделирования работы нашего «бортового компьютера» – головного мозга. Это так называемые нейросетевые алгоритмы. И такие алгоритмы уже совсем не алгоритмы. Там задачи решаются не с использованием программирования в привычном нам смысле слова, а с помощью предварительного обучения нейронной сети на примерах. А обучение – это и есть цель предлагаемого учебного пособия!

Другим перспективным направлением являются так называемые квантовые вычисления. Один из пионеров в области квантовых вычислений – Дэвид Дойч.

Дэвид Дойч (David Elieser Deutsch, род. 1953 г.) –

британский физик-теоретик израильского происхождения, работающий в Оксфордском университете

Имеется модель «квантовой» машины Тьюринга. Вместо битов и байтов используются так называемые кубиты (рис. В.2), которые могут быть не в одном, а одновременно в нескольких состояниях (в суперпозиции классических разрешённыхсостояний).

16

Рис. В.2. Кубит

Важным направлением анализа алгоритмов является распознавание так называемых вредоносных алгоритмов (компьютерных вирусов). Известный изобретатель приемов защиты от компьютерных вирусов – Фредерик Б. Коэн.

Известно доказательство алгоритмической неразрешимости задачи определения вируса, которое Коэн выполнил в терминах машины Тьюринга. Известным отечественным специалистом в этой области является Е.В. Касперский.

ФредерикБ.Коэн

 

(FrederickB.Cohen)(род.1956г.)–

ЕвгенийВалентинович

американскийинформатик

Касперский(род.1965г.)

17

Вопросы анализа алгоритмов рассматриваются в таких всемирно известных книгах, как, например, книга Альфреда Ахо «Компиляторы».

Альфред Ахо (Alfred Vaino Aho, род. 1941 г.) –

канадский учёный-информатик, один из создателей языка AWK

(Alfred Aho, Peter Weinberger, Brian Kernighan)

Одним из соавторов Ахо является другой всемирно известный учёный – Джеффри Дэвид Ульман.

Джеффри Дэвид Ульман (Jeffrey David Ullman) (род. 1942 г.) –

исследователь в области информационных технологий – Стэнфордский университет, США

Другой известной книгой является книга Томаса Кормена «Алгоритмы. Построение и анализ».

18

Томас Кормен (Thomas H. Cormen, род. 1956 г.)

и его книги. Дартмутский колледж, США

Его соавторы – Чарльз Лейерсон, Клиффорд Штайн.

Чарльз Лейерсон (Charles Eric

Клиффорд Штайн (Clifford Seth

Leiserson, род. 1953 г.) –

Stein, род. 1965 г.) – американский

американский специалист

специалиствобластикомпьютерных

вобластиинформатики,профессор

наук,Колумбийскийуниверситет

Массачусетскоготехнологического

(Нью-Йорк, США)

института, США

 

Третьим соавтором является Рональд Ривест, одни из разработчиков алгоритма RSA (аббревиатура от фамилий Rivest, Shamir и Adleman).

19

Рональд Ривест (Ronald Linn Rivest,род.1947г.)–американский специалистпокриптографии, Массачусетскийтехнологический институт

ЛеонардМаксАдлеман(Leonard Adleman,род.1945г.),США

АдиШамир(род. 1952г.), лауреатпремииТьюринга

Shamir – это Ади Шамир известный израильский криптоаналитик, учёный в области теории вычислительных систем (Тель-Авивский университет, Институт Вейцмана).

Adleman – это Леонард Макс Адлеман – американский учёный-теоретик в области компьютерных наук, профессор компьютерных наук и молекулярной биологии в Университете Южной Калифорнии.

В нашем городе проблематикой анализа сложности алгоритмов занимался Александр Иванович Миков, советский, российский математик, доктор физико-математических наук, профессор, декан (1984–1989),

20