diff --git a/plots_and_expressions.ipynb b/plots_and_expressions.ipynb index 48c42eac5864d6217272970f0c3a661f21a5cd13..940bd859c7668f1d82b21f35b36cf19180850b13 100644 --- a/plots_and_expressions.ipynb +++ b/plots_and_expressions.ipynb @@ -337,96 +337,6 @@ "## SUBSECTION: Bound on $\\operatorname{ch}_0(u)$ for Semistabilizers" ] }, - { - "cell_type": "code", - "execution_count": 8, - "id": "2b641339", - "metadata": {}, - "outputs": [], - "source": [ - "var(\"m\") # Initialize symbol for variety parameter\n", - "recurring = Object()\n", - "recurring.chern = Chern_Char(3, 2, -2)\n", - "recurring.b = beta_minus(recurring.chern)\n", - "recurring.twisted = recurring.chern.twist(recurring.b)\n", - "# RENDERED TO LATEX: recurring.b\n", - "# RENDERED TO LATEX: recurring.b.denominator()\n", - "# RENDERED TO LATEX: recurring.twisted.ch[1]\n", - "n = recurring.b.denominator()\n", - "m = 2\n", - "recurring.loose_bound = (\n", - " m*n^2*recurring.twisted.ch[1]^2\n", - ") / gcd(m, 2*n^2)\n", - "# RENDERED TO LATEX: loose_bound\n", - "extravagant = Object()\n", - "extravagant.chern = Chern_Char(29, 13, -3/2)\n", - "extravagant.b = beta_minus(extravagant.chern)\n", - "extravagant.twisted = extravagant.chern.twist(extravagant.b)\n", - "extravagant.actual_rmax = 49313\n", - "# RENDERED TO LATEX: extravagant.b\n", - "# RENDERED TO LATEX: extravagant.b.denominator()\n", - "# RENDERED TO LATEX: extravagant.twisted.ch[1]\n", - "n = extravagant.b.denominator()\n", - "m = 2\n", - "extravagant.loose_bound = (\n", - " m*n^2*extravagant.twisted.ch[1]^2\n", - ") / gcd(m, 2*n^2)" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "id": "f38c4896", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 215296\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 215296$" - ], - "text/plain": [ - "215296" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "recurring.loose_bound" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "id": "c2e307ec", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 49313\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 49313$" - ], - "text/plain": [ - "49313" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "extravagant.actual_rmax" - ] - }, { "cell_type": "markdown", "id": "4982f084", @@ -1494,231 +1404,6 @@ "r_upper_bound_all_q.expand().subs([nu==1,Delta==psi^2])" ] }, - { - "cell_type": "code", - "execution_count": 45, - "id": "8ba2ed91", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle -\\frac{2}{3}\\)</html>" - ], - "text/latex": [ - "$\\displaystyle -\\frac{2}{3}$" - ], - "text/plain": [ - "-2/3" - ] - }, - "execution_count": 45, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "recurring.b" - ] - }, - { - "cell_type": "code", - "execution_count": 46, - "id": "fcfae8a1", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 3\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 3$" - ], - "text/plain": [ - "3" - ] - }, - "execution_count": 46, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "recurring.b.denominator()" - ] - }, - { - "cell_type": "code", - "execution_count": 47, - "id": "36d896f4", - "metadata": {}, - "outputs": [], - "source": [ - "recurring.n = recurring.b.denominator()\n", - "recurring.bgmlv = recurring.chern.Q_tilt()\n", - "recurring.corrolary_bound = (\n", - " r_upper_bound_all_q.expand()\n", - " .subs(Delta==recurring.bgmlv)\n", - " .subs(nu==1) ## \\ell^2=1 on P^2\n", - " .subs(R==recurring.chern.ch[0])\n", - " .subs(n==recurring.n)\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 48, - "id": "b3f47ade", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 37.515625\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 37.515625$" - ], - "text/plain": [ - "37.515625" - ] - }, - "execution_count": 48, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "float(recurring.corrolary_bound)" - ] - }, - { - "cell_type": "code", - "execution_count": 49, - "id": "b52a3a56", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle -\\frac{3}{29}\\)</html>" - ], - "text/latex": [ - "$\\displaystyle -\\frac{3}{29}$" - ], - "text/plain": [ - "-3/29" - ] - }, - "execution_count": 49, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "extravagant.b" - ] - }, - { - "cell_type": "code", - "execution_count": 50, - "id": "cdf1726c", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 29\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 29$" - ], - "text/plain": [ - "29" - ] - }, - "execution_count": 50, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "extravagant.b.denominator()" - ] - }, - { - "cell_type": "code", - "execution_count": 51, - "id": "8f5ea43e", - "metadata": {}, - "outputs": [], - "source": [ - "extravagant.n = extravagant.b.denominator()\n", - "extravagant.bgmlv = extravagant.chern.Q_tilt()\n", - "extravagant.corrolary_bound = (\n", - " r_upper_bound_all_q.expand()\n", - " .subs(Delta==extravagant.bgmlv)\n", - " .subs(nu==1) ## \\ell^2=1 on P^2\n", - " .subs(R==extravagant.chern.ch[0])\n", - " .subs(n==extravagant.n)\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 52, - "id": "bc7f5e56", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 53838.5009765625\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 53838.5009765625$" - ], - "text/plain": [ - "53838.5009765625" - ] - }, - "execution_count": 52, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "float(extravagant.corrolary_bound)" - ] - }, - { - "cell_type": "code", - "execution_count": 53, - "id": "00a2355a", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 49313\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 49313$" - ], - "text/plain": [ - "49313" - ] - }, - "execution_count": 53, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "extravagant.actual_rmax" - ] - }, { "cell_type": "code", "execution_count": 54, @@ -1869,158 +1554,6 @@ "source": [ "r_upper_bound2.rhs()" ] - }, - { - "cell_type": "code", - "execution_count": 60, - "id": "50a94cf4", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 3\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 3$" - ], - "text/plain": [ - "3" - ] - }, - "execution_count": 60, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "recurring.b.denominator()" - ] - }, - { - "cell_type": "code", - "execution_count": 61, - "id": "3171ad07", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 4\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 4$" - ], - "text/plain": [ - "4" - ] - }, - "execution_count": 61, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "recurring.twisted.ch[1]" - ] - }, - { - "cell_type": "code", - "execution_count": 62, - "id": "16b28a02", - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "\n", - "def bound_comparisons(example):\n", - " n = example.b.denominator()\n", - " a_v = example.b.numerator()\n", - "\n", - " def theorem_bound(v_twisted, q_val, k):\n", - " return int(min(\n", - " n^2*q_val^2/k\n", - " ,\n", - " v_twisted.ch[0]\n", - " + n^2*(v_twisted.ch[1] - q_val)^2/k\n", - " ))\n", - "\n", - " def k(n, a_v, b_q):\n", - " n = int(n)\n", - " a_v = int(a_v)\n", - " b_q = int(b_q)\n", - " k = -a_v*b_q % n\n", - " return k if k > 0 else k + n\n", - "\n", - " b_qs = list(range(example.twisted.ch[1]*n+1))\n", - " qs = list(map(lambda x: x/n,b_qs))\n", - " ks = list(map(lambda b_q: k(n, a_v, b_q), b_qs))\n", - " theorem2_bounds = [\n", - " theorem_bound(example.twisted, q_val, 1)\n", - " for q_val in qs\n", - " ]\n", - " theorem3_bounds = [\n", - " theorem_bound(example.twisted, q_val, k)\n", - " for q_val, k in zip(qs,ks)\n", - " ]\n", - " return qs, theorem2_bounds, theorem3_bounds\n", - "\n", - "qs, theorem2_bounds, theorem3_bounds = bound_comparisons(recurring)" - ] - }, - { - "cell_type": "code", - "execution_count": 63, - "id": "bb236b7b", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 36\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 36$" - ], - "text/plain": [ - "36" - ] - }, - "execution_count": 63, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "max(theorem2_bounds)" - ] - }, - { - "cell_type": "code", - "execution_count": 64, - "id": "7205efcd", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<html>\\(\\displaystyle 25\\)</html>" - ], - "text/latex": [ - "$\\displaystyle 25$" - ], - "text/plain": [ - "25" - ] - }, - "execution_count": 64, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "max(theorem3_bounds)" - ] } ], "metadata": {