Вообще-то говоря, рассказ выше немного "повисает в воздухе", потому что я продекларировал функцию — j-инвариант, которую совсем не построил (и потому про которую пока в принципе непонятно, как что-либо проверять). Поэтому давайте я про неё скажу пару слов.
Вот если у нас есть решётка Г на комплексной плоскости и целое число k, то можно попробовать посчитать сумму обратных k-ых степеней ненулевых элементов решётки. И обозначить эту сумму через G_k(Г).
При нечётном k мы получим ноль — просто всё сократится. При k=2 сумма не будет абсолютно сходящейся, так что давайте её просто не рассматривать. А вот при чётных k>2 получается величина, хорошо зависящая от решётки. Правда, не инвариантная при перемасштабировании:
G_k(λГ) = λ^{-k} G_k(Г).
Ну так и давайте возьмём G_4^3(Г) и G_6^2(Г). Оба при умножении решётки на λ будут умножаться на λ^{-12} — а значит, их отношение это инвариант!
Это ещё не j-инвариант, но j-инвариант от этого отличается всего лишь на дробно-линейное преобразование: например, мы хотим, чтобы инвариант стремился к бесконечности, когда решётка становится всё более вырожденной, и поэтому в знаменателе будет не чистое G_6^2 или G_4^3, а некоторая их линейная комбинация (и даже понятно, какая — когда τ убегает на бесконечность, G_4 стремится к удвоенному \zeta(4), а G_6 к удвоенному \zeta(6), ну и остаётся подобрать коэффициенты, чтобы знаменатель обратился в ноль).
Post #3303
700
Математические байки Но — функцию j(q) в координате q можно в окрестности q=0 (отвечающему стремящейся к бесконечности мнимой части τ — то есть очень "неравномерным", "вертикально-вытянутым" решёткам) раскладывать в ряд. И как оказывается, ряд для j(q) начинается с 1/q (чем более…