Я бы изменил сам себе, если бы разговор о трубах и бассейнах не обобщил до самых абстрактных высот. Эту заметку я пишу не столько для тех, кто хочет научиться решать задачки, сколько для тех, кому любопытно бы взглянуть на мир глазами математика.
Вспомним классическую задачу про рабочих и канаву:
Один рабочий способен выкопать канаву за 3 часа, второй — за 5 часов. За какое время будет выкопана та же канава обоими рабочими одновременно?
Как её решать мы хорошо знаем. Принимаем объём работы за единицу и складываем производительности рабочих, получая их суммарную производительность:
1 канава за 3 часа + 1 канава за 5 часов = 8 канав за 15 часов
Соответственно, одна канава будет выкопана за одну восьмую от 15 часов: 15/8 часа = 1 час 52 минуты 30 секунд.
Если хотите, можете заменить рабочих на трубы, а канаву — на бассейн, либо вместо рытья земли можете рассмотреть поток денег в копилку, принцип решения останется тем же.
Обобщая, получаем, что имея несколько исполнителей, выполняющих по отдельности некий фиксированный объём работы за время T₁, T₂, ... Tₙ, мы можем получим такое выражение:
где T — время, необходимое для выполнения этого же объёма работы, если все исполнители возьмутся за неё одновременно.
Давайте назовём величину, обратную времени темпом. Получается, что при совместном выполнении работы несколькими работниками, их темпы складываются и дают в результате общий темп.
А что если мы поставим работников на конвейер? То есть, первый из них выполяет свой этап общей работы и передеаёт эстафету следующему, по цепочке, второй — третьему и так далее. В таком случае для выполнения всей работы потребуется время:
Обобщаем это наблюдение и приходим к общему принципу: при последовательном выполнении работы складываются времена выполнения, при параллельном — складываются темпы её выполнения.
Это очень похоже на параллельное и последовательное соединение электрических сопротивлений, с которыми мы встречаемся на уроках физики: при последовательном соединении нагрузок складываются сопротивления (R = R₁ + R₂), при параллельном соединении складываются проводимости — величины обратные сопротивлениям (1/R = 1/R₁ + 1/R₂).
А ещё где? Соединяя две пружинки параллельно, мы складываем их жёсткости, а если последовательно, то величины, обратные жёсткости.
Ух ты, оказывается, это же опять можно обобщить! Мы имеем множество элементов (работников, труб, пружинок, сопротивлений и т.д.). На нём определены две ассоциативные операции, похожие на сложение, обозначим их ⨁ и ⨂ и для каждого элемента x определена операция, которую мы обозначим штрихом x’, такая, что: x’’ = x для любого x. Такую операцию называют инволюцией.
Кроме того, во множестве есть два выделенных элемента 0 и 0’, которые ведут себя следующим образом:
Если ⨁ это последовательное выполнение работы, а ⨂ — параллельное, то 0 — это супер-исполнитель, выполняющий работу мгновенно, а 0’ — неисправный исполнитель, который вообще не работает. Давайте поглядим:
0 ⨁ x = x ⨁ 0 = x — добавление супер-исполнителя в конвейер не увеличит времени выполнения всей работы, оно определяется обыкновенными исполнителями;
0’ ⨁ x = x ⨁ 0’ = 0’ — добавление неисправного исполнителя в конвейер приведёт к неисправности всего конвейера;
0 ⨂ x = x ⨂ 0 = 0 — добавление супер-исполнителя в параллель к другим исполнителям позволит выполнить всю работу мгновенно;
0’ ⨂ x = x ⨂ 0’ = x — добавление неисправного исполнителя в параллель к другим никак не скажется на общей производительности системы.
Для сопротивлений или пружинок есть свои аналоги особым элементам 0 и 0’. Поиграйте с этими примерами, поищите смысл в том, что я написал в виде формул.
И, наконец, для любых элементов нашей структуры выполняются следующие два равенства:
Они называются законами Де Моргана. Убедиться в их справедливости, может быть, не так просто, но именно они используются при вычислении времени и темпа выполнения работ. Любопытных и дотошных я отсылаю к моей большой статье на эту тему. Такая алгебраическая система называется алгеброй Де Моргана и все перечисленные нами задачи (на совместную работу, на сопротивления или на пружинки и так далее) содержат объекты и операции, которые образуют такую алгебру.
Ну, и что же нам даёт настолько абстрактный взгляд? Он позволяет увидеть общее во многих вещах и процессах, которые мы встречаем в жизни. Если мы хорошенько поищем то обнаружим, что алгебру Де Моргана образуют прямоугольные таблицы с операциями склеивания строк, склеивания столбцов и транспонирования. А ведь именно таким образом нам удобно организовывать данные для анализа. Такую же алгебру образует множество логических значений {ИСТИНА, ЛОЖЬ} с тремя операциями И, ИЛИ и НЕ. Наконец, сами множества с операциями объединения, пересечения и дополнения тоже образуют алгебру Де Моргана. Именно эти концепции — формальная логика и алгебра множеств, лежат в самой основе нашего математического мышления и моделирования мира.
Разговор об алгебраических структурах не имеет большого смысла, покуда мы не научимся переходить из одной структуры в другую с помощью гомоморфизмов или изоморфизмов.
Гомоморфизм это отбражение F между двумя математическими структурами A и B, в каждой из которых определены операции ∗ и ⋆, которое корректно отображает не только элементы, но и результаты соответствующих результатов отображаемых операций.
То что в решении задач, о которых я говорил в самом начале, совпадают математические формулы говорит о том, что существуют гомоморфизмы из соответствующих алгебр в поле вещественных чисел (построением этих гомоморфизмов, собственно, мы и занимаемся в школах и в инженерных вузах). Некоторые задачи переводятся друг в друга настолько точно, что электрическими цепями становится возможно моделировать теплопотери в здании, гидравлические или транспортные системы, а пружинками и вязкими элементами — реологию неньютоновских жидкостей.
Наконец, присмотритесь к самим законам Де Моргана. Операция инволюции, которую мы обозначили штрихом, является гомомофизмом отображающим алгебру саму на себя. Такие гомоморфизмы называются эндоморфизмами. Таким образом, любую алгебру Де Моргана можно определить, как множество с двумя бинарными операциями и инволюцией, при этом бинарные операции переходят друг в друга с помощью эндоморфизма, определяемого инволюцией.
Великий Анри Пуанкаре написал: "Математика — это искусство называть разные вещи одинаковыми именами." Гомоморфизмы это главный инструмент такого искусства, которые позволяют решать разные задачи одинаковыми методами. Дальнейшее развитие этой идеи привело к понятию функторов и натуральных преобразований между ними в теории категорий, которые позволяют построить мосты не просто между задачами, а между целыми математическими теориями.
Это конечно, материал не для обычного урока в школе, но учась в школе, я чувствовал, что трубы, рабочие, электрические сопротивления, пружинки, скорости и другие разные штуки как-то неуловимо связаны друг с другом и математически ведут себя похожим образом. После, уже став студентом, я был счастлив увидеть насколько глубинный смысл кроется в этих задачках и теперь рад поделиться этим с вами!