Если бы у Архимеда были формулы Рамануджана, или Как посчитать число π
На днях прошла новость, что был поставлен рекорд: вычислено 62 трлн знаков числа π. Предыдущий рекорд (внесенный в книгу рекордов Гиннесса) был поставлен в 2020 году энтузиастом, который за несколько месяцев вычислил 50 трлн знаков. В 2019 году рекорд ставил Google.
В древности расчет числа π был делом, что называется, для избранных. Мыслители в своем могучем уме строили многотысячеугольники и рассчитывали отношение его периметра к диаметру. Чем больше углов — тем ближе правильный многоугольник к окружности, тем больше точность. Так им удалось улучшить результат Архимеда (3,14), получив девять верных знаков. Резкий скачок произошел, когда стали изобретать те или иные формулы, где нужно было сделать сколько-то шагов, и чем больше шагов — тем больше точность. Но и тогда это еще оставалось делом, если не для избранных, то для настойчивых. Уильям Шенкс потратил 15 лет на то, чтобы вычислить 707 знаков. Но ошибся уже на 528-м знаке.
Надо подчеркнуть, что число π не может быть записано через конечное количество арифметических действий. Оно не только не рациональное (не есть дробь), но даже не алгебраическое (не является корнем какого-то алгебраического уравнения). Однако его можно считать приближенно по шагам.
И если найти информацию о том, каким именно методом в 2021 году вычислили 62 трлн знаков, не получилось, то в 2020 году Тимоти Малликан подробно рассказал, что и как он делал, чтобы получить 50 трлн знаков, вплоть до описания комплектующих использованного компьютера. Он использовал готовую программу y-cruncher, выбрав в ней для расчета ряд братьев Чудновских. Оказывается, это довольно простой ряд, пусть в нем и большие числа! Искомая величина 1/π представлена в виде бесконечной суммы дробей, где каждое новое слагаемое намного меньше предыдущего. А значит, сумму можно оборвать там, где будет получена желаемая точность.
Сразу возникает вопрос, а можно ли посчитать этими методами число π вручную, чтобы увидеть воочию, как это работает? И да, и нет.
Да — потому что посчитать можно. Нет — потому что уже первое же слагаемое ряда Чудновских дает 14 верных знаков, после чего считать на калькуляторе или на бумажке, по большому счету, нечего:
π1 = 53360 · √640320 / (13591409) = 3.1415926535897342…
(Правильные знаки выделены жирным шрифтом. Квадратный корень √640320 нужно посчитать только один раз, это считается сравнительно несложной операцией.)
Второе слагаемое дало бы еще 14 верных знаков, но пользователи калькулятора с 7–8–12 знаками этого попросту не заметят.
π1 = 53360 · √640320 / (13591409)
π2 = 53360 · √640320 / (13591409 — 6·5·4 · (13591409+545140134) / 6403203)
π3 = 53360 · √640320 / (13591409 — 6·5·4 · (13591409+545140134) / 6403203 + 12·11·10·9·8·7 · (13591409+545140134·2) / (23) / 6403206)
Третье слагаемое этого ряда дает еще верных 14 знаков, четвертое — еще 14. Нетрудно догадаться, что делают те, кто решил посчитать 50 трлн знаков. Они берут компьютер, который умножает, делит, складывает и вычитает… а заодно записывает на диск промежуточные результаты, потому что, сами знаете, что бывает с теми, кто по много месяцев не сохраняется.
Можно вместо формулы Чудновских взять аналогичную формулу попроще, открытую еще в 1910 году индийским математиком Рамануджаном (обе формулы есть в «Википедии»). Она тоже предназначена для того, чтобы вычислять число π быстро, и она дает по семь знаков за один раз. Но для нас это тоже не очень удобный пример: обычные калькуляторы как раз дают 7–8 знаков. Выходит, компьютеры по мощности, и правда, настолько уже обошли людей, что даже посчитать нечего…
Можно, конечно, взять какой-то медленно сходящийся ряд, например на основе двойного факториала…
Получим:
π =
2 +
22 · (1)2 / (2·3) +
23 · (1·2)2 / (2·3·4·5) +
24 · (1·2·3)2 / (2·3·4·5·6·7) +…
Или, приводя к дробям:
2 + 4/6 + 32/120 + 576/5040 + 18432/362880…
Частичные суммы здесь выходят такие:
π1 = 2.000000000000000
π2 = 2.666666666666666 (2 + 4/6)
π3 = 2.933333333333333 (2 + 4/6 + 32/120)
π4 = 3.047619047619047
π5 = 3.098412698412698
На десятой итерации выходит 3.1406… и становится понятно, что формула снова скучная, но на этот раз уже потому, что слишком медленная.
Искушенный в математике читатель может самостоятельно озадачиться вопросом, как бы найти формулу повеселее, то есть чтобы она была простая, поначалу давала низкую точность, а затем точность заметно росла. К сожалению, предложить заведомо простую, но очень наглядную формулу я не могу. Но если выйти за рамки простоты, то могу предложить метод Ньютона для поиска решения уравнения cos (x) = 0, где косинус вычисляется через ряд Тейлора, а его производная полагается равной –1. Последовательность получается прекрасной: на каждом шаге количество верных знаков утраивается:
2.0…
3.0806…
3.141583…
3.141592653589793…
Дело останется за малым: понять, где надо обрывать ряд Тейлора. Желающие сделать что-то руками могут найти всё необходимое в «Википедии». Если писать это в виде программы на компьютере, она займет 10–15 строк. Но можно считать и на карманном калькуляторе.
(теги пока скрыты для внешних читателей)