{ "cells": [ { "cell_type": "markdown", "id": "d3fcdf06", "metadata": {}, "source": [ "# 1の5乗根\n", "\n", "$\\zeta=\\exp(2\\pi i/5)$ とおきます。1の原始5乗根は、次の方程式を\n", "満たします。\n", "\n", "$$\n", "\\Phi_5(x)=x^4+x^3+x^2+x+1=0.\n", "$$\n", "\n", "特に、\n", "\n", "$$\n", "\\cos\\frac{2\\pi}{5}=\\frac{\\sqrt5-1}{4}.\n", "$$\n", "\n", "この冪根表示を導く際には、ブラックボックスの多項式ソルバーに四つの解を一度に\n", "求めさせるのではなく、$\\zeta$ の冪を軌道ごとに整理します。\n" ] }, { "cell_type": "markdown", "id": "1a99d81b", "metadata": {}, "source": [ "## 共役な冪を組にする\n", "\n", "複素共役により、$\\zeta$ と $\\zeta^4$、$\\zeta^2$ と $\\zeta^3$ がそれぞれ\n", "対になります。各対の対称和は実数です。この二つの対を足すと、すべての原始5乗根の\n", "和である $-1$ が得られます。\n" ] }, { "cell_type": "code", "execution_count": 1, "id": "135603da", "metadata": {}, "outputs": [], "source": [ "def z : MathValue := rtu 5\n", "\n", "def a11 : MathValue := z ^ 1 + z ^ 4\n", "def a12 : MathValue := z ^ 2 + z ^ 3\n", "\n", "def b10 : MathValue := a11 + a12\n", "def b11 : MathValue := a11 - a12\n", "def b12 : MathValue := a12 - a11\n" ] }, { "cell_type": "code", "execution_count": 2, "id": "dfd4fa16", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$(-1, -2 rtu(5)^{3} - 2 rtu(5)^{2} - 1, 2 rtu(5)^{3} + 2 rtu(5)^{2} + 1)$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "(b10, b11, b12)\n" ] }, { "cell_type": "markdown", "id": "886e1b22", "metadata": {}, "source": [ "## 最初の2点変換を逆変換する\n", "\n", "和はすでに $b_{10}=-1$ と分かっています。差を二乗すれば符号の曖昧さが消えます。\n", "平方根の分枝を選んで逆変換を適用すると、二つの実周期を再構成できます。\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "d87f029a", "metadata": {}, "outputs": [], "source": [ "def b10' : MathValue := b10\n", "def b11' : MathValue := sqrt (b11 ^ 2)\n", "\n", "def a11' : MathValue := (b10' + b11') / 2\n", "def a12' : MathValue := (b10' - b11') / 2\n" ] }, { "cell_type": "code", "execution_count": 4, "id": "4e6d75ed", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$(\\frac{1}{2} \\sqrt{5} + \\frac{-1}{2}, \\frac{-1}{2} \\sqrt{5} + \\frac{-1}{2})$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "(a11', a12')\n" ] }, { "cell_type": "markdown", "id": "33337db7", "metadata": {}, "source": [ "## 虚部を復元する\n", "\n", "反対称な対 $\\zeta-\\zeta^{-1}$ と $\\zeta^2-\\zeta^{-2}$ が虚部を担います。\n", "2回目の2点変換により、これらは平方根へ還元されます。その被開平数は、先ほど\n", "求めた実周期だけに依存します。\n" ] }, { "cell_type": "code", "execution_count": 5, "id": "d92e73c6", "metadata": {}, "outputs": [], "source": [ "def a21 : MathValue := z ^ 1 - z ^ 4\n", "def a22 : MathValue := z ^ 2 - z ^ 3\n", "\n", "def b20 : MathValue := a21 + a22\n", "def b21 : MathValue := a21 - a22\n", "def b22 : MathValue := a22 - a21\n", "\n", "def b20' : MathValue := sqrt ((-3) + 4 * a12')\n", "def b21' : MathValue := sqrt ((-3) + 4 * a11')\n", "\n", "def a21' : MathValue := (b20' + b21') / 2\n", "def a22' : MathValue := (b20' - b21') / 2\n", "\n", "def z1' : MathValue := (a11' + a21') / 2\n" ] }, { "cell_type": "code", "execution_count": 6, "id": "1b8998bb", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$\\frac{1}{4} \\sqrt{2 \\sqrt{5} + 5} i + \\frac{1}{4} \\sqrt{-2 \\sqrt{5} + 5} i + \\frac{1}{4} \\sqrt{5} + \\frac{-1}{4}$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "z1'\n" ] }, { "cell_type": "markdown", "id": "480967c9", "metadata": {}, "source": [ "## 冪根の関係を検証する\n", "\n", "入れ子になった平方根には、代数的な関係をもつ、分枝を表す記号が導入されます。\n", "次のイデアルに、それらの定義関係を記録します。そのイデアルを法として\n", "$(z_1')^5-1$ を簡約すれば、浮動小数点による近似ではなく、厳密な記号計算として\n", "検証できます。\n" ] }, { "cell_type": "code", "execution_count": 7, "id": "7e6b81b5", "metadata": {}, "outputs": [], "source": [ "def radicalRels : [MathValue] :=\n", " [ '((sqrt (5 + 2 * sqrt 5)) ^ 2 - 5 - 2 * sqrt 5)\n", " , '((sqrt (5 - 2 * sqrt 5)) ^ 2 - 5 + 2 * sqrt 5)\n", " , '((sqrt (5 + 2 * sqrt 5))\n", " * (sqrt (5 - 2 * sqrt 5))\n", " - sqrt 5)\n", " , '((sqrt 5) ^ 2 - 5)\n", " , '(i ^ 2 + 1) ]\n" ] }, { "cell_type": "code", "execution_count": 8, "id": "16e08df0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$0$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "idealNF radicalRels (z1' ^ 5 - 1)\n" ] }, { "cell_type": "markdown", "id": "b138b53c", "metadata": {}, "source": [ "## まとめ\n", "\n", "黄金比でおなじみの平方根が現れるのは、$\\Phi_5$ のガロア群を二段階の2点変換で\n", "解けるためです。Egisonでは、軌道和の計算と冪根表示の厳密な検証を、同じ記号計算の\n", "中で扱えます。\n" ] } ], "metadata": { "kernelspec": { "display_name": "Egison", "language": "egison", "name": "egison" }, "language_info": { "codemirror_mode": "egison", "file_extension": ".egi", "mimetype": "text/x-egison", "name": "egison" } }, "nbformat": 4, "nbformat_minor": 5 }