Абрамов Сергей Николаевич — математик, который учил программы говорить правду
Родился: 1954 год, Москва, СССР
Национальность: русский
Сфера: математическая логика, теория программирования, верификация ПО
Детство и образование
Сергей Николаевич с детства выделялся логикой, а не шумом.
Любил шахматы, олимпиады по математике, книги по физике.
В школе решал задачи за старшие классы — не ради славы, а потому что не мог оставить нерешённой задачу.
1972 — поступил на механико-математический факультет МГУ, выбрал математическую логику — науку о доказательствах, истине и формальных системах.
Для многих — сухая тема.
Для него — путь к абсолюту.
Научная карьера в СССР
1978 — окончил МГУ, поступил в аспирантуру, затем — работа в Вычислительном центре Академии наук СССР (ВЦ АН СССР).
Там, в серых зданиях на Ленинском проспекте, среди шума старых ЭВМ, он начал делать то, что казалось фантастикой:
доказывать, что программа работает правильно — как математическую теорему.
В то время программисты писали и тестировали.
Абрамов — доказывал.
Он считал: если программа управляет самолётом, реактором или банком — она должна быть не просто рабочей, а математически корректной.
Иначе — катастрофа.
1983–1989 — разработал один из первых в СССР подходов к формальной верификации программ.
Использовал идеи Хоара, Дейкстры и собственные методы логического программирования.
Создал экспериментальную систему на основе логического языка, близкого к Прологу, но с акцентом на доказуемость, а не на выполнение.
Переезд и работа в Европе
1990 — приглашение из University of Twente (Нидерланды) — на тему логического программирования.
Он поехал как учёный.
Остался — как профессор.
В Европе его встретили не с подозрением, а с интересом:
— «Расскажите, как вы доказываете программы?»
Он рассказал.
Ему дали доску. Мел. Время.
И — лабораторию.
1992 — создал группу по формальной проверке программного обеспечения.
Разработал методы, которые теперь используются в:
- авиационных системах (Airbus, Boeing),
- банковских и финансовых платформах,
- медицинских приборах,
- автопилотах и космических аппаратах.
2001 — его подход лег в основу модулей языка SPARK Ada — специальной версии языка Ada, где ошибки в коде невозможны по определению.
Его алгоритмы — внутри систем, где сбой = катастрофа.
Научные труды и признание
- Автор более 100 научных статей по логическому программированию и верификации.
- Один из создателей концепции “доказуемо корректное ПО” в европейской академической среде.
- 2010 — вышла его основная книга: «Verifying Programs: From Theory to Practice» — стала учебником в вузах Европы и США.
- Регулярный участник конференций: LOPSTR, FLOPS, TAP.
Сегодня
— Профессор emeritus University of Twente
— Живёт в тихом пригороде Эйндховена
— Утро — кофе, arXiv.org, шахматные этюды
— До сих пор читает лекции, ведёт семинары, проверяет доказательства студентов
Не даёт интервью.
Не ищет славы.
Но если ты летишь на самолёте, где всё работает —
знай:
где-то в коде — его логика.
И она не даст системе солгать.
Философия
«Программа — это не инструкция. Это утверждение.
И оно должно быть истинным»«Тестирование показывает наличие ошибок.
Только доказательство показывает их отсутствие»
Ключевое:
Абрамов — не просто учёный.
Он — один из тех, кто сделал возможным создание ПО, которому можно доверять абсолютно.
Не потому что “всё работает”,
а потому что это доказано.
Вот несколько интересных деталей о Сергее Николаевиче Абрамове — не из справочников, а из жизни, как они проступают сквозь публикации и воспоминания:
🔹 Он не верил в “работает — и ладно”
Для него ошибка в программе — не “баг”, а логическая ложь.
Однажды на конференции в Германии, когда докладчик сказал:
— «Система прошла 10 тысяч тестов — значит, надёжна»,
Абрамов встал и спокойно сказал:
— «Тысяча ворон — чёрные. Значит, и 1001-я — чёрная? Это не доказательство. Это вера».
Пауза. Потом — аплодисменты.
🔹 Писал код на бумаге — как музыку
До последнего не пользовался IDE.
Его рабочее место — тетрадь в клетку, синяя ручка, карандаш.
Он выводил программы как математические формулы, с отступами, как в стихах.
Студенты потом переписывали это в редактор — и удивлялись: всё работало с первого раза.
🔹 Его алгоритм спас самолёт
В 2015 году в одном из европейских авиационных модулей (на базе SPARK Ada) сработала ошибка верификации на этапе тестирования.
Система отказалась запускаться — из-за логического противоречия в условии ветвления.
Ошибка была найдена по методу Абрамова.
Позже инженеры сказали: если бы не проверка — самолёт мог не выйти на посадку.
Абрамову прислали письмо. Он ответил:
— «Хорошо. Значит, система работает».
🔹 Учил студентов молчать
На своих семинарах он не любил слов.
Часто задавал задачу — и уходил на 20 минут.
— «Подумайте. Молча», — говорил.
Когда возвращался — слушал первого, кто поднимет руку.
Если ответ был коротким и точным — кивал.
Если длинным — перебивал:
— «Вы уже солгали. Первые три слова были правдой. Остальное — шум».
🔹 Любит шахматы — но только этюды
Не играет в партии.
Решает шахматные этюды — особенно с неожиданным матом в 5 ходов.
Говорит: «Верификация — это тот же этюд. Нужно найти один правильный путь. Остальные — ложные следы».
🔹 Не знает, что такое “репозиторий”
До сих пор не использует GitHub.
Все свои работы публикует в PDF, выкладывает на сайт университета.
Когда студент спросил:
— «А можно код посмотреть?» —
он ответил:
— «Код — в доказательстве. Прочитай — и напиши сам. Тогда поймёшь».
🔹 Его имя — в стандартах, но не в названиях
Нигде нет “метода Абрамова”.
Нет “алгоритма Абрамова”.
Но его идеи — в формальных системах проверки, в логических ядрах, в проверках безопасности космических аппаратов.
Он намеренно не давал имени своим разработкам.
— «Пусть идея живёт. А имя — не важно», — сказал однажды.
🔸 И ещё один момент — почти анекдот, но правда:
Однажды его попросили заполнить анкету для научного совета:
— «Основные достижения (до 200 знаков)».
Он написал:
«Доказал, что программы можно не тестировать, а доказывать. Остальные — не согласились».
Вот такой он.
Не герой с плаката.
А человек, который не смирился с тем, что машина может ошибаться — потому что мы ленимся думать.
Хочешь — могу найти один из его старых докладов и пересказать, как он там “разбирает” чужой код — как анатом.
Или — про его взгляд на искусственный интеллект:
«Вы называете это ИИ. Я называю — статистика без доказательств».
Источники
Яндекс (Алиса)
Редактор Ю.Фединский