{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "37fffbd3-25b5-42b5-a1e6-14af203048b1",
   "metadata": {},
   "source": [
    "<center><h1>SageDays129: Combinatorics Tutorial</h1></center>\n",
    "\n",
    "In this tutorial, we will explore some of the various combinatorial features available in SageMath. This will not be exhaustive and will have a bias based on the author's interests. For futher information and examples, please see the SageMath documentation: https://doc.sagemath.org/html/en/reference/index.html."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "f2ee9a29-563d-493a-a855-1d714599691f",
   "metadata": {},
   "outputs": [],
   "source": [
    "S5 = Permutations(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "2cdf43bd-2e57-45f3-ad9e-6b5fbccd1c46",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[[1, 2, 3, 4, 5],\n",
       " [1, 2, 3, 5, 4],\n",
       " [1, 2, 4, 3, 5],\n",
       " [1, 2, 4, 5, 3],\n",
       " [1, 2, 5, 3, 4],\n",
       " [1, 2, 5, 4, 3],\n",
       " [1, 3, 2, 4, 5],\n",
       " [1, 3, 2, 5, 4],\n",
       " [1, 3, 4, 2, 5],\n",
       " [1, 3, 4, 5, 2],\n",
       " [1, 3, 5, 2, 4],\n",
       " [1, 3, 5, 4, 2],\n",
       " [1, 4, 2, 3, 5],\n",
       " [1, 4, 2, 5, 3],\n",
       " [1, 4, 3, 2, 5],\n",
       " [1, 4, 3, 5, 2],\n",
       " [1, 4, 5, 2, 3],\n",
       " [1, 4, 5, 3, 2],\n",
       " [1, 5, 2, 3, 4],\n",
       " [1, 5, 2, 4, 3],\n",
       " [1, 5, 3, 2, 4],\n",
       " [1, 5, 3, 4, 2],\n",
       " [1, 5, 4, 2, 3],\n",
       " [1, 5, 4, 3, 2],\n",
       " [2, 1, 3, 4, 5],\n",
       " [2, 1, 3, 5, 4],\n",
       " [2, 1, 4, 3, 5],\n",
       " [2, 1, 4, 5, 3],\n",
       " [2, 1, 5, 3, 4],\n",
       " [2, 1, 5, 4, 3],\n",
       " [2, 3, 1, 4, 5],\n",
       " [2, 3, 1, 5, 4],\n",
       " [2, 3, 4, 1, 5],\n",
       " [2, 3, 4, 5, 1],\n",
       " [2, 3, 5, 1, 4],\n",
       " [2, 3, 5, 4, 1],\n",
       " [2, 4, 1, 3, 5],\n",
       " [2, 4, 1, 5, 3],\n",
       " [2, 4, 3, 1, 5],\n",
       " [2, 4, 3, 5, 1],\n",
       " [2, 4, 5, 1, 3],\n",
       " [2, 4, 5, 3, 1],\n",
       " [2, 5, 1, 3, 4],\n",
       " [2, 5, 1, 4, 3],\n",
       " [2, 5, 3, 1, 4],\n",
       " [2, 5, 3, 4, 1],\n",
       " [2, 5, 4, 1, 3],\n",
       " [2, 5, 4, 3, 1],\n",
       " [3, 1, 2, 4, 5],\n",
       " [3, 1, 2, 5, 4],\n",
       " [3, 1, 4, 2, 5],\n",
       " [3, 1, 4, 5, 2],\n",
       " [3, 1, 5, 2, 4],\n",
       " [3, 1, 5, 4, 2],\n",
       " [3, 2, 1, 4, 5],\n",
       " [3, 2, 1, 5, 4],\n",
       " [3, 2, 4, 1, 5],\n",
       " [3, 2, 4, 5, 1],\n",
       " [3, 2, 5, 1, 4],\n",
       " [3, 2, 5, 4, 1],\n",
       " [3, 4, 1, 2, 5],\n",
       " [3, 4, 1, 5, 2],\n",
       " [3, 4, 2, 1, 5],\n",
       " [3, 4, 2, 5, 1],\n",
       " [3, 4, 5, 1, 2],\n",
       " [3, 4, 5, 2, 1],\n",
       " [3, 5, 1, 2, 4],\n",
       " [3, 5, 1, 4, 2],\n",
       " [3, 5, 2, 1, 4],\n",
       " [3, 5, 2, 4, 1],\n",
       " [3, 5, 4, 1, 2],\n",
       " [3, 5, 4, 2, 1],\n",
       " [4, 1, 2, 3, 5],\n",
       " [4, 1, 2, 5, 3],\n",
       " [4, 1, 3, 2, 5],\n",
       " [4, 1, 3, 5, 2],\n",
       " [4, 1, 5, 2, 3],\n",
       " [4, 1, 5, 3, 2],\n",
       " [4, 2, 1, 3, 5],\n",
       " [4, 2, 1, 5, 3],\n",
       " [4, 2, 3, 1, 5],\n",
       " [4, 2, 3, 5, 1],\n",
       " [4, 2, 5, 1, 3],\n",
       " [4, 2, 5, 3, 1],\n",
       " [4, 3, 1, 2, 5],\n",
       " [4, 3, 1, 5, 2],\n",
       " [4, 3, 2, 1, 5],\n",
       " [4, 3, 2, 5, 1],\n",
       " [4, 3, 5, 1, 2],\n",
       " [4, 3, 5, 2, 1],\n",
       " [4, 5, 1, 2, 3],\n",
       " [4, 5, 1, 3, 2],\n",
       " [4, 5, 2, 1, 3],\n",
       " [4, 5, 2, 3, 1],\n",
       " [4, 5, 3, 1, 2],\n",
       " [4, 5, 3, 2, 1],\n",
       " [5, 1, 2, 3, 4],\n",
       " [5, 1, 2, 4, 3],\n",
       " [5, 1, 3, 2, 4],\n",
       " [5, 1, 3, 4, 2],\n",
       " [5, 1, 4, 2, 3],\n",
       " [5, 1, 4, 3, 2],\n",
       " [5, 2, 1, 3, 4],\n",
       " [5, 2, 1, 4, 3],\n",
       " [5, 2, 3, 1, 4],\n",
       " [5, 2, 3, 4, 1],\n",
       " [5, 2, 4, 1, 3],\n",
       " [5, 2, 4, 3, 1],\n",
       " [5, 3, 1, 2, 4],\n",
       " [5, 3, 1, 4, 2],\n",
       " [5, 3, 2, 1, 4],\n",
       " [5, 3, 2, 4, 1],\n",
       " [5, 3, 4, 1, 2],\n",
       " [5, 3, 4, 2, 1],\n",
       " [5, 4, 1, 2, 3],\n",
       " [5, 4, 1, 3, 2],\n",
       " [5, 4, 2, 1, 3],\n",
       " [5, 4, 2, 3, 1],\n",
       " [5, 4, 3, 1, 2],\n",
       " [5, 4, 3, 2, 1]]"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "list(S5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "8a45a922-1483-416a-bca4-537a4bd24bf9",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "q^10 + 4*q^9 + 9*q^8 + 15*q^7 + 20*q^6 + 22*q^5 + 20*q^4 + 15*q^3 + 9*q^2 + 4*q + 1"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "R.<q> = ZZ[]\n",
    "f = R.sum(q^sigma.number_of_inversions() for sigma in S5)\n",
    "f"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "512f2a4a-fcd9-42ec-a3c6-7480bf77d2b0",
   "metadata": {},
   "outputs": [],
   "source": [
    "%display latex"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "796a0f74-585e-4344-a7b0-ded55e1a4a2d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle q^{10} + 4q^{9} + 9q^{8} + 15q^{7} + 20q^{6} + 22q^{5} + 20q^{4} + 15q^{3} + 9q^{2} + 4q + 1\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle q^{10} + 4q^{9} + 9q^{8} + 15q^{7} + 20q^{6} + 22q^{5} + 20q^{4} + 15q^{3} + 9q^{2} + 4q + 1$"
      ],
      "text/plain": [
       "q^10 + 4*q^9 + 9*q^8 + 15*q^7 + 20*q^6 + 22*q^5 + 20*q^4 + 15*q^3 + 9*q^2 + 4*q + 1"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "f"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "da282415-971c-4a95-bfca-0c07f8af3d7f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle (q + 1)^{2} \\cdot (q^{2} + 1) \\cdot (q^{2} + q + 1) \\cdot (q^{4} + q^{3} + q^{2} + q + 1)\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle (q + 1)^{2} \\cdot (q^{2} + 1) \\cdot (q^{2} + q + 1) \\cdot (q^{4} + q^{3} + q^{2} + q + 1)$"
      ],
      "text/plain": [
       "(q + 1)^2 * (q^2 + 1) * (q^2 + q + 1) * (q^4 + q^3 + q^2 + q + 1)"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "f.factor()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "6b9308dc-033f-47ff-bc21-287ac23a5f9d",
   "metadata": {},
   "outputs": [],
   "source": [
    "from sage.combinat.q_analogues import q_int, q_factorial"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "ac6fa87c-dbe4-4dac-a48a-9f6ed97dfc9c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle q^{4} + q^{3} + q^{2} + q + 1\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle q^{4} + q^{3} + q^{2} + q + 1$"
      ],
      "text/plain": [
       "q^4 + q^3 + q^2 + q + 1"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "q_int(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "e6020f83-60b5-4137-aef8-652993dc733f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle (q + 1)^{2} \\cdot (q^{2} + 1) \\cdot (q^{2} + q + 1) \\cdot (q^{4} + q^{3} + q^{2} + q + 1)\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle (q + 1)^{2} \\cdot (q^{2} + 1) \\cdot (q^{2} + q + 1) \\cdot (q^{4} + q^{3} + q^{2} + q + 1)$"
      ],
      "text/plain": [
       "(q + 1)^2 * (q^2 + 1) * (q^2 + q + 1) * (q^4 + q^3 + q^2 + q + 1)"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "q_factorial(5).factor()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "2a4b75f4-5e17-4347-858f-5f9db3179fe9",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle (q + 1) \\cdot (q^{2} + 1)\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle (q + 1) \\cdot (q^{2} + 1)$"
      ],
      "text/plain": [
       "(q + 1) * (q^2 + 1)"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "q_int(4).factor()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "6d99265e-a79b-49dc-a2d1-9d761110ad14",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle \\left[\\left(-\\zeta_{60}^{6}, 1\\right), \\left(\\zeta_{60}^{10} - 1, 1\\right), \\left(-\\zeta_{60}^{10}, 1\\right), \\left(\\zeta_{60}^{12}, 1\\right), \\left(\\zeta_{60}^{14} - \\zeta_{60}^{4}, 1\\right), \\left(-\\zeta_{60}^{14} - \\zeta_{60}^{12} + \\zeta_{60}^{6} + \\zeta_{60}^{4} - 1, 1\\right), \\left(\\zeta_{60}^{15}, 1\\right), \\left(-\\zeta_{60}^{15}, 1\\right), \\left(-1, 2\\right)\\right]\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle \\left[\\left(-\\zeta_{60}^{6}, 1\\right), \\left(\\zeta_{60}^{10} - 1, 1\\right), \\left(-\\zeta_{60}^{10}, 1\\right), \\left(\\zeta_{60}^{12}, 1\\right), \\left(\\zeta_{60}^{14} - \\zeta_{60}^{4}, 1\\right), \\left(-\\zeta_{60}^{14} - \\zeta_{60}^{12} + \\zeta_{60}^{6} + \\zeta_{60}^{4} - 1, 1\\right), \\left(\\zeta_{60}^{15}, 1\\right), \\left(-\\zeta_{60}^{15}, 1\\right), \\left(-1, 2\\right)\\right]$"
      ],
      "text/plain": [
       "[(-zeta60^6, 1),\n",
       " (zeta60^10 - 1, 1),\n",
       " (-zeta60^10, 1),\n",
       " (zeta60^12, 1),\n",
       " (zeta60^14 - zeta60^4, 1),\n",
       " (-zeta60^14 - zeta60^12 + zeta60^6 + zeta60^4 - 1, 1),\n",
       " (zeta60^15, 1),\n",
       " (-zeta60^15, 1),\n",
       " (-1, 2)]"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "f.roots(CyclotomicField(60))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "088901f5-81bc-4ec4-b3a6-71323c37de6b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle 0\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle 0$"
      ],
      "text/plain": [
       "0"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "f(q=-1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "43953039-3fcb-4867-af9d-07456aa7cb75",
   "metadata": {},
   "outputs": [],
   "source": [
    "p = S5.random_element()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "74a6cc08-b2df-459d-a178-d4074e075232",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle [3, 4, 5, 1, 2]\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle [3, 4, 5, 1, 2]$"
      ],
      "text/plain": [
       "[3, 4, 5, 1, 2]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "p"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "62b13c8c-20e6-40b4-8f99-d451d46d47fb",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle 5 m_{1,1,1,1,1,1} + 2 m_{2,1,1,1,1} + m_{2,2,1,1} + m_{2,2,2}\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle 5 m_{1,1,1,1,1,1} + 2 m_{2,1,1,1,1} + m_{2,2,1,1} + m_{2,2,2}$"
      ],
      "text/plain": [
       "5*m[1, 1, 1, 1, 1, 1] + 2*m[2, 1, 1, 1, 1] + m[2, 2, 1, 1] + m[2, 2, 2]"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "p.stanley_symmetric_function()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "d802871c-65ea-495a-85c1-3ecbb9be2139",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle \\verb|Symmetric|\\verb| |\\verb|Functions|\\verb| |\\verb|over|\\verb| |\\verb|Rational|\\verb| |\\verb|Field|\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle \\verb|Symmetric|\\verb| |\\verb|Functions|\\verb| |\\verb|over|\\verb| |\\verb|Rational|\\verb| |\\verb|Field|$"
      ],
      "text/plain": [
       "Symmetric Functions over Rational Field"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Sym = SymmetricFunctions(QQ)\n",
    "Sym"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "588915fe-14cb-4008-960c-42e0e8e66d72",
   "metadata": {},
   "outputs": [],
   "source": [
    "s = Sym.s()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "3ab03ceb-27eb-4870-91ac-e557a54cb699",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle s_{2,2,2}\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle s_{2,2,2}$"
      ],
      "text/plain": [
       "s[2, 2, 2]"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "s(p.stanley_symmetric_function())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "96828800-0790-4fa1-ae8b-121db51c58f7",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1, 2, 3, 4] s[]\n",
      "[1, 2, 4, 3] s[1]\n",
      "[1, 3, 2, 4] s[1]\n",
      "[1, 3, 4, 2] s[1, 1]\n",
      "[1, 4, 2, 3] s[2]\n",
      "[1, 4, 3, 2] s[2, 1]\n",
      "[2, 1, 3, 4] s[1]\n",
      "[2, 1, 4, 3] s[1, 1] + s[2]\n",
      "[2, 3, 1, 4] s[1, 1]\n",
      "[2, 3, 4, 1] s[1, 1, 1]\n",
      "[2, 4, 1, 3] s[2, 1]\n",
      "[2, 4, 3, 1] s[2, 1, 1]\n",
      "[3, 1, 2, 4] s[2]\n",
      "[3, 1, 4, 2] s[2, 1]\n",
      "[3, 2, 1, 4] s[2, 1]\n",
      "[3, 2, 4, 1] s[2, 1, 1]\n",
      "[3, 4, 1, 2] s[2, 2]\n",
      "[3, 4, 2, 1] s[2, 2, 1]\n",
      "[4, 1, 2, 3] s[3]\n",
      "[4, 1, 3, 2] s[3, 1]\n",
      "[4, 2, 1, 3] s[3, 1]\n",
      "[4, 2, 3, 1] s[3, 1, 1]\n",
      "[4, 3, 1, 2] s[3, 2]\n",
      "[4, 3, 2, 1] s[3, 2, 1]\n"
     ]
    }
   ],
   "source": [
    "for p in Permutations(4):\n",
    "    print(p, s(p.stanley_symmetric_function()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "id": "bdcf0fbe-0e9d-4764-a297-80c7594b0d48",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1, 2, 3, 4, 5] s[]\n",
      "[1, 2, 3, 5, 4] s[1]\n",
      "[1, 2, 5, 3, 4] s[2]\n",
      "[1, 5, 2, 3, 4] s[3]\n",
      "[5, 1, 2, 3, 4] s[4]\n",
      "[1, 2, 4, 3, 5] s[1]\n",
      "[1, 2, 4, 5, 3] s[1, 1]\n",
      "[1, 2, 5, 4, 3] s[2, 1]\n",
      "[1, 5, 2, 4, 3] s[3, 1]\n",
      "[5, 1, 2, 4, 3] s[4, 1]\n",
      "[1, 4, 2, 3, 5] s[2]\n",
      "[1, 4, 2, 5, 3] s[2, 1]\n",
      "[1, 4, 5, 2, 3] s[2, 2]\n",
      "[1, 5, 4, 2, 3] s[3, 2]\n",
      "[5, 1, 4, 2, 3] s[4, 2]\n",
      "[4, 1, 2, 3, 5] s[3]\n",
      "[4, 1, 2, 5, 3] s[3, 1]\n",
      "[4, 1, 5, 2, 3] s[3, 2]\n",
      "[4, 5, 1, 2, 3] s[3, 3]\n",
      "[5, 4, 1, 2, 3] s[4, 3]\n",
      "[1, 3, 2, 4, 5] s[1]\n",
      "[1, 3, 5, 2, 4] s[2, 1]\n",
      "[1, 5, 3, 2, 4] s[3, 1]\n",
      "[5, 1, 3, 2, 4] s[4, 1]\n",
      "[1, 3, 4, 2, 5] s[1, 1]\n",
      "[1, 3, 4, 5, 2] s[1, 1, 1]\n",
      "[1, 3, 5, 4, 2] s[2, 1, 1]\n",
      "[1, 5, 3, 4, 2] s[3, 1, 1]\n",
      "[5, 1, 3, 4, 2] s[4, 1, 1]\n",
      "[1, 4, 3, 2, 5] s[2, 1]\n",
      "[1, 4, 3, 5, 2] s[2, 1, 1]\n",
      "[1, 4, 5, 3, 2] s[2, 2, 1]\n",
      "[1, 5, 4, 3, 2] s[3, 2, 1]\n",
      "[5, 1, 4, 3, 2] s[4, 2, 1]\n",
      "[4, 1, 3, 2, 5] s[3, 1]\n",
      "[4, 1, 3, 5, 2] s[3, 1, 1]\n",
      "[4, 1, 5, 3, 2] s[3, 2, 1]\n",
      "[4, 5, 1, 3, 2] s[3, 3, 1]\n",
      "[5, 4, 1, 3, 2] s[4, 3, 1]\n",
      "[3, 1, 2, 4, 5] s[2]\n",
      "[3, 5, 1, 2, 4] s[3, 2]\n",
      "[5, 3, 1, 2, 4] s[4, 2]\n",
      "[3, 1, 4, 2, 5] s[2, 1]\n",
      "[3, 1, 4, 5, 2] s[2, 1, 1]\n",
      "[3, 5, 1, 4, 2] s[3, 2, 1]\n",
      "[5, 3, 1, 4, 2] s[4, 2, 1]\n",
      "[3, 4, 1, 2, 5] s[2, 2]\n",
      "[3, 4, 1, 5, 2] s[2, 2, 1]\n",
      "[3, 4, 5, 1, 2] s[2, 2, 2]\n",
      "[3, 5, 4, 1, 2] s[3, 2, 2]\n",
      "[5, 3, 4, 1, 2] s[4, 2, 2]\n",
      "[4, 3, 1, 2, 5] s[3, 2]\n",
      "[4, 3, 1, 5, 2] s[3, 2, 1]\n",
      "[4, 3, 5, 1, 2] s[3, 2, 2]\n",
      "[4, 5, 3, 1, 2] s[3, 3, 2]\n",
      "[5, 4, 3, 1, 2] s[4, 3, 2]\n",
      "[2, 1, 3, 4, 5] s[1]\n",
      "[2, 5, 1, 3, 4] s[3, 1]\n",
      "[5, 2, 1, 3, 4] s[4, 1]\n",
      "[2, 4, 1, 3, 5] s[2, 1]\n",
      "[2, 4, 5, 1, 3] s[2, 2, 1]\n",
      "[2, 5, 4, 1, 3] s[3, 2, 1]\n",
      "[5, 2, 4, 1, 3] s[4, 2, 1]\n",
      "[4, 2, 1, 3, 5] s[3, 1]\n",
      "[4, 2, 5, 1, 3] s[3, 2, 1]\n",
      "[4, 5, 2, 1, 3] s[3, 3, 1]\n",
      "[5, 4, 2, 1, 3] s[4, 3, 1]\n",
      "[2, 3, 1, 4, 5] s[1, 1]\n",
      "[2, 3, 5, 1, 4] s[2, 1, 1]\n",
      "[2, 5, 3, 1, 4] s[3, 1, 1]\n",
      "[5, 2, 3, 1, 4] s[4, 1, 1]\n",
      "[2, 3, 4, 1, 5] s[1, 1, 1]\n",
      "[2, 3, 4, 5, 1] s[1, 1, 1, 1]\n",
      "[2, 3, 5, 4, 1] s[2, 1, 1, 1]\n",
      "[2, 5, 3, 4, 1] s[3, 1, 1, 1]\n",
      "[5, 2, 3, 4, 1] s[4, 1, 1, 1]\n",
      "[2, 4, 3, 1, 5] s[2, 1, 1]\n",
      "[2, 4, 3, 5, 1] s[2, 1, 1, 1]\n",
      "[2, 4, 5, 3, 1] s[2, 2, 1, 1]\n",
      "[2, 5, 4, 3, 1] s[3, 2, 1, 1]\n",
      "[5, 2, 4, 3, 1] s[4, 2, 1, 1]\n",
      "[4, 2, 3, 1, 5] s[3, 1, 1]\n",
      "[4, 2, 3, 5, 1] s[3, 1, 1, 1]\n",
      "[4, 2, 5, 3, 1] s[3, 2, 1, 1]\n",
      "[4, 5, 2, 3, 1] s[3, 3, 1, 1]\n",
      "[5, 4, 2, 3, 1] s[4, 3, 1, 1]\n",
      "[3, 2, 1, 4, 5] s[2, 1]\n",
      "[3, 5, 2, 1, 4] s[3, 2, 1]\n",
      "[5, 3, 2, 1, 4] s[4, 2, 1]\n",
      "[3, 2, 4, 1, 5] s[2, 1, 1]\n",
      "[3, 2, 4, 5, 1] s[2, 1, 1, 1]\n",
      "[3, 5, 2, 4, 1] s[3, 2, 1, 1]\n",
      "[5, 3, 2, 4, 1] s[4, 2, 1, 1]\n",
      "[3, 4, 2, 1, 5] s[2, 2, 1]\n",
      "[3, 4, 2, 5, 1] s[2, 2, 1, 1]\n",
      "[3, 4, 5, 2, 1] s[2, 2, 2, 1]\n",
      "[3, 5, 4, 2, 1] s[3, 2, 2, 1]\n",
      "[5, 3, 4, 2, 1] s[4, 2, 2, 1]\n",
      "[4, 3, 2, 1, 5] s[3, 2, 1]\n",
      "[4, 3, 2, 5, 1] s[3, 2, 1, 1]\n",
      "[4, 3, 5, 2, 1] s[3, 2, 2, 1]\n",
      "[4, 5, 3, 2, 1] s[3, 3, 2, 1]\n",
      "[5, 4, 3, 2, 1] s[4, 3, 2, 1]\n"
     ]
    }
   ],
   "source": [
    "for p in Permutations(5, avoiding=[2,1,4,3]):\n",
    "    print(p, s(S5(p).stanley_symmetric_function()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "id": "7e3e77a2-7972-4e7d-8169-26091580b8e3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<html>\\(\\displaystyle 42\\)</html>"
      ],
      "text/latex": [
       "$\\displaystyle 42$"
      ],
      "text/plain": [
       "42"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Partitions(10).cardinality()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "id": "182602f6-2459-4756-90a3-8651076bae45",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[                                                       * ]\n",
       "[                                                   **  * ]\n",
       "[                                      ***      **  *   * ]\n",
       "[                      ****       ***  *    **  **  *   * ]\n",
       "[         *****  ****  *     ***  **   *    **  *   *   * ]\n",
       "[ ******, *    , **  , *   , ***, *  , *  , **, * , * , * ]"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "%display ascii_art\n",
    "list(Partitions(6))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "id": "292a54be-c59d-459b-8c4f-93cbae2aa053",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1 + z + 2*z^2 + 3*z^3 + 5*z^4 + 7*z^5 + 11*z^6 + O(z^7)"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "R.<z> = LazyPowerSeriesRing(QQ)\n",
    "P = R(lambda n: Partitions(n).cardinality())\n",
    "P"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "id": "b0a4e55a-87a0-423d-a756-9da5b1e2e9df",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1 + -z + -z^2 + z^5 + O(z^7)"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "~P"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "id": "c9c7846d-d282-4c7f-b442-a8a14189fe15",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1 + -z + -z^2 + z^5 + O(z^7)"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "z.euler()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "id": "87bcaa96-c8c2-4d7c-9454-49c5a20f8660",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Pinv = ~P\n",
    "euler = z.euler()\n",
    "all(Pinv[i] == euler[i] for i in range(40))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "01945459-4c2b-47eb-ae7a-ef1323fea6ab",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1 + z + 5/2*z^2 + 31/6*z^3 + 265/24*z^4 + 2621/120*z^5 + 31621/720*z^6 + O(z^7)"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "exp(P-1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "id": "c6ccb155-de31-40fd-a04f-e309c9575406",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "42"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "BT5 = BinaryTrees(5)\n",
    "BT5.cardinality()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "id": "9af43be8-03cb-4580-b16b-c64a89293969",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[ o        , o      , o      , o    , o    , o      ,  o     ,  o     ,   o    ,\n",
       "[  \\          \\        \\        \\      \\      \\         \\        \\         \\    \n",
       "[   o          o        o        o      o      o        _o_      _o_        o   \n",
       "[    \\          \\        \\        \\      \\    / \\      /   \\    /   \\      / \\  \n",
       "[     o          o        o        o      o  o   o    o     o  o     o    o   o \n",
       "[      \\          \\      / \\      /      /        \\        /    \\        /      \n",
       "[       o          o    o   o    o      o          o      o      o      o       \n",
       "[        \\        /               \\    /                                        \n",
       "[         o      o                 o  o                                         \n",
       "\n",
       " o    , o  ,   o  ,   o  ,     o  ,   o      ,   o    ,   _o_    ,   _o_  ,\n",
       "  \\      \\      \\      \\        \\    / \\        / \\      /   \\      /   \\  \n",
       "   o      o      o      o        o  o   o      o   o    o     o    o     o \n",
       "  /      /      /      /        /        \\          \\        / \\        /  \n",
       " o      o      o      o        o          o          o      o   o      o   \n",
       "  \\      \\    / \\    /        /            \\        /                   \\  \n",
       "   o      o  o   o  o        o              o      o                     o \n",
       "    \\    /           \\      /                                              \n",
       "     o  o             o    o                                               \n",
       "\n",
       "   __o__  ,   _o_    ,   __o__  ,     o    ,     _o_  ,   __o__  ,   _o_  ,\n",
       "  /     \\    /   \\      /     \\      / \\        /   \\    /     \\    /   \\  \n",
       " o       o  o     o    o       o    o   o      o     o  o       o  o     o \n",
       "        /    \\     \\    \\     /    /     \\    /     /    \\          \\      \n",
       "       o      o     o    o   o    o       o  o     o      o          o     \n",
       "      /                                                    \\        /      \n",
       "     o                                                      o      o       \n",
       "                                                                           \n",
       "                                                                           \n",
       "\n",
       "     _o_  ,     o  ,       o  ,   o    ,   o  ,   o  ,   o,     o,     o  ,\n",
       "    /   \\      / \\        / \\    /        /      /      /      /      /    \n",
       "   o     o    o   o      o   o  o        o      o      o      o      o     \n",
       "  / \\        /          /        \\        \\      \\      \\      \\    / \\    \n",
       " o   o      o          o          o        o      o      o      o  o   o   \n",
       "             \\        /            \\        \\    / \\    /      /        \\  \n",
       "              o      o              o        o  o   o  o      o          o \n",
       "                                     \\      /           \\    /             \n",
       "                                      o    o             o  o              \n",
       "\n",
       "      o ,      o ,       o,     o,     o,       o,       o,         o ]\n",
       "     /        /         /      /      /        /        /          /  ]\n",
       "   _o_      _o_        o      o      o        o        o          o   ]\n",
       "  /   \\    /   \\      / \\    /      /        /        /          /    ]\n",
       " o     o  o     o    o   o  o      o        o        o          o     ]\n",
       "      /    \\        /        \\      \\      / \\      /          /      ]\n",
       "     o      o      o          o      o    o   o    o          o       ]\n",
       "                               \\    /               \\        /        ]\n",
       "                                o  o                 o      o         ]"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "list(BT5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "id": "faffd9c5-b18c-49aa-b202-3b4d5ec0cad1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "  o\n",
       " /\n",
       "o\n",
       " \\\n",
       "  o\n",
       " / \\\n",
       "o   o"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "T = BT5[30]\n",
    "T"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "id": "9039d2a4-d5cc-46cb-8be2-3dc0c45cc553",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[2, 4, 3, 1, 5]"
      ]
     },
     "execution_count": 49,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "T.to_312_avoiding_permutation()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "id": "f532dc41-8948-4882-87ad-62e21b26283b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mInit signature:\u001b[0m \u001b[0mOrderedTree\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mparent\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mchildren\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcheck\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
       "\u001b[0;31mDocstring:\u001b[0m     \n",
       "   The class of (ordered rooted) trees.\n",
       "\n",
       "   An ordered tree is constructed from a node, called the root, on\n",
       "   which one has grafted a possibly empty list of trees. There is a\n",
       "   total order on the children of a node which is given by the order\n",
       "   of the elements in the list. Note that there is no empty ordered\n",
       "   tree (so the smallest ordered tree consists of just one node).\n",
       "\n",
       "   INPUT:\n",
       "\n",
       "   One can create a tree from any list (or more generally iterable) of\n",
       "   trees or objects convertible to a tree. Alternatively a string is\n",
       "   also accepted. The syntax is the same as for printing: children are\n",
       "   grouped by square brackets.\n",
       "\n",
       "   EXAMPLES:\n",
       "\n",
       "      sage: x = OrderedTree([])\n",
       "      sage: x1 = OrderedTree([x,x])\n",
       "      sage: x2 = OrderedTree([[],[]])\n",
       "      sage: x1 == x2\n",
       "      True\n",
       "      sage: tt1 = OrderedTree([x,x1,x2])\n",
       "      sage: tt2 = OrderedTree([[], [[], []], x2])\n",
       "      sage: tt1 == tt2\n",
       "      True\n",
       "\n",
       "      sage: OrderedTree([]) == OrderedTree()\n",
       "      True\n",
       "\u001b[0;31mFile:\u001b[0m           ~/sage/src/sage/combinat/ordered_tree.py\n",
       "\u001b[0;31mType:\u001b[0m           InheritComparisonClasscallMetaclass\n",
       "\u001b[0;31mSubclasses:\u001b[0m     LabelledOrderedTree"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "OrderedTree?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "id": "9d197afa-5958-4977-98e6-d001a5fe3116",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001b[0;31mDocstring:\u001b[0m     \n",
       "   A factory class for the various classes of tableaux.\n",
       "\n",
       "   INPUT:\n",
       "\n",
       "   * \"n\" -- (optional) nonnegative integer\n",
       "\n",
       "   OUTPUT:\n",
       "\n",
       "   * If \"n\" is specified, the class of tableaux of size \"n\".\n",
       "     Otherwise, the class of all tableaux.\n",
       "\n",
       "   A tableau in Sage is a finite list of lists, whose lengths are\n",
       "   weakly decreasing, or an empty list, representing the empty\n",
       "   tableau.  The entries of a tableau can be any Sage objects. Because\n",
       "   of this, no enumeration through the set of Tableaux is possible.\n",
       "\n",
       "   EXAMPLES:\n",
       "\n",
       "      sage: T = Tableaux(); T\n",
       "      Tableaux\n",
       "      sage: T3 = Tableaux(3); T3\n",
       "      Tableaux of size 3\n",
       "      sage: [['a','b']] in T\n",
       "      True\n",
       "      sage: [['a','b']] in T3\n",
       "      False\n",
       "      sage: t = T3([[1,1,1]]); t\n",
       "      [[1, 1, 1]]\n",
       "      sage: t in T\n",
       "      True\n",
       "      sage: t.parent()\n",
       "      Tableaux of size 3\n",
       "      sage: T([]) # the empty tableau\n",
       "      []\n",
       "      sage: T.category()\n",
       "      Category of sets\n",
       "\n",
       "   See also:\n",
       "\n",
       "     * \"Tableau\"\n",
       "\n",
       "     * \"SemistandardTableaux\"\n",
       "\n",
       "     * \"SemistandardTableau\"\n",
       "\n",
       "     * \"StandardTableaux\"\n",
       "\n",
       "     * \"StandardTableau\"\n",
       "\u001b[0;31mInit docstring:\u001b[0m\n",
       "   Base class for all parents.\n",
       "\n",
       "   Parents are the Sage/mathematical analogues of container objects in\n",
       "   computer science.\n",
       "\n",
       "   INPUT:\n",
       "\n",
       "   * \"base\" -- an algebraic structure considered to be the \"base\" of\n",
       "     this parent (e.g. the base field for a vector space)\n",
       "\n",
       "   * \"category\" -- a category or list/tuple of categories. The\n",
       "     category in which this parent lies (or list or tuple thereof).\n",
       "     Since categories support more general super-categories, this\n",
       "     should be the most specific category possible. If category is a\n",
       "     list or tuple, a \"JoinCategory\" is created out of them. If\n",
       "     category is not specified, the category will be guessed (see\n",
       "     \"CategoryObject\"), but will not be used to inherit parent's or\n",
       "     element's code from this category.\n",
       "\n",
       "   * \"names\" -- names of generators\n",
       "\n",
       "   * \"normalize\" -- whether to standardize the names (remove\n",
       "     punctuation, etc.)\n",
       "\n",
       "   * \"facade\" -- a parent, or tuple thereof, or \"True\"\n",
       "\n",
       "   If \"facade\" is specified, then \"Sets().Facade()\" is added to the\n",
       "   categories of the parent. Furthermore, if \"facade\" is not \"True\",\n",
       "   the internal attribute \"_facade_for\" is set accordingly for use by\n",
       "   \"Sets.Facade.ParentMethods.facade_for()\".\n",
       "\n",
       "   Internal invariants:\n",
       "\n",
       "   * \"self._element_init_pass_parent == guess_pass_parent(self,\n",
       "     self._element_constructor)\" Ensures that \"__call__()\" passes down\n",
       "     the parent properly to \"_element_constructor()\".  See\n",
       "     https://github.com/sagemath/sage/issues/5979.\n",
       "\n",
       "   Todo: Eventually, category should be \"Sets\" by default.\n",
       "\u001b[0;31mFile:\u001b[0m           ~/sage/src/sage/structure/parent.pyx\n",
       "\u001b[0;31mType:\u001b[0m           ClasscallMetaclass\n",
       "\u001b[0;31mSubclasses:\u001b[0m     Tableaux_all, Tableaux_size, SemistandardTableaux, RowStandardTableaux, IncreasingTableaux"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "Tableaux?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "id": "eccbab22-0e07-4ec1-8ce6-1abe098e5277",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "58459697779041725620255063908344870437599840897335296"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ST70 = StandardTableaux(70)\n",
    "ST70.cardinality()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "id": "0bf06325-a306-4ec1-b0c7-f89f65e45bba",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "2^18 * 13 * 443 * 25058991648035053487 * 1545275695586148552461923"
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ST70.cardinality().factor()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "id": "869a5a18-1824-4cf6-b5c2-912d7a1f3b50",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "**************\n",
       "*************\n",
       "************\n",
       "*******\n",
       "******\n",
       "****\n",
       "***\n",
       "***\n",
       "**\n",
       "**\n",
       "**\n",
       "*\n",
       "*"
      ]
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "la = Partitions(70).random_element()\n",
    "la"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "id": "8f097cb2-7bbe-4701-8bb0-c494161016fa",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "2^15 * 3^7 * 5^9 * 7^3 * 11 * 13^2 * 17^3 * 19 * 23^2 * 29^2 * 31^2 * 37 * 41 * 43 * 47 * 53 * 59 * 61 * 67"
      ]
     },
     "execution_count": 56,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "StandardTableaux(la).cardinality().factor()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "id": "bdae18cf-1509-4d6f-9529-6088170dae5e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "  1  3  4  6 10 11 16 22 29 39 53 65\n",
       "  2  5  7  8 14 18 28 31 50 55 58 67\n",
       "  9 15 20 23 30 34 48 59 62\n",
       " 12 21 25 36 47 54 60 64\n",
       " 13 24 26 37 56\n",
       " 17 32 40 41 66\n",
       " 19 35 51 52 68\n",
       " 27 38 69\n",
       " 33 42 70\n",
       " 43 57\n",
       " 44\n",
       " 45\n",
       " 46\n",
       " 49\n",
       " 61\n",
       " 63"
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ST70.random_element()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "id": "f1f751de-8067-4e41-8aa7-1a84c8c3e5d5",
   "metadata": {},
   "outputs": [],
   "source": [
    "P70 = Partitions(70)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "id": "4d93cf96-9349-479c-9163-63560aea54ac",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "**************\n",
       "*********\n",
       "********\n",
       "*******\n",
       "*******\n",
       "******\n",
       "******\n",
       "***\n",
       "***\n",
       "**\n",
       "*\n",
       "*\n",
       "*\n",
       "*\n",
       "*"
      ]
     },
     "execution_count": 60,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "P70.random_element_plancherel()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "id": "44acf72d-5765-4b74-9398-7daad762b059",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "9253082936723602"
      ]
     },
     "execution_count": 65,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "P300 = Partitions(300)\n",
    "P300.cardinality()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "id": "4b3ffbbc-4c90-4b4a-a3b2-0359dc0bd54d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "300 x 300 dense matrix over Integer Ring"
      ]
     },
     "execution_count": 66,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "M = matrix.zero(300)\n",
    "M"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "id": "fa1cf9d4-1f78-4d0f-b32d-1499116b391a",
   "metadata": {},
   "outputs": [],
   "source": [
    "for _ in range(1000):\n",
    "    la = P300.random_element_plancherel()\n",
    "    for c in la.cells():\n",
    "        M[c] += 1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "id": "a0ade1e7-d4a5-4f0b-8565-9c0dd64f89a2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "Graphics object consisting of 1 graphics primitive"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "M.submatrix(0,0,50,50).plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "id": "49dbb7b1-4704-445d-9432-2695774c3737",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       " ***\n",
       " **\n",
       "S"
      ]
     },
     "execution_count": 74,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "la = Partition([3,2])\n",
    "S = la.specht_module(QQ)\n",
    "S"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "id": "d610723e-393a-4bc8-b4d8-f25668557c18",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(5, 1, 1, -1, 1, -1, 0)"
      ]
     },
     "execution_count": 75,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "S.character()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "id": "0a94f9a3-3d22-46cb-9423-a6bdd3eb16e9",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       " ****\n",
       " ***\n",
       " *\n",
       "S"
      ]
     },
     "execution_count": 79,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "la = Partition([4,3,1])\n",
    "S = la.specht_module(GF(3))\n",
    "S"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "id": "5cd60146-8d86-482c-9bbf-4619906db8c1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "7"
      ]
     },
     "execution_count": 80,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "S.simple_module().dimension()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "id": "6d5ce876-f9a5-48c2-bd47-5c96f8fca2e3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "70"
      ]
     },
     "execution_count": 81,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "S.dimension()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "id": "8264b289-0f89-4268-b5b4-f32b129ed9f1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Fano: Binary matroid of rank 3 on 7 elements, type (3, 0)"
      ]
     },
     "execution_count": 82,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "F = matroids.named_matroids.Fano()\n",
    "F"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "id": "ed70b5c4-25c2-4bc1-9246-c43d73f69e1f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "168"
      ]
     },
     "execution_count": 84,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "F.automorphism_group().cardinality()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "id": "1c2858ce-55e6-4310-8893-fcdf16817dac",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Orlik-Solomon algebra of Fano: Binary matroid of rank 3 on 7 elements, type (3, 0)"
      ]
     },
     "execution_count": 86,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "OS = F.orlik_solomon_algebra(QQ)\n",
    "OS"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "id": "30376bb0-c2f0-4645-8516-663b54a5a7a3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "30"
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "OS.dimension()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "id": "de625f25-63f2-4306-a058-634016e455cd",
   "metadata": {},
   "outputs": [],
   "source": [
    "BA4 = hyperplane_arrangements.braid(4)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "id": "22298b8b-1f45-4f5c-ae2f-755f5e23d382",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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DIPBgEGTZ+DSjZuY9+WXAIDOnTvju+++c6stBQUFeP112wlfAwEp6zB16lRMnToVu3fvxt9//y16e4GM1PsD4x5cB99y//59nDp1Clu3bsWHH35o+uOa6+AeISEhGDBggN3rb52h0WgQERFhuhsO4N8acFesQomPj8f8+fPx4osvAgBmvfumoL8K7t7LxaDJM7B08zYsW7bM4ubCxht5Dx1q/9oXR5QsWRLJycniPoBKkLIOo0ePxt27d03L6PV6lClTBpUrV0blypURFxdn8ShdujSPVvt/vLE/MOLhOkjL/fv3ceHCBZw9e9bikZWVhTNnzuDq1asw73R76qmn0L59e66DB7z66quYMkXYXVKAh1IXFBSEzZs347HHHjM9788acFeswlm+fDkGDBiA0sWKYvKQfuj0dAO7Ayry8wuwblca3p35NS7duIn58+ejZ8+edrc5YsQIwT9snU6HUaNGISUlxZOPoXikqMPixYvRp08fu9s3jtIyv7bRWvw6duyITp06eeHTKQdv7A+MeLgO4jEYDJg+fTrS09MdiltQUBAMBgMKCgps1tfpdDh58qTFtc5cB/do0qQJdu/eLShp02g0WLNmDZ599lm7r/ujBix2KiArKwsDX30V23fsQGxMNFomJSIxoRKiCofjds5dHMo8ja3ph/D31Wto0bw55s6b5/SvAIPBgF69emHlypWCfti//fYbnnrqKSk/kiLxtA5EhEaNGmHv3r1udcN26NAB69evl/IjKRKp9wfGPbgO4jAYDChWrJhb13dptVq8//77mDDBdoQr10E8EydOxKhRowQtO3v2bJeXIvm8BsSohvT0dBoyZAjVTUqikJAQAkAhISFUNymJhgwZQunp6YK3lZubS02aNCGdTkcA7D40Gg3pdDrSarXUoUMHWrduHT148MCLn1AZeFKHP/74gzQajcPv3NEjODiYjh8/7sNPKX+E1OGff/4hg8Hg76aqjry8PLp16xYRSXtcUjuLFy8Wve9rNBoqUaIE3blzx+m2uQ7Oyc7Oprlz51KdOnVM36ur7/79998X9R6+qgGLnYopKCjwaP1bt25R1apVncrdt99+S3PnzqWkpCQCQGXLlqWxY8fS+fPnJfoUykdsHfr06eP0O7f3+Oyzz7zUevVgXYe8vDzSaDSUmJhIN27c8FOr1EdGRgZFRkZSTEyM3dc9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",
      "text/plain": [
       "Finite poset containing 15 elements"
      ]
     },
     "execution_count": 91,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "IP = BA4.intersection_poset()\n",
    "IP"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "id": "74fc182f-3d0d-4402-b3b2-948ee1d988f4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "347"
      ]
     },
     "execution_count": 94,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "len(list(IP.antichains()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "id": "a955fa87-9f04-47d3-944f-cf250afc1bb8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<class 'sage.combinat.posets.posets.FinitePoset_with_category'>"
      ]
     },
     "execution_count": 95,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "type(IP)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "id": "66540538-6eee-4a75-83dd-3eef76170fc8",
   "metadata": {},
   "outputs": [],
   "source": [
    "IPL = LatticePoset(IP)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "id": "2b3d1e9e-27f7-428d-b442-f4574d895211",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "q^3 + 7*q^2 + 6*q + 1"
      ]
     },
     "execution_count": 98,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sum(q^IPL.rank_function()(elt) for elt in IPL)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 99,
   "id": "191d89cd-6ee1-43aa-80dd-b810068e97d4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 99,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "IPL.is_sperner()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "id": "49799596-551d-4f10-a6ed-347853d4c034",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[ [1 0 0 0]  [0 1 0 0]  [1 0 0 0]  [ 0  1  0  0]  [0 0 1 0]  [0 1 0 0] \n",
       "[ [0 1 0 0]  [1 0 0 0]  [0 0 1 0]  [ 1 -1  1  0]  [1 0 0 0]  [0 0 1 0] \n",
       "[ [0 0 1 0]  [0 0 1 0]  [0 1 0 0]  [ 0  1  0  0]  [0 1 0 0]  [1 0 0 0] \n",
       "[ [0 0 0 1], [0 0 0 1], [0 0 0 1], [ 0  0  0  1], [0 0 0 1], [0 0 0 1],\n",
       "\n",
       " [0 0 1 0]  [1 0 0 0]  [0 1 0 0]  [ 1  0  0  0]  [ 0  1  0  0]  [ 0  0  1  0] \n",
       " [0 1 0 0]  [0 1 0 0]  [1 0 0 0]  [ 0  0  1  0]  [ 1 -1  1  0]  [ 1  0  0  0] \n",
       " [1 0 0 0]  [0 0 0 1]  [0 0 0 1]  [ 0  1 -1  1]  [ 0  1 -1  1]  [ 0  1 -1  1] \n",
       " [0 0 0 1], [0 0 1 0], [0 0 1 0], [ 0  0  1  0], [ 0  0  1  0], [ 0  0  1  0],\n",
       "\n",
       " [ 0  1  0  0]  [ 0  0  1  0]  [1 0 0 0]  [ 0  1  0  0]  [ 0  0  1  0] \n",
       " [ 0  0  1  0]  [ 0  1  0  0]  [0 0 0 1]  [ 1 -1  0  1]  [ 1  0 -1  1] \n",
       " [ 1  0 -1  1]  [ 1  0 -1  1]  [0 1 0 0]  [ 0  1  0  0]  [ 0  1  0  0] \n",
       " [ 0  0  1  0], [ 0  0  1  0], [0 0 1 0], [ 0  0  1  0], [ 0  0  1  0],\n",
       "\n",
       " [0 0 0 1]  [0 1 0 0]  [ 0  0  1  0]  [0 0 0 1]  [1 0 0 0]  [ 0  1  0  0] \n",
       " [1 0 0 0]  [0 0 0 1]  [ 0  1 -1  1]  [0 1 0 0]  [0 0 1 0]  [ 1 -1  1  0] \n",
       " [0 1 0 0]  [1 0 0 0]  [ 1  0  0  0]  [1 0 0 0]  [0 0 0 1]  [ 0  0  0  1] \n",
       " [0 0 1 0], [0 0 1 0], [ 0  0  1  0], [0 0 1 0], [0 1 0 0], [ 0  1  0  0],\n",
       "\n",
       " [0 0 1 0]  [ 0  1  0  0]  [ 0  0  1  0]  [1 0 0 0]  [ 0  1  0  0] \n",
       " [1 0 0 0]  [ 0  0  1  0]  [ 0  1  0  0]  [0 0 0 1]  [ 1 -1  0  1] \n",
       " [0 0 0 1]  [ 1 -1  0  1]  [ 1 -1  0  1]  [0 0 1 0]  [ 0  0  1  0] \n",
       " [0 1 0 0], [ 0  1  0  0], [ 0  1  0  0], [0 1 0 0], [ 0  1  0  0],\n",
       "\n",
       " [ 0  0  1  0]  [0 0 0 1]  [ 0  1  0  0]  [ 0  0  1  0]  [ 0  0  0  1] \n",
       " [ 1  0 -1  1]  [1 0 0 0]  [ 0  0  0  1]  [ 0  1 -1  1]  [ 0  1  0  0] \n",
       " [ 0  0  1  0]  [0 0 1 0]  [ 1 -1  1  0]  [ 1 -1  1  0]  [ 1 -1  1  0] \n",
       " [ 0  1  0  0], [0 1 0 0], [ 0  1  0  0], [ 0  1  0  0], [ 0  1  0  0],\n",
       "\n",
       " [0 0 1 0]  [0 0 0 1]  [0 1 0 0]  [0 0 1 0]  [0 1 0 0]  [ 0  0  1  0] \n",
       " [0 0 0 1]  [0 0 1 0]  [0 0 1 0]  [0 1 0 0]  [0 0 0 1]  [ 0  1 -1  1] \n",
       " [1 0 0 0]  [1 0 0 0]  [0 0 0 1]  [0 0 0 1]  [0 0 1 0]  [ 0  0  1  0] \n",
       " [0 1 0 0], [0 1 0 0], [1 0 0 0], [1 0 0 0], [1 0 0 0], [ 1  0  0  0],\n",
       "\n",
       " [0 0 0 1]  [0 0 1 0]  [0 0 0 1] ]\n",
       " [0 1 0 0]  [0 0 0 1]  [0 0 1 0] ]\n",
       " [0 0 1 0]  [0 1 0 0]  [0 1 0 0] ]\n",
       " [1 0 0 0], [1 0 0 0], [1 0 0 0] ]"
      ]
     },
     "execution_count": 100,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "list(AlternatingSignMatrices(4))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 105,
   "id": "7d1fb1fd-8bed-4f01-9559-eab5d0e5b976",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Infinite words over {0, 1}"
      ]
     },
     "execution_count": 105,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "IW = Words([0,1], finite=False)\n",
    "IW"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 107,
   "id": "9823db17-c390-47db-8ba2-7307bfefd783",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "word: 0110100110010110100101100110100110010110..."
      ]
     },
     "execution_count": 107,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "f = lambda n : add(Integer(n).digits(2)) % 2\n",
    "w = IW(f)\n",
    "w"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "id": "b90275c2-81b0-474f-880e-026cf0493e4a",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "0\n",
      "0110\n",
      "0110100110010110\n",
      "0110100110010110100101100110100110010110011010010110100110010110\n"
     ]
    }
   ],
   "source": [
    "it = w.palindrome_prefixes_iterator()\n",
    "for _ in range(5):\n",
    "    print(next(it))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 112,
   "id": "1f39a183-6aaf-4615-b836-f6c1d0598c10",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "Petersen graph: Graph on 10 vertices"
      ]
     },
     "execution_count": 112,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "G = graphs.PetersenGraph()\n",
    "G"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 113,
   "id": "bf391f10-b3b7-48fa-b707-5a92bf0b8a09",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "False"
      ]
     },
     "execution_count": 113,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "G.is_hamiltonian()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 114,
   "id": "4ed146fd-65e3-4358-b4ea-b8dea6eba555",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "False"
      ]
     },
     "execution_count": 114,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "G.is_eulerian()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 115,
   "id": "3305ad5e-9e01-4f0c-9bd2-03fa09d10893",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "False"
      ]
     },
     "execution_count": 115,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "G.is_planar()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 117,
   "id": "fd81e253-a1c2-47a5-a63e-0b019c46a685",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "Digraph on 5 vertices"
      ]
     },
     "execution_count": 117,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "D = DiGraph([[1,2],[2,3],[3,4],[1,4],[4,5]])\n",
    "D"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 118,
   "id": "e5cbdc5c-9f7f-413a-b0e2-775410242abc",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 118,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "D.is_directed_acyclic()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 120,
   "id": "d15e9cf7-9d5d-48a8-bc92-6ab0ce69073a",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Partial semigroup formed by the directed paths of Digraph on 5 vertices"
      ]
     },
     "execution_count": 120,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "D = DiGraph([[1,2,'a'],[2,3,'b'],[3,4,'c'],[1,4,'d'],[4,5,'e']])\n",
    "PD = D.path_semigroup()\n",
    "PD"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 121,
   "id": "d1b73b3b-6a59-4ba0-abb4-3f6d00cdb8ce",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Path algebra of Digraph on 5 vertices over Rational Field"
      ]
     },
     "execution_count": 121,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "AD = PD.algebra(QQ)\n",
    "AD"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 125,
   "id": "93169b60-1083-4818-a201-2d0062939886",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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avLkyXrrrbd07733av78+br55pvNHuua5OXlydv7r1908+zZs/roo48UHR2tX3/9VbVr19bQoUM1ePBgLuQDWADBB67T5s2bFRYWpt9++02vvfaannnmGVa0/7Vu3TpFR0frww8/VH5+vh5//HE5HA61bduWrX2ASQg+cI2cTqfee+89TZgwQfXq1dPChQuL9PvvsigzM1Pz5s1TTEyMtm/frqZNm8rhcKhv376qVKmS2eMBZQrBB67B/v37NXDgQH3zzTcaPXq0pk2bJn9/f7PHsjzDMPTdd98pOjpaX3zxhfz8/BQWFiaHw8EPS4CbEHygiD799FMNHTpU/v7+mjt3ru6//36zRyqR9u/frw8++ECzZs3SgQMH1KpVKzkcDvXq1Ut+fld/d0AA14dtecBVnDp1Sv3791evXr3UsWNHbdy4kdj/BTVr1tRLL72kXbt26bPPPlNAQID69eunWrVqafz48dqxY4fZIwKlEit84Aq+//579evXT8eOHdP777+vvn37ctKZC2zfvl2xsbGKj4/X8ePH9eCDD8rhcOiRRx4plh0EAFjhA4U6d+6cJk2apPvuu081a9ZUSkqK+vXrR+xdpGHDhpoxY4b2799fEP3u3burbt26evXVV3Xw4EGzRwRKPFb4wJ9s3bpVYWFh2rhxo6ZMmaIJEyaw3c4ESUlJio6OVmJios6fP68ePXrI4XCoXbt2/OAFXAeCD/yXYRiKiorSuHHjdPPNN2vhwoUKCQkxe6wy78SJE5o3b56io6O1bds2NW7cWA6HQ/369bvozX4AXBnBByQdPHhQgwYN0tKlSzVixAhNnz5d5cuXN3ss/A/DMLRq1SpFR0dr8eLFKleunPr06SOHw6E777zT7PEAyyP4KPMWL16siIgIeXt7a86cOXr44YfNHglXkZGRUbC1b9++fWrZsqUcDod69+7NdRGAy+CkPZRZp0+f1pAhQ9SjRw+1bdtWqampxL6EsNlsmjx5snbu3KnFixercuXKGjBggGrVqqVnn31W6enpZo8IWA4rfJRJa9euVXh4uA4dOqR33nlHgwYN4kSwEi4tLa1ga19mZqbuv/9+ORwOdenSha19gFjho4w5f/68XnrpJd1zzz2qXr26NmzYoMGDBxP7UqBBgwZ66623tG/fPs2bN0+nT59Wjx49VKdOHb3yyis6cOCA2SMCpmKF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",
      "text/plain": [
       "Digraph on 4 vertices"
      ]
     },
     "execution_count": 125,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "D4 = DiGraph([[1,2],[2,3],[4,2]])\n",
    "D4"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 127,
   "id": "831dbdee-63ac-4da3-9e5c-233a5411390a",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Auslander-Reiten quiver of a ['D', 4] Dynkin quiver"
      ]
     },
     "execution_count": 127,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ARD4 = D4.auslander_reiten_quiver()\n",
    "ARD4"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 128,
   "id": "af9d5fde-9c33-45e5-9475-e3a6d25cb27e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "Digraph on 12 vertices"
      ]
     },
     "execution_count": 128,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ARD4.digraph()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 129,
   "id": "48ea20c3-d3cb-4296-868b-883e30e15969",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "The crystal of tableaux of type ['A', 2] and shape(s) [[2, 1]]"
      ]
     },
     "execution_count": 129,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "B = crystals.Tableaux(['A',2], shape=[2,1])\n",
    "B"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 130,
   "id": "9e1ee701-b4fb-4dc8-9fa5-3b41fcd53c73",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "Digraph on 8 vertices"
      ]
     },
     "execution_count": 130,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "B.digraph()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 132,
   "id": "63cdfde1-96f5-42d5-b189-7919b2420722",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(4, 2, 0)\n",
      "(3, 3, 0)\n",
      "(3, 2, 1)\n",
      "(2, 2, 2)\n",
      "(4, 1, 1)\n",
      "(3, 2, 1)\n"
     ]
    }
   ],
   "source": [
    "for v in tensor([B,B]).highest_weight_vectors():\n",
    "    print(v.weight())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 133,
   "id": "591c7712-bb1e-4b6b-b708-b2844c8767e4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "s   + s   + s    + 2*s    + s    + s     + s    \n",
       " **    **    ***      ***    ***    ****    ****\n",
       " **    **    *        **     ***    *       **  \n",
       " *     **    *        *             *           \n",
       " *           *                                  "
      ]
     },
     "execution_count": 133,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "s = SymmetricFunctions(QQ).s()\n",
    "s[2,1] * s[2,1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "368edf72-7075-4cef-b4be-d02d68c3771b",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "SageMath 10.6.beta9",
   "language": "sage",
   "name": "sagemath"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
