Прежде чем мы сможем смоделировать человеческое тело на компьютере, в нашу модель необходимо ввести соответствующие данные. Например, чтобы представить потоки крови, нам нужно превратить плавные, непрерывно меняющиеся давления и скорости в единицы и нули чисел с плавающей запятой (рис. 12).
Например, когда дело доходит до чисел одинарной точности, всю путаницу реальности приходится сводить к четырем миллиардам чисел в диапазоне от плюс до минус «бесконечности» (конечно, не самой бесконечности, а просто «очень большого числа» – примерно 2 в степени –127 или +127). Вы можете уловить больше этой реальности, используя массивы чисел или двойную точность, которая предлагает 16 квинтиллионов различных чисел, но числа с плавающей запятой в этом огромном диапазоне распределены неравномерно. Абсолютно неравномерно.
Числа одинарной точности распределяются экспоненциально, как уменьшающиеся степени 2. Этих чисел между 0,125 и 0,25 существует столько же, сколько между 0,25 и 0,5 или между 0,5 и 1 и т. д. Из четырех миллиардов примерно один скрывается между 0 и 1, еще один – между 0 и –1, а остальные два миллиарда охватывают диапазон от ±1 до ± «бесконечности» (рис. 13).
То, как этот уменьшенный набор чисел может затуманить хрустальный шар компьютерного моделирования, было впервые обнаружено в начале 1960-х гг. в Массачусетском технологическом институте в Кембридже, штат Массачусетс, когда метеоролог Эдвард Лоренц (1917–2008) использовал компьютер размером с письменный стол (LGP-30, или компьютер общего назначения Librascope) для разработки простой модели прогнозирования.

Рисунок 12. Превращение аналогового сигнала в цифровой
Лоренц пытался смоделировать атмосферу Земли с помощью набора трех связанных обыкновенных дифференциальных уравнений (упрощенных уравнений Навье – Стокса), описывающих конвекцию – движение жидкости, которое можно наблюдать в кастрюле с кипящей водой или чашке горячего кофе. Но когда он попытался повторить свою первоначальную симуляцию, он получил другие результаты. При ближайшем рассмотрении Лоренц обнаружил, что различия возникли из-за крошечной ошибки округления чисел, введенных в его компьютер.

Рисунок 13. Числа с плавающей запятой отражают лишь небольшую часть математической реальности
Можно подумать, что небольшая ошибка привела бы к небольшой разнице. Но реальность была шокирующей: результаты сильно расходились, даже если менялся последний десятичный знак. Однако эти явно случайные колебания возникают из-за детерминистских законов, управляемых дифференциальными уравнениями, а это означает, что результат полностью определяется вводимыми числами.
Его наблюдения о чувствительности хаотических систем в конечном итоге привели Лоренца к формулировке того, что стало известно как «эффект бабочки» – что отражено в названии статьи, которую он представил в 1972 г.: «Предсказуемость: вызывает ли взмах крыльев бабочки в Бразилии торнадо в Техасе?»[109]. С тех пор предпринимаются усилия по исследованию, пониманию и укрощению динамического хаоса.