История эта относится к XVIII веку, когда у города было другое название – Кёнигсберг. Он был родиной Иммануила Канта и знаменитого математика Давида Гильберта. В то время он входил в состав Пруссии, и через Преголю были перекинуты семь мостов
[117]. Одним из любимых занятий обитателей города стало следующее развлечение: по воскресеньям после обеда они пытались найти такой маршрут, который проходил бы по всем мостам, но только по одному разу. Но как бы они ни старались, всегда находился один мост, до которого они добраться не могли. В самом ли деле это было невозможно, или все же был какой-нибудь способ, позволявший перейти через все семь мостов, до которого горожане просто не додумались?
Жителям Кёнигсберга казалось, что нет никакого способа избежать утомительной ходьбы по городу, пробуя поочередно все маршруты, проходящие по мостам, пока не будут исчерпаны все возможные варианты. При этом всегда оставалось подспудное ощущение, что, возможно, какой-нибудь хитроумный путь, дающий решение этой задачи, так и остался незамеченным.
Рис. 9.2. Семь мостов через реку Прегель в Кёнигсберге XVIII века
Раз и навсегда эта головоломка была разгадана только после явления одного из моих математических героев, Леонарда Эйлера: перейти через все мосты по одному, и только одному, разу было невозможно. Эйлер пришел к этому выводу, открыв шорткат, избавляющий от необходимости перебирать все возможные маршруты обхода мостов.
В главе 2 я уже познакомил вас со швейцарским математиком Леонардом Эйлером, когда показывал открытую им поразительную формулу, связывающую пять величин из числа самых главных в математике. «Читайте Эйлера. Читайте Эйлера. Он всем нам учитель», – писал о значении Эйлера в математике один из самых выдающихся математиков Франции Пьер-Симон Лаплас. Большинство математиков согласились бы с этой оценкой; его считают одним из величайших наравне с Гауссом. Был его поклонником и сам Гаусс: «Изучение работ Эйлера останется лучшей школой в разных отделах математики, и ничто не сможет его заменить».
Свершения Эйлера были многочисленны и разнообразны; к ним относится и шорткат к решению задачи о мостах Кёнигсберга, о которой он впервые узнал, когда служил профессором российской Императорской академии наук в Санкт-Петербурге. Эйлер не был коренным петербуржцем: он приехал туда из своего родного Базеля, в котором ему не удалось найти работу для математика. По-видимому, все подходящие должности уже были заняты. В этом небольшом городе наблюдался удивительный избыток математиков. Что еще удивительнее, все они происходили из одного и того же семейства – семейства Бернулли.
Более того, в Базеле не помещались даже все Бернулли. Даниил Бернулли перебрался в Санкт-Петербург еще раньше; именно его приглашение и обеспечило Эйлеру работу в академии. Перед отъездом Эйлера в Петербург Даниил прислал ему письмо с перечнем благ цивилизации, которых там недоставало: «Привезите, пожалуйста, пятнадцать фунтов кофе, фунт самого лучшего зеленого чая, шесть бутылок бренди, двенадцать дюжин отменных курительных трубок и несколько дюжин колод игральных карт».
Отягощенный всеми этими припасами, Эйлер отправился из Базеля в Петербург и, проделав семинедельный путь на корабле, в почтовой карете и пешком, прибыл туда и вступил в должность в мае 1727 года.
Кёнигсбергские мосты
Сперва задача о кёнигсбергских мостах была для Эйлера не более чем безделкой, позволявшей отвлечься от всех тех сложных вычислений, которыми он занимался. В 1736 году он изложил свои соображения об этой задаче в письме к придворному астроному в Вене Джованни Маринони: «Вопрос этот в высшей степени банален, но мне показалось достойным внимания то обстоятельство, что для его разрешения оказалось не достаточно ни геометрии, ни алгебры, ни даже искусства счета. В связи с этим мне случалось задумываться, не принадлежит ли он к сфере позиционной геометрии, к которой в свое время так стремился Лейбниц. Итак, после некоторых размышлений я получил простое, но совершенно обоснованное правило, применение коего помогает немедленно установить в любых примерах этого рода, возможен ли такой обход».
Важное концептуальное новшество, введенное Эйлером, сводилось к идее о том, что физические размеры города не имеют никакого значения. Важна лишь схема соединений между мостами. Тот же принцип лежит в основе схемы лондонского метро: в отличие от физически точной карты в ней сохранена лишь информация о соединениях между станциями. Если проанализировать карту Кёнигсберга, четыре участка суши, соединенные мостами, можно представить точками, а мосты – линиями, соединяющими эти точки, точно так же, как точки на схеме лондонского метро обозначают разные места Лондона. Тогда задача о возможности или невозможности существования маршрута, проходящего по всем мостам, сводится к вопросу о возможности или невозможности начертить такую же схему, не отрывая карандаш от бумаги и не проводя никакую из линий дважды.
Почему же это невозможно? Хотя Эйлер, вероятно, никогда не чертил такого графического представления Кёнигсберга, его анализ показывает, что маршрут возможен только в том случае, когда в его каждой промежуточной точке на каждую входящую линию приходится одна исходящая. Если вы снова оказываетесь в этой же точке, должен быть новый мост, по которому в нее можно попасть, и новый мост, по которому ее можно покинуть. Единственные исключения из этого правила – начальная и конечная точки маршрута. От точки, из которой вы начинаете движение, отходит одна линия. К точке, в которой маршрут заканчивается, тоже ведет одна линия. Маршрут обхода любого графа может существовать только тогда, когда в этом графе есть не более двух точек (вершин), к которым подходит нечетное количество линий (ребер), – начальная и конечная точки.
Рис. 9.3. Сеть кёнигсбергских мостов
Но если посмотреть на план семи кёнигсбергских мостов, в каждой его точке соединено нечетное количество линий. Такое большое число точек, от которых отходит нечетное число мостов, означает, что составить маршрут прогулки по городу, проходящий по каждому из мостов только по одному разу, невозможно.
Это один из моих любимых примеров шортката. Вместо перебора разных вариантов прокладки маршрута по карте предлагается простой анализ числа точек, от которых отходит нечетное количество мостов, и он сразу же показывает, что проложить такой маршрут невозможно.
Главное достоинство анализа Эйлера состоит в том, что он применим не только к Кёнигсбергу. Эйлер доказал: о какой бы сети, изображенной точками и соединяющими их линиями, ни шла речь, если из всех вершин исходит четное количество ребер, всегда можно составить маршрут, проходящий по всем линиям один, и только один, раз. Кроме того, такой маршрут возможен, если есть ровно две вершины с нечетным количеством ребер, при условии, что эти вершины являются начальной и конечной точками маршрута. Какой бы сложной ни была карта, такой простой подсчет количества нечетных вершин дает нам шорткат к пониманию возможности или невозможности ее обхода.