From 50a0ef918e6136dbc0405962163342e8c819e9a6 Mon Sep 17 00:00:00 2001
From: Michael Leuschel <leuschel@uni-duesseldorf.de>
Date: Mon, 13 Jul 2020 17:23:19 +0200
Subject: [PATCH] update MPCP description

---
 info4/kapitel-11/PCP.ipynb | 405 ++++++++++++++++++++-----------------
 1 file changed, 215 insertions(+), 190 deletions(-)

diff --git a/info4/kapitel-11/PCP.ipynb b/info4/kapitel-11/PCP.ipynb
index d1c8b4c..848d689 100644
--- a/info4/kapitel-11/PCP.ipynb
+++ b/info4/kapitel-11/PCP.ipynb
@@ -17,7 +17,9 @@
     "und es gibt $i_1, i_2, \\ldots , i_n \\in \\{1, \\ldots , k\\}$,\n",
     "so dass $x_{i_1} x_{i_2} \\cdots x_{i_n} = y_{i_1} y_{i_2} \\cdots\n",
     "  y_{i_n}$\n",
-    "$\\}$.\n"
+    "$\\}$.\n",
+    "\n",
+    "Bei dem $MPCP_\\Sigma$ Problem verlangen wir, dass $i_1=1$.\n"
    ]
   },
   {
@@ -31,7 +33,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 85,
+   "execution_count": 190,
    "metadata": {},
    "outputs": [
     {
@@ -40,7 +42,7 @@
        "Loaded machine: PostCorrespondence_MC"
       ]
      },
-     "execution_count": 85,
+     "execution_count": 190,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -83,7 +85,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 86,
+   "execution_count": 191,
    "metadata": {},
    "outputs": [
     {
@@ -92,7 +94,7 @@
        "Machine constants set up using operation 0: $setup_constants()"
       ]
      },
-     "execution_count": 86,
+     "execution_count": 191,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -103,7 +105,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 87,
+   "execution_count": 192,
    "metadata": {},
    "outputs": [
     {
@@ -112,7 +114,7 @@
        "Machine initialised using operation 1: $initialise_machine()"
       ]
      },
-     "execution_count": 87,
+     "execution_count": 192,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -123,7 +125,30 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 88,
+   "execution_count": 193,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/markdown": [
+       "$[([1]\\mapsto [1,0]),([0,1]\\mapsto [1]),([0,1,0]\\mapsto [1,0,0])]$"
+      ],
+      "text/plain": [
+       "[([1]↦[1,0]),([0,1]↦[1]),([0,1,0]↦[1,0,0])]"
+      ]
+     },
+     "execution_count": 193,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "K"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 194,
    "metadata": {},
    "outputs": [
     {
@@ -142,7 +167,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 88,
+     "execution_count": 194,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -153,7 +178,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 89,
+   "execution_count": 195,
    "metadata": {},
    "outputs": [
     {
@@ -167,7 +192,7 @@
        "Schritt(1,[1],[1,0])"
       ]
      },
-     "execution_count": 89,
+     "execution_count": 195,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -185,7 +210,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 90,
+   "execution_count": 196,
    "metadata": {},
    "outputs": [
     {
@@ -194,7 +219,7 @@
        "Executed operation: Schritt(1,[1],[1,0])"
       ]
      },
-     "execution_count": 90,
+     "execution_count": 196,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -205,7 +230,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 91,
+   "execution_count": 197,
    "metadata": {},
    "outputs": [
     {
@@ -228,7 +253,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 91,
+     "execution_count": 197,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -239,19 +264,19 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 169,
+   "execution_count": 198,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/markdown": [
-       "$[Hash,\\mathit{z0},\\mathit{a},\\mathit{b},\\mathit{Hash},\\mathit{a},\\mathit{z0},\\mathit{b},\\mathit{Hash},\\mathit{a},\\mathit{b},\\mathit{z1},\\mathit{Hash},\\mathit{a},\\mathit{b},\\mathit{z2},\\mathit{Hash},\\mathit{a},\\mathit{z2},\\mathit{Hash},\\mathit{z2},\\mathit{Hash},Hash]$"
+       "$[1]$"
       ],
       "text/plain": [
-       "[Hash,z0,a,b,Hash,a,z0,b,Hash,a,b,z1,Hash,a,b,z2,Hash,a,z2,Hash,z2,Hash,Hash]"
+       "[1]"
       ]
      },
-     "execution_count": 169,
+     "execution_count": 198,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -262,19 +287,19 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 170,
+   "execution_count": 199,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/markdown": [
-       "$[Hash,\\mathit{z0},\\mathit{a},\\mathit{b},\\mathit{Hash},\\mathit{a},\\mathit{z0},\\mathit{b},\\mathit{Hash},\\mathit{a},\\mathit{b},\\mathit{z1},\\mathit{Hash},\\mathit{a},\\mathit{b},\\mathit{z2},\\mathit{Hash},\\mathit{a},\\mathit{z2},\\mathit{Hash},\\mathit{z2},\\mathit{Hash},Hash]$"
+       "$[1,0]$"
       ],
       "text/plain": [
-       "[Hash,z0,a,b,Hash,a,z0,b,Hash,a,b,z1,Hash,a,b,z2,Hash,a,z2,Hash,z2,Hash,Hash]"
+       "[1,0]"
       ]
      },
