diff --git a/superelliptic_alpha.ipynb b/superelliptic_alpha.ipynb index 8cb0a73..e187325 100644 --- a/superelliptic_alpha.ipynb +++ b/superelliptic_alpha.ipynb @@ -2,21 +2,16 @@ "cells": [ { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 6, + "metadata": { + "collapsed": false + }, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Exiting Sage (CPU time 0m6.48s, Wall time 11m10.64s).\n" - ] - } ], "source": [ "def basis_holomorphic_differentials_degree(f, m, p):\n", " kxi1. = PolynomialRing(GF(p))\n", - " kxi = kxi.quotient(xi1^p)\n", + " kxi = kxi1.quotient(xi1^p)\n", " xi = kxi(xi1)\n", " r = f.degree()\n", " delta = GCD(r, m)\n", @@ -50,7 +45,7 @@ " r = f.degree()\n", " delta = GCD(r, m)\n", " kxi1. = PolynomialRing(GF(p))\n", - " kxi = kxi.quotient(xi1^p)\n", + " kxi = kxi1.quotient(xi1^p)\n", " xi = kxi(xi1)\n", " Rx. = PolynomialRing(kxi)\n", " Rxy. = PolynomialRing(kxi, 2)\n", @@ -92,7 +87,7 @@ " \n", " def __init__(self, f, m, p):\n", " kxi1. = PolynomialRing(GF(p))\n", - " kxi = kxi.quotient(xi1^p)\n", + " kxi = kxi1.quotient(xi1^p)\n", " xi = kxi(xi1)\n", " Rx. = PolynomialRing(kxi)\n", " Rxy. = PolynomialRing(kxi, 2)\n", @@ -168,7 +163,7 @@ " g = self.genus()\n", " p = self.characteristic\n", " kxi1. = PolynomialRing(GF(p))\n", - " kxi = kxi.quotient(xi1^p)\n", + " kxi = kxi1.quotient(xi1^p)\n", " xi = kxi(xi1)\n", " M = matrix(kxi, g, g)\n", " for i in range(0, len(basis)):\n", @@ -189,7 +184,7 @@ "def reduction(C, g):\n", " p = C.characteristic\n", " kxi1. = PolynomialRing(GF(p))\n", - " kxi = kxi.quotient(xi1^p)\n", + " kxi = kxi1.quotient(xi1^p)\n", " xi = kxi(xi1)\n", " Rxy. = PolynomialRing(kxi, 2)\n", " Fxy = FractionField(Rxy)\n", @@ -217,7 +212,7 @@ "def reduction_form(C, g):\n", " p = C.characteristic\n", " kxi1. = PolynomialRing(GF(p))\n", - " kxi = kxi.quotient(xi1^p)\n", + " kxi = kxi1.quotient(xi1^p)\n", " xi = kxi(xi1)\n", " Rxy. = PolynomialRing(kxi, 2)\n", " Fxy = FractionField(Rxy)\n", @@ -245,7 +240,7 @@ " def __init__(self, C, g):\n", " p = C.characteristic\n", " kxi1. = PolynomialRing(GF(p))\n", - " kxi = kxi.quotient(xi1^p)\n", + " kxi = kxi1.quotient(xi1^p)\n", " xi = kxi(xi1)\n", " Rxy. = PolynomialRing(kxi, 2)\n", " Fxy = FractionField(Rxy)\n", @@ -589,9 +584,12 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "def preimage(U, V, M): #preimage of subspace U under M\n", " basis_preimage = M.right_kernel().basis()\n", @@ -678,18 +676,44 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "ename": "SyntaxError", + "evalue": "invalid syntax (925769656.py, line 1)", + "output_type": "error", + "traceback": [ + "\u001b[0;36m File \u001b[0;32m\"/tmp/ipykernel_968/925769656.py\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m def auto_a()\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n" + ] + } + ], + "source": [ + "def auto_a()" + ] + }, + { + "cell_type": "code", + "execution_count": 0, + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "from datetime import datetime" ] }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 0, + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "now = datetime.now()\n", "\n", @@ -710,8 +734,11 @@ { "cell_type": "code", "execution_count": 15, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "def p_cov(C):\n", " m = C.exponent\n", @@ -724,7 +751,7 @@ "cell_type": "code", "execution_count": 26, "metadata": { - "scrolled": false + "collapsed": false }, "outputs": [ { @@ -746,7 +773,9 @@ { "cell_type": "code", "execution_count": 29, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "name": "stdout", @@ -769,7 +798,9 @@ { "cell_type": "code", "execution_count": 24, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -778,7 +809,8 @@ ] }, "execution_count": 24, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -789,7 +821,9 @@ { "cell_type": "code", "execution_count": 10, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "name": "stdout", @@ -938,7 +972,9 @@ { "cell_type": "code", "execution_count": 7, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "name": "stdout", @@ -958,6 +994,7 @@ "cell_type": "code", "execution_count": 81, "metadata": { + "collapsed": false, "scrolled": true }, "outputs": [ @@ -982,7 +1019,9 @@ { "cell_type": "code", "execution_count": 58, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -998,7 +1037,8 @@ ] }, "execution_count": 58, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1009,7 +1049,9 @@ { "cell_type": "code", "execution_count": 62, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "name": "stdout", @@ -1026,7 +1068,8 @@ ] }, "execution_count": 62, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1038,6 +1081,7 @@ "cell_type": "code", "execution_count": 24, "metadata": { + "collapsed": false, "scrolled": true }, "outputs": [ @@ -1063,7 +1107,9 @@ { "cell_type": "code", "execution_count": 26, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "name": "stdout", @@ -1084,7 +1130,9 @@ { "cell_type": "code", "execution_count": 31, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1093,7 +1141,8 @@ ] }, "execution_count": 31, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1104,7 +1153,9 @@ { "cell_type": "code", "execution_count": 73, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1115,7 +1166,8 @@ ] }, "execution_count": 73, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1129,8 +1181,11 @@ { "cell_type": "code", "execution_count": 77, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "l = U.basis()\n", "l = l +[(1, 1/3)]" @@ -1139,8 +1194,11 @@ { "cell_type": "code", "execution_count": 24, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "###fragment kodu do obliczania residuuow w niesk - zaniechany\n", "#def more_v(f, prec):\n", @@ -1170,7 +1228,9 @@ { "cell_type": "code", "execution_count": 211, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "name": "stdout", @@ -1194,15 +1254,21 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] + "execution_count": 0, + "metadata": { + "collapsed": false + }, + "outputs": [ + ], + "source": [ + ] }, { "cell_type": "code", "execution_count": 212, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1218,7 +1284,8 @@ ] }, "execution_count": 212, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1230,7 +1297,7 @@ "cell_type": "code", "execution_count": 213, "metadata": { - "scrolled": false + "collapsed": false }, "outputs": [ { @@ -1247,7 +1314,8 @@ ] }, "execution_count": 213, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1258,8 +1326,11 @@ { "cell_type": "code", "execution_count": 214, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "A = C.frobenius_matrix()\n", "B = C.verschiebung_matrix()" @@ -1268,7 +1339,9 @@ { "cell_type": "code", "execution_count": 227, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1277,7 +1350,8 @@ ] }, "execution_count": 227, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1288,7 +1362,9 @@ { "cell_type": "code", "execution_count": 228, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1297,7 +1373,8 @@ ] }, "execution_count": 228, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1308,7 +1385,9 @@ { "cell_type": "code", "execution_count": 225, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1317,7 +1396,8 @@ ] }, "execution_count": 225, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1328,8 +1408,11 @@ { "cell_type": "code", "execution_count": 83, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "omega = diffn(superelliptic_function(C, y^2))" ] @@ -1337,7 +1420,9 @@ { "cell_type": "code", "execution_count": 84, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1346,7 +1431,8 @@ ] }, "execution_count": 84, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1357,7 +1443,9 @@ { "cell_type": "code", "execution_count": 85, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1366,7 +1454,8 @@ ] }, "execution_count": 85, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1384,8 +1473,11 @@ { "cell_type": "code", "execution_count": 86, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "H = HyperellipticCurve(x^5 - x + 1)" ] @@ -1393,7 +1485,9 @@ { "cell_type": "code", "execution_count": 40, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1402,7 +1496,8 @@ ] }, "execution_count": 40, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1413,8 +1508,11 @@ { "cell_type": "code", "execution_count": 84, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "f = x^3 + x + 2" ] @@ -1422,7 +1520,9 @@ { "cell_type": "code", "execution_count": 86, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1431,7 +1531,8 @@ ] }, "execution_count": 86, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1442,8 +1543,11 @@ { "cell_type": "code", "execution_count": 3, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "p = 5\n", "R1. = PolynomialRing(GF(p))\n", @@ -1456,7 +1560,9 @@ { "cell_type": "code", "execution_count": 4, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1465,7 +1571,8 @@ ] }, "execution_count": 4, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1477,7 +1584,9 @@ { "cell_type": "code", "execution_count": 57, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1486,7 +1595,8 @@ ] }, "execution_count": 57, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1497,7 +1607,9 @@ { "cell_type": "code", "execution_count": 62, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "ename": "AttributeError", @@ -1521,7 +1633,9 @@ { "cell_type": "code", "execution_count": 35, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1530,7 +1644,8 @@ ] }, "execution_count": 35, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1541,7 +1656,9 @@ { "cell_type": "code", "execution_count": 36, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1550,7 +1667,8 @@ ] }, "execution_count": 36, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1561,8 +1679,11 @@ { "cell_type": "code", "execution_count": 37, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "R. = PolynomialRing(GF(5))" ] @@ -1570,8 +1691,11 @@ { "cell_type": "code", "execution_count": 39, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "R = (x^3+x).parent()" ] @@ -1579,8 +1703,11 @@ { "cell_type": "code", "execution_count": 44, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "R. = PolynomialRing(GF(5))\n", "RR = FractionField(R)\n", @@ -1590,7 +1717,9 @@ { "cell_type": "code", "execution_count": 45, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1599,7 +1728,8 @@ ] }, "execution_count": 45, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1610,8 +1740,11 @@ { "cell_type": "code", "execution_count": 42, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "dict1 = {}\n", "dict1[3] = 5\n", @@ -1621,8 +1754,11 @@ { "cell_type": "code", "execution_count": 46, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "degrees1_inv = {b:a for a, b in dict1.items()}" ] @@ -1630,7 +1766,9 @@ { "cell_type": "code", "execution_count": 47, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1639,7 +1777,8 @@ ] }, "execution_count": 47, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1650,7 +1789,9 @@ { "cell_type": "code", "execution_count": 28, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1659,7 +1800,8 @@ ] }, "execution_count": 28, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1670,8 +1812,11 @@ { "cell_type": "code", "execution_count": 29, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "basis = C.basis_de_rham()" ] @@ -1679,7 +1824,9 @@ { "cell_type": "code", "execution_count": 32, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1688,7 +1835,8 @@ ] }, "execution_count": 32, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1699,7 +1847,9 @@ { "cell_type": "code", "execution_count": 9, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1708,7 +1858,8 @@ ] }, "execution_count": 9, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1723,7 +1874,9 @@ { "cell_type": "code", "execution_count": 10, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1732,7 +1885,8 @@ ] }, "execution_count": 10, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1743,8 +1897,11 @@ { "cell_type": "code", "execution_count": 11, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "Fpbar = GF(5).algebraic_closure()\n", "z = Fpbar.zeta(7)" @@ -1753,7 +1910,9 @@ { "cell_type": "code", "execution_count": 23, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "ename": "TypeError", @@ -1780,7 +1939,9 @@ { "cell_type": "code", "execution_count": 21, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1789,7 +1950,8 @@ ] }, "execution_count": 21, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1800,8 +1962,11 @@ { "cell_type": "code", "execution_count": 7, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "Rx. = PolynomialRing(QQ)\n", "f = sum((i+1)*x^i for i in range(0, 10))" @@ -1810,7 +1975,9 @@ { "cell_type": "code", "execution_count": 8, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1819,7 +1986,8 @@ ] }, "execution_count": 8, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1830,7 +1998,9 @@ { "cell_type": "code", "execution_count": 9, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1839,7 +2009,8 @@ ] }, "execution_count": 9, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1850,7 +2021,9 @@ { "cell_type": "code", "execution_count": 45, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "name": "stdout", @@ -1870,7 +2043,9 @@ { "cell_type": "code", "execution_count": 41, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1879,7 +2054,8 @@ ] }, "execution_count": 41, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1890,7 +2066,9 @@ { "cell_type": "code", "execution_count": 42, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1899,16 +2077,20 @@ ] }, "execution_count": 42, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], - "source": [] + "source": [ + ] }, { "cell_type": "code", "execution_count": 30, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "name": "stdout", @@ -1940,8 +2122,11 @@ { "cell_type": "code", "execution_count": 1, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "kxi1. = PolynomialRing(GF(p))\n", "kxi = kxi.quotient(xi1^p)\n", @@ -1951,7 +2136,9 @@ { "cell_type": "code", "execution_count": 2, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1960,7 +2147,8 @@ ] }, "execution_count": 2, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -1971,8 +2159,11 @@ { "cell_type": "code", "execution_count": 3, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "s = kxi2(xi)" ] @@ -1980,7 +2171,9 @@ { "cell_type": "code", "execution_count": 4, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -1989,7 +2182,8 @@ ] }, "execution_count": 4, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -2000,7 +2194,9 @@ { "cell_type": "code", "execution_count": 5, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -2009,7 +2205,8 @@ ] }, "execution_count": 5, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -2020,8 +2217,11 @@ { "cell_type": "code", "execution_count": 8, - "metadata": {}, - "outputs": [], + "metadata": { + "collapsed": false + }, + "outputs": [ + ], "source": [ "a = 1+2*s+s^2" ] @@ -2029,7 +2229,9 @@ { "cell_type": "code", "execution_count": 10, - "metadata": {}, + "metadata": { + "collapsed": false + }, "outputs": [ { "data": { @@ -2038,7 +2240,8 @@ ] }, "execution_count": 10, - "metadata": {}, + "metadata": { + }, "output_type": "execute_result" } ], @@ -2048,17 +2251,65 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "ename": "NotImplementedError", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mNotImplementedError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/tmp/ipykernel_968/1691347420.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 8\u001b[0m \u001b[0mf\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mf1\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0mp\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0mm\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mInteger\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 10\u001b[0;31m \u001b[0mC\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0msuperelliptic\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mm\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mp\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;32m/tmp/ipykernel_968/2781228428.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, f, m, p)\u001b[0m\n\u001b[1;32m 81\u001b[0m \u001b[0mRx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mPolynomialRing\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkxi\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnames\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'x'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m;\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mRx\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_first_ngens\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 82\u001b[0m \u001b[0mRxy\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mPolynomialRing\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkxi\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mInteger\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnames\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'x'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'y'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m;\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mRxy\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_first_ngens\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 83\u001b[0;31m \u001b[0mFxy\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mFractionField\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mRxy\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 84\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpolynomial\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mRx\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 85\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexponent\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mm\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/ext/sage/9.5/local/var/lib/sage/venv-python3.9.9/lib/python3.9/site-packages/sage/rings/fraction_field.py\u001b[0m in \u001b[0;36mFractionField\u001b[0;34m(R, names)\u001b[0m\n\u001b[1;32m 129\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mring\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mis_Ring\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mR\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 130\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"R must be a ring\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 131\u001b[0;31m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mR\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mis_integral_domain\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 132\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"R must be an integral domain.\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 133\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mR\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfraction_field\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/ext/sage/9.5/local/var/lib/sage/venv-python3.9.9/lib/python3.9/site-packages/sage/rings/polynomial/multi_polynomial_ring_base.pyx\u001b[0m in \u001b[0;36msage.rings.polynomial.multi_polynomial_ring_base.MPolynomialRing_base.is_integral_domain (build/cythonized/sage/rings/polynomial/multi_polynomial_ring_base.c:4294)\u001b[0;34m()\u001b[0m\n\u001b[1;32m 107\u001b[0m \u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 108\u001b[0m \"\"\"\n\u001b[0;32m--> 109\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbase_ring\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mis_integral_domain\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mproof\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 110\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 111\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mis_noetherian\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/ext/sage/9.5/local/var/lib/sage/venv-python3.9.9/lib/python3.9/site-packages/sage/rings/ring.pyx\u001b[0m in \u001b[0;36msage.rings.ring.Ring.is_integral_domain (build/cythonized/sage/rings/ring.c:8605)\u001b[0;34m()\u001b[0m\n\u001b[1;32m 999\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1000\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mproof\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1001\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mNotImplementedError\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1002\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1003\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mNotImplementedError\u001b[0m: " + ] + } + ], + "source": [ + "p = 5\n", + "kxi1. = PolynomialRing(GF(p))\n", + "kxi = kxi1.quotient(xi1^p)\n", + "xi = kxi(xi1)\n", + "Rx. = PolynomialRing(kxi)\n", + "\n", + "f1 = x^3 + x + 1\n", + "f = f1(x^p)\n", + "m = 2\n", + "C = superelliptic(f, m, p)" + ] + }, + { + "cell_type": "code", + "execution_count": 0, + "metadata": { + "collapsed": false + }, + "outputs": [ + ], + "source": [ + ] } ], "metadata": { "kernelspec": { - "display_name": "SageMath 9.1", - "language": "sage", - "name": "sagemath" + "display_name": "SageMath 9.5", + "language": "sagemath", + "metadata": { + "cocalc": { + "description": "Open-source mathematical software system", + "priority": 10, + "url": "https://www.sagemath.org/" + } + }, + "name": "sage-9.5", + "resource_dir": "/ext/jupyter/kernels/sage-9.5" }, "language_info": { "codemirror_mode": { @@ -2070,9 +2321,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.3" + "version": "3.9.9" } }, "nbformat": 4, - "nbformat_minor": 2 -} + "nbformat_minor": 4 +} \ No newline at end of file