{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "#### B.C.Berndt: Number Theory in the Spirit of Ramanujanより\n", "**Chapter 5 Lemma 5.2.2**
\n", "$0 \\lt x \\lt 1$である$x$を
\n", "$$\\frac{1-x}{x+1}=\\frac{\\varphi\\left(-q\\right)^2}{\\varphi\\left(q\\right)^2}=\\Lambda\\left(q\\right)$$\n", "を満たすものとして定める。この時以下が成り立つ。\n", "$$1-x^2=\\frac{\\varphi\\left(-q^2\\right)^4}{\\varphi\\left(q^2\\right)^4}=\\Lambda\\left(q^2\\right)^2$$\n", "
\n", "
\n", "まずA1〜A3として$x$の条件の式を定義します。" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{73}$}\\frac{1-x}{x+1}=\\frac{\\varphi\\left(-q\\right)^2}{\\varphi\\left(q\\right)^2}\\]" ], "text/plain": [ " 2\n", " 1 - x phi (- q)\n", "(%o73) ----- = ---------\n", " x + 1 2\n", " phi (q)" ], "text/x-maxima": [ "(1-x)/(x+1) = phi(-q)^2/phi(q)^2" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{74}$}\\frac{\\varphi\\left(-q\\right)^2}{\\varphi\\left(q\\right)^2}=\\Lambda\\left(q\\right)\\]" ], "text/plain": [ " 2\n", " phi (- q)\n", "(%o74) --------- = Lambda(q)\n", " 2\n", " phi (q)" ], "text/x-maxima": [ "phi(-q)^2/phi(q)^2 = Lambda(q)" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{75}$}\\Lambda\\left(q\\right)=\\frac{1-x}{x+1}\\]" ], "text/plain": [ " 1 - x\n", "(%o75) Lambda(q) = -----\n", " x + 1" ], "text/x-maxima": [ "Lambda(q) = (1-x)/(x+1)" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A1:(1-x)/(1+x)=phi(-q)^2/phi(q)^2;\n", "A2:phi(-q)^2/phi(q)^2=Lambda(q);\n", "A3:rhs(A2)=lhs(A1);" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "証明したい式をQ1, Q2として定義しておきます。" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{40}$}1-x^2=\\frac{\\varphi\\left(-q^2\\right)^4}{\\varphi\\left(q^2\\right)^4}\\]" ], "text/plain": [ " 4 2\n", " 2 phi (- q )\n", "(%o40) 1 - x = ----------\n", " 4 2\n", " phi (q )" ], "text/x-maxima": [ "1-x^2 = phi(-q^2)^4/phi(q^2)^4" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{41}$}\\frac{\\varphi\\left(-q^2\\right)^4}{\\varphi\\left(q^2\\right)^4}=\\Lambda\\left(q^2\\right)^2\\]" ], "text/plain": [ " 4 2\n", " phi (- q ) 2 2\n", "(%o41) ---------- = Lambda (q )\n", " 4 2\n", " phi (q )" ], "text/x-maxima": [ "phi(-q^2)^4/phi(q^2)^4 = Lambda(q^2)^2" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q1:1-x^2=phi(-q^2)^4/phi(q^2)^4;\n", "Q2:phi(-q^2)^4/phi(q^2)^4=Lambda(q^2)^2;" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "ラマヌジャンのテータ関数に関する既知の恒等式の中から今回使う以下のものをC1332, C367として定義しておきます。\n", "$$\\tag{$1.3.32$}\\varphi\\left(-q^2\\right)^2=\\varphi\\left(-q\\right)\\,\\varphi\\left(q\\right)$$\n", "$$\\tag{$3.6.7$}\\varphi\\left(q\\right)^2+\\varphi\\left(-q\\right)^2=2\\,\\varphi\\left(q^2\\right)^2$$" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{30}$}\\varphi\\left(-q^2\\right)^2=\\varphi\\left(-q\\right)\\,\\varphi\\left(q\\right)\\]" ], "text/plain": [ " 2 2\n", "(%o30) phi (- q ) = phi(- q) phi(q)" ], "text/x-maxima": [ "phi(-q^2)^2 = phi(-q)*phi(q)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{31}$}2\\,\\varphi\\left(q^2\\right)^2=\\varphi\\left(q\\right)^2+\\varphi\\left(-q\\right)^2\\]" ], "text/plain": [ " 2 2 2 2\n", "(%o31) 2 phi (q ) = phi (q) + phi (- q)" ], "text/x-maxima": [ "2*phi(q^2)^2 = phi(q)^2+phi(-q)^2" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "C1332:phi(-q^2)^2=phi(-q)*phi(q);\n", "C367:2*phi(q^2)^2=phi(q)^2+phi(-q)^2;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