-     "execution_count": 170,
+     "execution_count": 199,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -285,7 +310,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 92,
+   "execution_count": 200,
    "metadata": {},
    "outputs": [
     {
@@ -300,7 +325,7 @@
        "Schritt(3,[0,1,0],[1,0,0])"
       ]
      },
-     "execution_count": 92,
+     "execution_count": 200,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -318,7 +343,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 93,
+   "execution_count": 201,
    "metadata": {},
    "outputs": [
     {
@@ -327,7 +352,7 @@
        "Executed operation: Schritt(2,[0,1],[1])"
       ]
      },
-     "execution_count": 93,
+     "execution_count": 201,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -338,7 +363,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 94,
+   "execution_count": 202,
    "metadata": {},
    "outputs": [
     {
@@ -363,7 +388,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 94,
+     "execution_count": 202,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -374,7 +399,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 95,
+   "execution_count": 203,
    "metadata": {},
    "outputs": [
     {
@@ -383,7 +408,7 @@
        "Executed operation: Lösung()"
       ]
      },
-     "execution_count": 95,
+     "execution_count": 203,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -402,7 +427,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 96,
+   "execution_count": 204,
    "metadata": {},
    "outputs": [
     {
@@ -424,7 +449,7 @@
        "4: Lösung() (current)"
       ]
      },
-     "execution_count": 96,
+     "execution_count": 204,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -435,7 +460,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 97,
+   "execution_count": 205,
    "metadata": {},
    "outputs": [
     {
@@ -444,7 +469,7 @@
        "Changed to state with index 2"
       ]
      },
-     "execution_count": 97,
+     "execution_count": 205,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -455,7 +480,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 98,
+   "execution_count": 206,
    "metadata": {},
    "outputs": [
     {
@@ -478,7 +503,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 98,
+     "execution_count": 206,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -489,7 +514,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 99,
+   "execution_count": 207,
    "metadata": {},
    "outputs": [
     {
@@ -498,7 +523,7 @@
        "Executed operation: Schritt(3,[0,1,0],[1,0,0])"
       ]
      },
-     "execution_count": 99,
+     "execution_count": 207,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -509,7 +534,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 100,
+   "execution_count": 208,
    "metadata": {},
    "outputs": [
     {
@@ -538,7 +563,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 100,
+     "execution_count": 208,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -549,7 +574,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 101,
+   "execution_count": 209,
    "metadata": {},
    "outputs": [
     {
@@ -558,7 +583,7 @@
        "Executed operation: Schritt(3,[0,1,0],[1,0,0])"
       ]
      },
-     "execution_count": 101,
+     "execution_count": 209,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -569,7 +594,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 102,
+   "execution_count": 210,
    "metadata": {},
    "outputs": [
     {
@@ -604,7 +629,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 102,
+     "execution_count": 210,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -615,7 +640,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 103,
+   "execution_count": 211,
    "metadata": {},
    "outputs": [
     {
@@ -624,7 +649,7 @@
        "Executed operation: Schritt(2,[0,1],[1])"
       ]
      },
-     "execution_count": 103,
+     "execution_count": 211,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -635,7 +660,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 104,
+   "execution_count": 212,
    "metadata": {},
    "outputs": [
     {
@@ -672,7 +697,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 104,
+     "execution_count": 212,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -683,7 +708,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 105,
+   "execution_count": 213,
    "metadata": {},
    "outputs": [
     {
@@ -692,7 +717,7 @@
        "Executed operation: Lösung()"
       ]
      },
-     "execution_count": 105,
+     "execution_count": 213,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -703,7 +728,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 106,
+   "execution_count": 214,
    "metadata": {},
    "outputs": [
     {
@@ -729,7 +754,7 @@
        "6: Lösung() (current)"
       ]
      },
-     "execution_count": 106,
+     "execution_count": 214,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -753,7 +778,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 171,
+   "execution_count": 215,
    "metadata": {},
    "outputs": [
     {
@@ -762,7 +787,7 @@
        "Loaded machine: PostCorrespondence_MC"
       ]
      },
-     "execution_count": 171,
+     "execution_count": 215,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -805,7 +830,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 108,
+   "execution_count": 216,
    "metadata": {},
    "outputs": [
     {
@@ -814,7 +839,7 @@
        "Machine constants set up using operation 0: $setup_constants()"
       ]
      },
-     "execution_count": 108,
+     "execution_count": 216,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -825,7 +850,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 109,
+   "execution_count": 217,
    "metadata": {},
    "outputs": [
     {
@@ -834,7 +859,7 @@
        "Machine initialised using operation 1: $initialise_machine()"
       ]
      },
-     "execution_count": 109,
+     "execution_count": 217,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -845,7 +870,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 110,
+   "execution_count": 218,
    "metadata": {},
    "outputs": [
     {
@@ -854,7 +879,7 @@
        "Executed operation: Schritt(3,[1],[1,0])"
       ]
      },
-     "execution_count": 110,
+     "execution_count": 218,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -865,7 +890,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 111,
+   "execution_count": 219,
    "metadata": {},
    "outputs": [
     {
@@ -888,7 +913,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 111,
+     "execution_count": 219,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -899,7 +924,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 112,
+   "execution_count": 220,
    "metadata": {},
    "outputs": [
     {
@@ -908,7 +933,7 @@
        "Executed operation: Schritt(2,[0,1,0],[1,0,0])"
       ]
      },
-     "execution_count": 112,
+     "execution_count": 220,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -919,7 +944,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 113,
+   "execution_count": 221,
    "metadata": {},
    "outputs": [
     {
@@ -948,7 +973,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 113,
+     "execution_count": 221,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -959,7 +984,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 114,
+   "execution_count": 222,
    "metadata": {},
    "outputs": [
     {
@@ -968,7 +993,7 @@
        "Executed operation: Schritt(2,[0,1,0],[1,0,0])"
       ]
      },
-     "execution_count": 114,
+     "execution_count": 222,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -979,7 +1004,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 115,
+   "execution_count": 223,
    "metadata": {},
    "outputs": [
     {
@@ -1014,7 +1039,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 115,
+     "execution_count": 223,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1025,7 +1050,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 116,
+   "execution_count": 224,
    "metadata": {},
    "outputs": [
     {
@@ -1034,7 +1059,7 @@
        "Executed operation: Schritt(1,[0,1],[1])"
       ]
      },
-     "execution_count": 116,
+     "execution_count": 224,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1045,7 +1070,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 117,
+   "execution_count": 225,
    "metadata": {},
    "outputs": [
     {
@@ -1082,7 +1107,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 117,
+     "execution_count": 225,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1100,7 +1125,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 118,
+   "execution_count": 226,
    "metadata": {},
    "outputs": [
     {
@@ -1109,7 +1134,7 @@
        "Changed to state with index -1"
       ]
      },
-     "execution_count": 118,
+     "execution_count": 226,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1120,16 +1145,16 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 172,
+   "execution_count": 227,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/plain": [
-       "Machine constants set up using operation 0: $setup_constants()"
+       "Machine constants set up using operation 11: $setup_constants()"
       ]
      },
-     "execution_count": 172,
+     "execution_count": 227,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1140,16 +1165,16 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 173,
+   "execution_count": 228,
    "metadata": {},
    "outputs": [
     {
      "data": {
       "text/plain": [
-       "Machine initialised using operation 1: $initialise_machine()"
+       "Machine initialised using operation 12: $initialise_machine()"
       ]
      },
-     "execution_count": 173,
+     "execution_count": 228,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1160,7 +1185,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 174,
+   "execution_count": 229,
    "metadata": {},
    "outputs": [
     {
@@ -1175,7 +1200,7 @@
        "Schritt(2,[0,1],[0,1,1])"
       ]
      },
-     "execution_count": 174,
+     "execution_count": 229,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1186,7 +1211,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 175,
+   "execution_count": 230,
    "metadata": {},
    "outputs": [
     {
@@ -1195,7 +1220,7 @@
        "Executed operation: Schritt(2,[0,1],[0,1,1])"
       ]
      },
-     "execution_count": 175,
+     "execution_count": 230,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1206,7 +1231,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 176,
+   "execution_count": 231,
    "metadata": {},
    "outputs": [
     {
@@ -1215,7 +1240,7 @@
        "Executed operation: Schritt(4,[1,0],[0,0,1])"
       ]
      },
-     "execution_count": 176,
+     "execution_count": 231,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1226,7 +1251,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 177,
+   "execution_count": 232,
    "metadata": {},
    "outputs": [
     {
@@ -1257,7 +1282,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 177,
+     "execution_count": 232,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1275,7 +1300,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 178,
+   "execution_count": 233,
    "metadata": {},
    "outputs": [
     {
@@ -1284,7 +1309,7 @@
        "Executed operation: Schritt(3,[0,1],[1,0,1])"
       ]
      },
-     "execution_count": 178,
+     "execution_count": 233,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1295,7 +1320,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 179,
+   "execution_count": 234,
    "metadata": {},
    "outputs": [
     {
@@ -1304,7 +1329,7 @@
        "Executed operation: Schritt(4,[1,0],[0,0,1])"
       ]
      },
-     "execution_count": 179,
+     "execution_count": 234,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1315,7 +1340,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 180,
+   "execution_count": 235,
    "metadata": {},
    "outputs": [
     {
@@ -1324,7 +1349,7 @@
        "Executed operation: Schritt(4,[1,0],[0,0,1])"
       ]
      },
-     "execution_count": 180,
+     "execution_count": 235,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1335,7 +1360,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 181,
+   "execution_count": 236,
    "metadata": {},
    "outputs": [
     {
@@ -1344,7 +1369,7 @@
        "Executed operation: Schritt(2,[0,1],[0,1,1])"
       ]
      },
-     "execution_count": 181,
+     "execution_count": 236,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1355,7 +1380,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 182,
+   "execution_count": 237,
    "metadata": {},
    "outputs": [
     {
@@ -1410,7 +1435,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 182,
+     "execution_count": 237,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1509,7 +1534,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 125,
+   "execution_count": 238,
    "metadata": {},
    "outputs": [
     {
@@ -1518,7 +1543,7 @@
        "Loaded machine: PostCorrespondence_Turing_MC"
       ]
      },
-     "execution_count": 125,
+     "execution_count": 238,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1526,7 +1551,7 @@
    "source": [
     "::load\n",
     "MACHINE PostCorrespondence_Turing_MC\n",
-    "/* The Turing machine has 3 states: z0,z1,z2; z2 is Final\n",
+    "/* The Turing machine has 3 states: z0,z1,z2; z2 ist ein Endzustand\n",
     "   z0 accepts a and goes to z1 via b; z1 accepts b and goes to z2 via Blank \n",
     "*/\n",
     "SETS\n",
@@ -1568,7 +1593,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 126,
+   "execution_count": 239,
    "metadata": {},
    "outputs": [
     {
@@ -1577,7 +1602,7 @@
        "Machine constants set up using operation 0: $setup_constants()"
       ]
      },
-     "execution_count": 126,
+     "execution_count": 239,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1588,7 +1613,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 127,
+   "execution_count": 240,
    "metadata": {},
    "outputs": [
     {
@@ -1597,7 +1622,7 @@
        "Machine initialised using operation 1: $initialise_machine()"
       ]
      },
-     "execution_count": 127,
+     "execution_count": 240,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1608,7 +1633,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 128,
+   "execution_count": 241,
    "metadata": {},
    "outputs": [
     {
@@ -1637,7 +1662,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 128,
+     "execution_count": 241,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1648,7 +1673,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 129,
+   "execution_count": 242,
    "metadata": {},
    "outputs": [
     {
@@ -1662,7 +1687,7 @@
        "Schritt(4,[z0,a],[a,z0])"
       ]
      },
-     "execution_count": 129,
+     "execution_count": 242,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1673,7 +1698,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 130,
+   "execution_count": 243,
    "metadata": {},
    "outputs": [
     {
@@ -1682,7 +1707,7 @@
        "Executed operation: Schritt(4,[z0,a],[a,z0])"
       ]
      },
-     "execution_count": 130,
+     "execution_count": 243,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1693,7 +1718,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 131,
+   "execution_count": 244,
    "metadata": {},
    "outputs": [
     {
@@ -1726,7 +1751,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 131,
+     "execution_count": 244,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1745,7 +1770,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 132,
+   "execution_count": 245,
    "metadata": {},
    "outputs": [
     {
@@ -1759,7 +1784,7 @@
        "Schritt(2,[b],[b])"
       ]
      },
-     "execution_count": 132,
+     "execution_count": 245,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1770,7 +1795,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 133,
+   "execution_count": 246,
    "metadata": {},
    "outputs": [
     {
@@ -1779,7 +1804,7 @@
        "Executed operation: Schritt(2,[b],[b])"
       ]
      },
-     "execution_count": 133,
+     "execution_count": 246,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1790,7 +1815,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 134,
+   "execution_count": 247,
    "metadata": {},
    "outputs": [
     {
@@ -1804,7 +1829,7 @@
        "Schritt(3,[Hash],[Hash])"
       ]
      },
-     "execution_count": 134,
+     "execution_count": 247,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1815,7 +1840,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 135,
+   "execution_count": 248,
    "metadata": {},
    "outputs": [
     {
@@ -1824,7 +1849,7 @@
        "Executed operation: Schritt(3,[Hash],[Hash])"
       ]
      },
-     "execution_count": 135,
+     "execution_count": 248,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1835,7 +1860,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 136,
+   "execution_count": 249,
    "metadata": {},
    "outputs": [
     {
@@ -1872,7 +1897,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 136,
+     "execution_count": 249,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1883,7 +1908,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 137,
+   "execution_count": 250,
    "metadata": {},
    "outputs": [
     {
@@ -1897,7 +1922,7 @@
        "Schritt(1,[a],[a])"
       ]
      },
-     "execution_count": 137,
+     "execution_count": 250,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1915,7 +1940,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 138,
+   "execution_count": 251,
    "metadata": {},
    "outputs": [
     {
@@ -1924,7 +1949,7 @@
        "Executed operation: Schritt(1,[a],[a])"
       ]
      },
-     "execution_count": 138,
+     "execution_count": 251,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1935,7 +1960,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 139,
+   "execution_count": 252,
    "metadata": {},
    "outputs": [
     {
@@ -1974,7 +1999,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 139,
+     "execution_count": 252,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1985,7 +2010,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 140,
+   "execution_count": 253,
    "metadata": {},
    "outputs": [
     {
@@ -1999,7 +2024,7 @@
        "Schritt(5,[z0,b],[b,z1])"
       ]
      },
-     "execution_count": 140,
+     "execution_count": 253,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2010,7 +2035,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 141,
+   "execution_count": 254,
    "metadata": {},
    "outputs": [
     {
@@ -2019,7 +2044,7 @@
        "Executed operation: Schritt(5,[z0,b],[b,z1])"
       ]
      },
-     "execution_count": 141,
+     "execution_count": 254,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2030,7 +2055,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 142,
+   "execution_count": 255,
    "metadata": {},
    "outputs": [
     {
@@ -2073,7 +2098,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 142,
+     "execution_count": 255,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2091,7 +2116,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 143,
+   "execution_count": 256,
    "metadata": {},
    "outputs": [
     {
@@ -2100,7 +2125,7 @@
        "Executed operation: Schritt(3,[Hash],[Hash])"
       ]
      },
-     "execution_count": 143,
+     "execution_count": 256,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2111,7 +2136,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 144,
+   "execution_count": 257,
    "metadata": {},
    "outputs": [
     {
@@ -2120,7 +2145,7 @@
        "Executed operation: Schritt(1,[a],[a])"
       ]
      },
-     "execution_count": 144,
+     "execution_count": 257,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2131,7 +2156,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 145,
+   "execution_count": 258,
    "metadata": {},
    "outputs": [
     {
@@ -2178,7 +2203,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 145,
+     "execution_count": 258,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2189,7 +2214,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 146,
+   "execution_count": 259,
    "metadata": {},
    "outputs": [
     {
@@ -2198,7 +2223,7 @@
        "Executed operation: Schritt(2,[b],[b])"
       ]
      },
-     "execution_count": 146,
+     "execution_count": 259,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2209,7 +2234,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 147,
+   "execution_count": 260,
    "metadata": {},
    "outputs": [
     {
@@ -2258,7 +2283,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 147,
+     "execution_count": 260,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2269,7 +2294,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 148,
+   "execution_count": 261,
    "metadata": {},
    "outputs": [
     {
@@ -2283,7 +2308,7 @@
        "Schritt(7,[z1,Hash],[z2,Hash])"
       ]
      },
-     "execution_count": 148,
+     "execution_count": 261,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2294,7 +2319,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 149,
+   "execution_count": 262,
    "metadata": {},
    "outputs": [
     {
@@ -2303,7 +2328,7 @@
        "Executed operation: Schritt(7,[z1,Hash],[z2,Hash])"
       ]
      },
-     "execution_count": 149,
+     "execution_count": 262,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2314,7 +2339,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 150,
+   "execution_count": 263,
    "metadata": {},
    "outputs": [
     {
@@ -2367,7 +2392,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 150,
+     "execution_count": 263,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2385,7 +2410,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 151,
+   "execution_count": 264,
    "metadata": {},
    "outputs": [
     {
@@ -2399,7 +2424,7 @@
        "Schritt(1,[a],[a])"
       ]
      },
-     "execution_count": 151,
+     "execution_count": 264,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2410,7 +2435,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 152,
+   "execution_count": 265,
    "metadata": {},
    "outputs": [
     {
@@ -2419,7 +2444,7 @@
        "Executed operation: Schritt(1,[a],[a])"
       ]
      },
-     "execution_count": 152,
+     "execution_count": 265,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2430,7 +2455,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 153,
+   "execution_count": 266,
    "metadata": {},
    "outputs": [
     {
@@ -2485,7 +2510,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 153,
+     "execution_count": 266,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2496,7 +2521,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 154,
+   "execution_count": 267,
    "metadata": {},
    "outputs": [
     {
@@ -2511,7 +2536,7 @@
        "Schritt(9,[b,z2],[z2])"
       ]
      },
-     "execution_count": 154,
+     "execution_count": 267,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2529,7 +2554,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 155,
+   "execution_count": 268,
    "metadata": {},
    "outputs": [
     {
@@ -2538,7 +2563,7 @@
        "Executed operation: Schritt(9,[b,z2],[z2])"
       ]
      },
-     "execution_count": 155,
+     "execution_count": 268,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2549,7 +2574,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 156,
+   "execution_count": 269,
    "metadata": {},
    "outputs": [
     {
@@ -2606,7 +2631,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 156,
+     "execution_count": 269,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2617,7 +2642,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 157,
+   "execution_count": 270,
    "metadata": {},
    "outputs": [
     {
@@ -2631,7 +2656,7 @@
        "Schritt(3,[Hash],[Hash])"
       ]
      },
-     "execution_count": 157,
+     "execution_count": 270,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2642,7 +2667,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 158,
+   "execution_count": 271,
    "metadata": {},
    "outputs": [
     {
@@ -2651,7 +2676,7 @@
        "Executed operation: Schritt(3,[Hash],[Hash])"
       ]
      },
-     "execution_count": 158,
+     "execution_count": 271,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2662,7 +2687,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 159,
+   "execution_count": 272,
    "metadata": {},
    "outputs": [
     {
@@ -2721,7 +2746,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 159,
+     "execution_count": 272,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2732,7 +2757,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 160,
+   "execution_count": 273,
    "metadata": {},
    "outputs": [
     {
@@ -2747,7 +2772,7 @@
        "Schritt(8,[a,z2],[z2])"
       ]
      },
-     "execution_count": 160,
+     "execution_count": 273,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2765,7 +2790,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 161,
+   "execution_count": 274,
    "metadata": {},
    "outputs": [
     {
@@ -2774,7 +2799,7 @@
        "Executed operation: Schritt(8,[a,z2],[z2])"
       ]
      },
-     "execution_count": 161,
+     "execution_count": 274,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2785,7 +2810,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 162,
+   "execution_count": 275,
    "metadata": {},
    "outputs": [
     {
@@ -2846,7 +2871,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 162,
+     "execution_count": 275,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2857,7 +2882,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 163,
+   "execution_count": 276,
    "metadata": {},
    "outputs": [
     {
@@ -2866,7 +2891,7 @@
        "Executed operation: Schritt(3,[Hash],[Hash])"
       ]
      },
-     "execution_count": 163,
+     "execution_count": 276,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2877,7 +2902,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 164,
+   "execution_count": 277,
    "metadata": {},
    "outputs": [
     {
@@ -2940,7 +2965,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 164,
+     "execution_count": 277,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2951,7 +2976,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 165,
+   "execution_count": 278,
    "metadata": {},
    "outputs": [
     {
@@ -2965,7 +2990,7 @@
        "Schritt(10,[z2,Hash,Hash],[Hash])"
       ]
      },
-     "execution_count": 165,
+     "execution_count": 278,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -2983,7 +3008,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 166,
+   "execution_count": 279,
    "metadata": {},
    "outputs": [
     {
@@ -2992,7 +3017,7 @@
        "Executed operation: Schritt(10,[z2,Hash,Hash],[Hash])"
       ]
      },
-     "execution_count": 166,
+     "execution_count": 279,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -3003,7 +3028,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 167,
+   "execution_count": 280,
    "metadata": {},
    "outputs": [
     {
@@ -3068,7 +3093,7 @@
        "<Animation function visualisation>"
       ]
      },
-     "execution_count": 167,
+     "execution_count": 280,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -3079,7 +3104,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 168,
+   "execution_count": 281,
    "metadata": {},
    "outputs": [
     {
@@ -3088,7 +3113,7 @@
        "Executed operation: Lösung()"
       ]
      },
-     "execution_count": 168,
+     "execution_count": 281,
      "metadata": {},
      "output_type": "execute_result"
     }
-- 
GitLab