{ "cells": [ { "cell_type": "markdown", "id": "78f3cb62", "metadata": {}, "source": [ "# 1の9乗根\n", "\n", "1の9乗根を求める方程式は、次のように因数分解できます。\n", "\n", "$$\n", "x^9-1=(x^3-1)(x^6+x^3+1).\n", "$$\n", "\n", "円分因子 $\\Phi_9(x)=x^6+x^3+1$ を解きます。原始9乗根\n", "$\\zeta=\\exp(2\\pi i/9)$ について、その結果から次の式が得られます。\n", "\n", "$$\n", "\\cos\\frac{2\\pi}{9}\n", " =\\frac{\\sqrt[3]{\\omega}+\\sqrt[3]{\\omega^2}}{2},\n", "\\qquad \\omega^3=1,\\ \\omega\\ne1.\n", "$$\n" ] }, { "cell_type": "markdown", "id": "cd9c160b", "metadata": {}, "source": [ "## 原始根の共役な対\n", "\n", "法 $9$ における原始根の指数類は $1,2,4,5,7,8$ です。逆元どうしを組にすると、\n", "三つの実周期が得られます。それらの和は0であり、原始9乗根の和が0になることと\n", "一致します。\n" ] }, { "cell_type": "code", "execution_count": 1, "id": "df96fc45", "metadata": {}, "outputs": [], "source": [ "def z : MathValue := rtu 9\n", "\n", "def a11 : MathValue := z ^ 1 + z ^ 8\n", "def a12 : MathValue := z ^ 2 + z ^ 7\n", "def a13 : MathValue := z ^ 4 + z ^ 5\n", "\n", "def b10 : MathValue := a11 + a12 + a13\n", "\n", "def cyclotomic9 : MathValue :=\n", " '((rtu 9)^6 + (rtu 9)^3 + 1)\n", "\n", "def reduce9 (v : MathValue) : MathValue :=\n", " idealNFWith [w] [cyclotomic9] v\n", "\n", "def b10' : MathValue := reduce9 b10\n" ] }, { "cell_type": "code", "execution_count": 2, "id": "0db5a997", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$0$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "b10'\n" ] }, { "cell_type": "markdown", "id": "c956eaf2", "metadata": {}, "source": [ "## 現代的な3点レゾルベント\n", "\n", "指数を $2$ 倍すると、三つの周期が巡回します。次の型付き定義は、この巡回作用に\n", "対する二つの非自明なフーリエ・レゾルベントです。ここでは、現行のEgison構文に\n", "合わせて新たに記述しています。\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "aae373fd", "metadata": {}, "outputs": [], "source": [ "def b11 : MathValue := a11 + w * a12 + w ^ 2 * a13\n", "def b12 : MathValue := a13 + w * a11 + w ^ 2 * a12\n", "def b13 : MathValue := a12 + w * a13 + w ^ 2 * a11\n", "\n", "def b14 : MathValue := a11 + w * a13 + w ^ 2 * a12\n", "def b15 : MathValue := a12 + w * a11 + w ^ 2 * a13\n", "def b16 : MathValue := a13 + w * a12 + w ^ 2 * a11\n", "\n", "def b11Cube : MathValue := reduce9 (b11 * b12 * b13)\n", "def b14Cube : MathValue := reduce9 (b14 * b15 * b16)\n" ] }, { "cell_type": "code", "execution_count": 4, "id": "3a54021d", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$(27 w, -27 w - 27, 729)$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "(b11Cube, b14Cube, b11Cube * b14Cube)\n" ] }, { "cell_type": "markdown", "id": "29e77360", "metadata": {}, "source": [ "## 立方根の分枝を選ぶ\n", "\n", "二つの積は $27\\omega$ と $27\\omega^2$ に簡約され、その積は $9^3$ です。積が\n", "$9$ となり、再構成された周期が $a_{11}'>1$ を満たすよう、互いに共役な立方根の\n", "分枝を選びます。これにより、周期 $2\\cos(2\\pi/9)$ が一意に選ばれます。\n", "それらの立方根を取り、逆フーリエ変換を適用すると、次の式が得られます。\n", "\n", "$$\n", "a_{11}'=\\sqrt[3]{\\omega}+\\sqrt[3]{\\omega^2}\n", " =2\\cos(2\\pi/9).\n", "$$\n" ] }, { "cell_type": "code", "execution_count": 5, "id": "cb297e1f", "metadata": {}, "outputs": [], "source": [ "def b11' : MathValue := rt 3 b11Cube\n", "def b14' : MathValue := rt 3 b14Cube\n", "\n", "def a11' : MathValue := (b10' + b11' + b14') / 3\n" ] }, { "cell_type": "code", "execution_count": 6, "id": "2be117a2", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$\\frac{1}{2} \\sqrt[3]{w} + \\frac{1}{2} \\sqrt[3]{-w - 1}$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "a11' / 2\n" ] }, { "cell_type": "markdown", "id": "8f4605d4", "metadata": {}, "source": [ "## 原始9乗根を復元する\n", "\n", "先ほどと同様に、$\\zeta+\\zeta^{-1}=a_{11}'$ を使うと、最後の段階は二次方程式\n", "$x^2-a_{11}'x+1=0$ を解くことに帰着します。\n" ] }, { "cell_type": "code", "execution_count": 7, "id": "f5c7524b", "metadata": {}, "outputs": [], "source": [ "def quadraticRoots9\n", " (a : MathValue)\n", " (b : MathValue)\n", " (c : MathValue)\n", " : (MathValue, MathValue) :=\n", " ( ((- b) + sqrt (b ^ 2 - 4 * a * c)) / (2 * a)\n", " , ((- b) - sqrt (b ^ 2 - 4 * a * c)) / (2 * a) )\n", "\n", "def z1' : MathValue := fst (quadraticRoots9 1 (- a11') 1)\n" ] }, { "cell_type": "code", "execution_count": 8, "id": "4dfa2a2f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$\\frac{1}{2} \\sqrt{\\sqrt[3]{w}^{2} + \\sqrt[3]{-w - 1}^{2} + 2 \\sqrt[3]{-w - 1} \\sqrt[3]{w} - 4} + \\frac{1}{2} \\sqrt[3]{w} + \\frac{1}{2} \\sqrt[3]{-w - 1}$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "z1'\n" ] }, { "cell_type": "markdown", "id": "4c89ec10", "metadata": {}, "source": [ "構成した冪根表示は、最後の二次方程式を厳密に満たします。\n" ] }, { "cell_type": "code", "execution_count": 9, "id": "8c565b74", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$0$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "z1' ^ 2 - a11' * z1' + 1\n" ] }, { "cell_type": "markdown", "id": "8b663fa9", "metadata": {}, "source": [ "## 円分方程式の検算\n", "\n", "1の冪根を表す厳密なオブジェクトにより、9乗に関する関係式と原始根の円分因子を\n", "どちらも確認できます。\n" ] }, { "cell_type": "code", "execution_count": 10, "id": "a9694a28", "metadata": {}, "outputs": [ { "data": { "text/html": [ "$(1, 0)$" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "(z ^ 9, reduce9 (z ^ 6 + z ^ 3 + 1))\n" ] }, { "cell_type": "markdown", "id": "020c52a7", "metadata": {}, "source": [ "## まとめ\n", "\n", "$x^9-1$ の因数分解によって6次の問題を切り出し、原始根の指数への巡回作用を\n", "利用して、立方根と一つの二次方程式へ還元しました。このノートブックは元の\n", "ガロア理論的な考え方を保ちながら、現行の型付きEgison表層構文だけを使っています。\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 }