証明に取り掛かります。まずQ2を示しますが、実はこれは簡単です。A2で$q$を$q^2$で置き換えて、両辺を二乗すれば良いのです。" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{42}$}\\frac{\\varphi\\left(-q^2\\right)^4}{\\varphi\\left(q^2\\right)^4}=\\Lambda\\left(q^2\\right)^2\\]" ], "text/plain": [ " 4 2\n", " phi (- q ) 2 2\n", "(%o42) ---------- = Lambda (q )\n", " 4 2\n", " phi (q )" ], "text/x-maxima": [ "phi(-q^2)^4/phi(q^2)^4 = Lambda(q^2)^2" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "subst(q^2,q,A2)^2;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "次にQ2の左辺を式変形して$1-x^2$にすることでQ1を示します。" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{43}$}\\frac{\\varphi\\left(-q^2\\right)^4}{\\varphi\\left(q^2\\right)^4}\\]" ], "text/plain": [ " 4 2\n", " phi (- q )\n", "(%o43) ----------\n", " 4 2\n", " phi (q )" ], "text/x-maxima": [ "phi(-q^2)^4/phi(q^2)^4" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q3:lhs(Q2);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "この式の分子を、C1332の両辺を二乗したものを使って書き換えます。さらに分母をC367の両辺を2で割ってから2乗したものを使って書き換えます。" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{44}$}\\frac{\\varphi\\left(-q\\right)^2\\,\\varphi\\left(q\\right)^2}{\\varphi\\left(q^2\\right)^4}\\]" ], "text/plain": [ " 2 2\n", " phi (- q) phi (q)\n", "(%o44) -----------------\n", " 4 2\n", " phi (q )" ], "text/x-maxima": [ "(phi(-q)^2*phi(q)^2)/phi(q^2)^4" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q4:Q3,C1332^2;" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{65}$}\\frac{4\\,\\varphi\\left(-q\\right)^2\\,\\varphi\\left(q\\right)^2}{\\left(\\varphi\\left(q\\right)^2+\\varphi\\left(-q\\right)^2\\right)^2}\\]" ], "text/plain": [ " 2 2\n", " 4 phi (- q) phi (q)\n", "(%o65) ----------------------\n", " 2 2 2\n", " (phi (q) + phi (- q))" ], "text/x-maxima": [ "(4*phi(-q)^2*phi(q)^2)/(phi(q)^2+phi(-q)^2)^2" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q5:Q4,(C367/2)^2;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "ここからは上記式の分子と分母をそれぞれ$\\varphi(q)^4$で割る、という式変形を行います。まず分子はそのまま割ります。" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{66}$}\\frac{4\\,\\varphi\\left(-q\\right)^2}{\\varphi\\left(q\\right)^2}\\]" ], "text/plain": [ " 2\n", " 4 phi (- q)\n", "(%o66) -----------\n", " 2\n", " phi (q)" ], "text/x-maxima": [ "(4*phi(-q)^2)/phi(q)^2" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q6:num(Q5)/phi(q)^4;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "上記式をA2を使って$\\Lambda(q)$の式にします。" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{69}$}4\\,\\Lambda\\left(q\\right)\\]" ], "text/plain": [ "(%o69) 4 Lambda(q)" ], "text/x-maxima": [ "4*Lambda(q)" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q7:4*ev(Q6/4,A2);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "分子は一旦二乗を外した式を$\\varphi(q)^2$で割ります。" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{70}$}\\frac{\\varphi\\left(-q\\right)^2}{\\varphi\\left(q\\right)^2}+1\\]" ], "text/plain": [ " 2\n", " phi (- q)\n", "(%o70) --------- + 1\n", " 2\n", " phi (q)" ], "text/x-maxima": [ "phi(-q)^2/phi(q)^2+1" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q8:expand(sqrt(denom(Q5))/phi(q)^2);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "上記式をA2を使って$\\Lambda(q)$の式にします。" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{71}$}\\left(\\Lambda\\left(q\\right)+1\\right)^2\\]" ], "text/plain": [ " 2\n", "(%o71) (Lambda(q) + 1)" ], "text/x-maxima": [ "(Lambda(q)+1)^2" ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q9:ev(Q8,A2)^2;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "結局$\\frac{\\varphi\\left(-q^2\\right)^4}{\\varphi\\left(q^2\\right)^4}$は以下の式に等しいことが分かりました。" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{77}$}\\frac{4\\,\\Lambda\\left(q\\right)}{\\left(\\Lambda\\left(q\\right)+1\\right)^2}\\]" ], "text/plain": [ " 4 Lambda(q)\n", "(%o77) ----------------\n", " 2\n", " (Lambda(q) + 1)" ], "text/x-maxima": [ "(4*Lambda(q))/(Lambda(q)+1)^2" ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q10:Q7/Q9;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "上記式をA3を使って、$\\Lambda(q)$を$\\frac{1-x}{1+x}$で置き換えます。" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{78}$}\\frac{4\\,\\left(1-x\\right)}{\\left(x+1\\right)\\,\\left(\\frac{1-x}{x+1}+1\\right)^2}\\]" ], "text/plain": [ " 4 (1 - x)\n", "(%o78) --------------------\n", " 1 - x 2\n", " (x + 1) (----- + 1)\n", " x + 1" ], "text/x-maxima": [ "(4*(1-x))/((x+1)*((1-x)/(x+1)+1)^2)" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q10,A3;" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "この式を整理すると所望の式が得られます。" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{79}$}1-x^2\\]" ], "text/plain": [ " 2\n", "(%o79) 1 - x" ], "text/x-maxima": [ "1-x^2" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ratsimp(%);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

この本に載っている証明は上記の通りなのですが、もう少し自然な式変形もやってみました。A1を$x$について解いて、それを$1-x^2$に代入して変形することでQ1を得る、という方針です。" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{84}$}\\frac{1-x}{x+1}=\\frac{\\varphi\\left(-q\\right)^2}{\\varphi\\left(q\\right)^2}\\]" ], "text/plain": [ " 2\n", " 1 - x phi (- q)\n", "(%o84) ----- = ---------\n", " x + 1 2\n", " phi (q)" ], "text/x-maxima": [ "(1-x)/(x+1) = phi(-q)^2/phi(q)^2" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A1;" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{97}$}\\left[ x=\\frac{\\varphi\\left(q\\right)^2-\\varphi\\left(-q\\right)^2}{\\varphi\\left(q\\right)^2+\\varphi\\left(-q\\right)^2} \\right] \\]" ], "text/plain": [ " 2 2\n", " phi (q) - phi (- q)\n", "(%o97) [x = -------------------]\n", " 2 2\n", " phi (q) + phi (- q)" ], "text/x-maxima": [ "[x = (phi(q)^2-phi(-q)^2)/(phi(q)^2+phi(-q)^2)]" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "solve(A1,x);" ] }, { "cell_type": "code", "execution_count": 84, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{98}$}1-\\frac{\\left(\\varphi\\left(q\\right)^2-\\varphi\\left(-q\\right)^2\\right)^2}{\\left(\\varphi\\left(q\\right)^2+\\varphi\\left(-q\\right)^2\\right)^2}\\]" ], "text/plain": [ " 2 2 2\n", " (phi (q) - phi (- q))\n", "(%o98) 1 - ----------------------\n", " 2 2 2\n", " (phi (q) + phi (- q))" ], "text/x-maxima": [ "1-(phi(q)^2-phi(-q)^2)^2/(phi(q)^2+phi(-q)^2)^2" ] }, "execution_count": 84, "metadata": {}, "output_type": "execute_result" } ], "source": [ "1-x^2,%;" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{99}$}\\frac{4\\,\\varphi\\left(-q\\right)^2\\,\\varphi\\left(q\\right)^2}{\\varphi\\left(q\\right)^4+2\\,\\varphi\\left(-q\\right)^2\\,\\varphi\\left(q\\right)^2+\\varphi\\left(-q\\right)^4}\\]" ], "text/plain": [ " 2 2\n", " 4 phi (- q) phi (q)\n", "(%o99) -----------------------------------------\n", " 4 2 2 4\n", " phi (q) + 2 phi (- q) phi (q) + phi (- q)" ], "text/x-maxima": [ "(4*phi(-q)^2*phi(q)^2)/(phi(q)^4+2*phi(-q)^2*phi(q)^2+phi(-q)^4)" ] }, "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ratsimp(%);" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{100}$}\\frac{4\\,\\varphi\\left(-q\\right)^2\\,\\varphi\\left(q\\right)^2}{\\left(\\varphi\\left(q\\right)^2+\\varphi\\left(-q\\right)^2\\right)^2}\\]" ], "text/plain": [ " 2 2\n", " 4 phi (- q) phi (q)\n", "(%o100) ----------------------\n", " 2 2 2\n", " (phi (q) + phi (- q))" ], "text/x-maxima": [ "(4*phi(-q)^2*phi(q)^2)/(phi(q)^2+phi(-q)^2)^2" ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "factor(%);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "明らかに上記式にC1332とC367を適用することが可能です。" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{101}$}\\frac{4\\,\\varphi\\left(-q^2\\right)^4}{\\left(\\varphi\\left(q\\right)^2+\\varphi\\left(-q\\right)^2\\right)^2}\\]" ], "text/plain": [ " 4 2\n", " 4 phi (- q )\n", "(%o101) ----------------------\n", " 2 2 2\n", " (phi (q) + phi (- q))" ], "text/x-maxima": [ "(4*phi(-q^2)^4)/(phi(q)^2+phi(-q)^2)^2" ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%,(2*rhs(C1332))^2=(2*lhs(C1332))^2;" ] }, { "cell_type": "code", "execution_count": 88, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\\tag{${\\it \\%o}_{102}$}\\frac{\\varphi\\left(-q^2\\right)^4}{\\varphi\\left(q^2\\right)^4}\\]" ], "text/plain": [ " 4 2\n", " phi (- q )\n", "(%o102) ----------\n", " 4 2\n", " phi (q )" ], "text/x-maxima": [ "phi(-q^2)^4/phi(q^2)^4" ] }, "execution_count": 88, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%,rhs(C367)=lhs(C367);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "これでQ1を示すことができました。" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Maxima", "language": "maxima", "name": "maxima" }, "language_info": { "codemirror_mode": "maxima", "file_extension": ".mac", "mimetype": "text/x-maxima", "name": "maxima", "pygments_lexer": "maxima", "version": "5.44.0" } }, "nbformat": 4, "nbformat_minor": 4 }