From 806d1fb355214040ecc6955ea3412748f171f154 Mon Sep 17 00:00:00 2001 From: Sitong Liu Date: Mon, 24 Jun 2024 14:10:08 -0700 Subject: [PATCH] Updated the tutorials. --- docs/images/alias_sampling.png | Bin 88925 -> 0 bytes docs/images/my_algorithm.png | Bin 10817 -> 0 bytes docs/tutorials/01_basic_example.ipynb | 122 +++++++++--------- docs/tutorials/02_alias_sampling_basic.ipynb | 126 +++++++++---------- 4 files changed, 114 insertions(+), 134 deletions(-) delete mode 100644 docs/images/alias_sampling.png delete mode 100644 docs/images/my_algorithm.png diff --git a/docs/images/alias_sampling.png b/docs/images/alias_sampling.png deleted file mode 100644 index 2f763f55edad08321f5f270e8aa53e1d63818cf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88925 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 Sauer(e|Y0_Mumn%%6|b5(7TBM diff --git a/docs/images/my_algorithm.png b/docs/images/my_algorithm.png deleted file mode 100644 index c31fe9ffee8edf28555b32d0819d02cd099fa8ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10817 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 diff --git a/docs/tutorials/01_basic_example.ipynb b/docs/tutorials/01_basic_example.ipynb index 8509a20..870f74e 100644 --- a/docs/tutorials/01_basic_example.ipynb +++ b/docs/tutorials/01_basic_example.ipynb @@ -69,8 +69,8 @@ "id": "6e2460c7-8ec3-4157-8b92-3d8ac5ff300f", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:03.787166Z", - "start_time": "2024-06-24T20:20:03.775518Z" + "end_time": "2024-06-24T20:58:18.268334Z", + "start_time": "2024-06-24T20:58:18.259199Z" } }, "source": [ @@ -84,7 +84,7 @@ "}" ], "outputs": [], - "execution_count": 1 + "execution_count": 31 }, { "cell_type": "markdown", @@ -107,8 +107,8 @@ "id": "591b4a88-af8c-41ec-bc07-ca0bbe576c70", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:04.129187Z", - "start_time": "2024-06-24T20:20:04.118808Z" + "end_time": "2024-06-24T20:58:18.403637Z", + "start_time": "2024-06-24T20:58:18.391328Z" } }, "source": [ @@ -122,7 +122,7 @@ "}" ], "outputs": [], - "execution_count": 2 + "execution_count": 32 }, { "cell_type": "markdown", @@ -137,8 +137,8 @@ "id": "76a0ed1a-0acb-489e-b2fc-40ce956b8f49", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:04.235251Z", - "start_time": "2024-06-24T20:20:04.221155Z" + "end_time": "2024-06-24T20:58:18.438587Z", + "start_time": "2024-06-24T20:58:18.425845Z" } }, "source": [ @@ -153,7 +153,7 @@ "}" ], "outputs": [], - "execution_count": 3 + "execution_count": 33 }, { "cell_type": "markdown", @@ -177,8 +177,8 @@ "id": "697c5cdb-abb8-4437-97e8-d3a1e4de1ca2", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:04.360747Z", - "start_time": "2024-06-24T20:20:04.340596Z" + "end_time": "2024-06-24T20:58:18.530086Z", + "start_time": "2024-06-24T20:58:18.521327Z" } }, "source": [ @@ -191,7 +191,7 @@ "routine_b[\"resources\"] = [{\"name\": \"T_gates\", \"type\": \"additive\", \"value\": \"n_b*ceil(log_2(n_b)) * y\"}]" ], "outputs": [], - "execution_count": 4 + "execution_count": 34 }, { "cell_type": "markdown", @@ -214,8 +214,8 @@ "id": "3cc1dcef-a151-401b-a818-3be783aa68f9", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:04.440831Z", - "start_time": "2024-06-24T20:20:04.433276Z" + "end_time": "2024-06-24T20:58:18.603781Z", + "start_time": "2024-06-24T20:58:18.587847Z" } }, "source": [ @@ -229,7 +229,7 @@ "my_algorithm[\"linked_params\"] = [{\"source\": \"z\", \"targets\": [\"A.x\", \"B.y\"]}]" ], "outputs": [], - "execution_count": 5 + "execution_count": 35 }, { "cell_type": "markdown", @@ -255,15 +255,15 @@ "id": "ac4be2b0-f1be-46db-a42d-9f204727db7b", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:04.507785Z", - "start_time": "2024-06-24T20:20:04.488963Z" + "end_time": "2024-06-24T20:58:18.643939Z", + "start_time": "2024-06-24T20:58:18.637009Z" } }, "source": [ "my_algorithm_qref = {\"version\": \"v1\", \"program\": my_algorithm}" ], "outputs": [], - "execution_count": 6 + "execution_count": 36 }, { "cell_type": "markdown", @@ -279,13 +279,9 @@ "\n" + "" ] }, { @@ -297,44 +293,38 @@ { "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:07.541905Z", - "start_time": "2024-06-24T20:20:05.151454Z" + "end_time": "2024-06-24T20:58:19.585394Z", + "start_time": "2024-06-24T20:58:18.727647Z" } }, "cell_type": "code", "source": [ - "from qref import SchemaV1\n", "from qref.experimental.rendering import to_graphviz\n", "\n", - "# Validate the schema and convert to Graphviz object\n", - "program = SchemaV1.model_validate(my_algorithm_qref)\n", - "gv_object = to_graphviz(program)\n", + "# Convert the qref format to Graphviz object\n", + "gv_object = to_graphviz(my_algorithm_qref)\n", "\n", "# Render the Graphviz object to a PNG file\n", - "gv_object.render(\"my_algorithm\", format=\"png\")" + "gv_object.render(\"my_algorithm\", format=\"png\")\n", + "\n", + "# Render the Graphviz object in the notebook\n", + "gv_object" ], "id": "3464d3b49599fe1d", "outputs": [ { "data": { + "image/svg+xml": "\n\n\n\n\n\n\n\ncluster_.my_algorithm\n\nmy_algorithm\n\n\n\n.my_algorithm.in\n\nin\n\n\n\n.my_algorithm.A\n\nin\n\nA\n\nout\n\n\n\n.my_algorithm.in->.my_algorithm.A:in\n\n\n\n\n\n.my_algorithm.out\n\nout\n\n\n\n.my_algorithm.B\n\nin\n\nB\n\nout\n\n\n\n.my_algorithm.A:out->.my_algorithm.B:in\n\n\n\n\n\n.my_algorithm.B:out->.my_algorithm.out\n\n\n\n\n\n", "text/plain": [ - "'my_algorithm.png'" + "" ] }, - "execution_count": 7, + "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 7 - }, - { - "cell_type": "markdown", - "id": "4fcbe269fde2e339", - "metadata": {}, - "source": [ - "![title](../images/my_algorithm.png)" - ] + "execution_count": 37 }, { "cell_type": "markdown", @@ -376,8 +366,8 @@ "id": "f3bfa36d-b208-4488-abd6-8b020ef6cffc", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:08.841567Z", - "start_time": "2024-06-24T20:20:07.548889Z" + "end_time": "2024-06-24T20:58:19.598730Z", + "start_time": "2024-06-24T20:58:19.589741Z" } }, "source": [ @@ -386,7 +376,7 @@ "uncompiled_routine = qref_to_bartiq(my_algorithm_qref)" ], "outputs": [], - "execution_count": 8 + "execution_count": 38 }, { "cell_type": "markdown", @@ -403,8 +393,8 @@ "id": "ef6e5a99-9537-4a9a-aea2-ddf4ec28c5df", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:08.856565Z", - "start_time": "2024-06-24T20:20:08.843774Z" + "end_time": "2024-06-24T20:58:19.615088Z", + "start_time": "2024-06-24T20:58:19.601383Z" } }, "source": [ @@ -417,12 +407,12 @@ "{'T_gates': }" ] }, - "execution_count": 9, + "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 9 + "execution_count": 39 }, { "cell_type": "markdown", @@ -439,8 +429,8 @@ "id": "71860050-361e-478e-b6c8-495c9b0bb6fe", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:08.883465Z", - "start_time": "2024-06-24T20:20:08.867971Z" + "end_time": "2024-06-24T20:58:19.641159Z", + "start_time": "2024-06-24T20:58:19.625793Z" } }, "source": [ @@ -453,12 +443,12 @@ "Port(my_algorithm.#out, size=None, output)" ] }, - "execution_count": 10, + "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 10 + "execution_count": 40 }, { "cell_type": "markdown", @@ -473,8 +463,8 @@ "id": "da6566d1-f14b-4531-8029-4134143f785f", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:08.921547Z", - "start_time": "2024-06-24T20:20:08.885642Z" + "end_time": "2024-06-24T20:58:19.665379Z", + "start_time": "2024-06-24T20:58:19.652567Z" } }, "source": [ @@ -487,12 +477,12 @@ "{}" ] }, - "execution_count": 11, + "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 11 + "execution_count": 41 }, { "cell_type": "markdown", @@ -512,8 +502,8 @@ "id": "0163c4b5-16a6-4510-9210-dc84f6711c61", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:09.706495Z", - "start_time": "2024-06-24T20:20:08.937015Z" + "end_time": "2024-06-24T20:58:19.716932Z", + "start_time": "2024-06-24T20:58:19.667445Z" } }, "source": [ @@ -522,7 +512,7 @@ "compiled_routine = compile_routine(uncompiled_routine)" ], "outputs": [], - "execution_count": 12 + "execution_count": 42 }, { "cell_type": "markdown", @@ -537,8 +527,8 @@ "id": "e017c894-5203-4958-9f0f-f85904a1ad0b", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:09.725257Z", - "start_time": "2024-06-24T20:20:09.708736Z" + "end_time": "2024-06-24T20:58:19.733877Z", + "start_time": "2024-06-24T20:58:19.720524Z" } }, "source": [ @@ -557,7 +547,7 @@ ] } ], - "execution_count": 13 + "execution_count": 43 }, { "cell_type": "markdown", @@ -588,8 +578,8 @@ "id": "4c232bc3-77bb-4bd8-a587-b6591d539c41", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:20:10.233333Z", - "start_time": "2024-06-24T20:20:09.732547Z" + "end_time": "2024-06-24T20:58:19.846940Z", + "start_time": "2024-06-24T20:58:19.739023Z" } }, "source": [ @@ -624,7 +614,7 @@ ] } ], - "execution_count": 14 + "execution_count": 44 }, { "cell_type": "markdown", diff --git a/docs/tutorials/02_alias_sampling_basic.ipynb b/docs/tutorials/02_alias_sampling_basic.ipynb index e5939b4..940bf19 100644 --- a/docs/tutorials/02_alias_sampling_basic.ipynb +++ b/docs/tutorials/02_alias_sampling_basic.ipynb @@ -91,8 +91,8 @@ "id": "fa6d5b43-0eac-4f6f-84de-1df68b8d0d8e", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:06.180721Z", - "start_time": "2024-06-24T20:26:06.164628Z" + "end_time": "2024-06-24T21:06:39.019531Z", + "start_time": "2024-06-24T21:06:39.004429Z" } }, "source": [ @@ -112,7 +112,7 @@ "}" ], "outputs": [], - "execution_count": 1 + "execution_count": 41 }, { "cell_type": "markdown", @@ -130,8 +130,8 @@ "id": "9cbe85ec-c435-4e60-8561-9b151de06b41", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:06.202286Z", - "start_time": "2024-06-24T20:26:06.187659Z" + "end_time": "2024-06-24T21:06:39.245618Z", + "start_time": "2024-06-24T21:06:39.230480Z" } }, "source": [ @@ -145,15 +145,15 @@ "}" ], "outputs": [], - "execution_count": 2 + "execution_count": 42 }, { "cell_type": "code", "id": "ef43c139-304f-473f-b718-16883760658e", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:06.233248Z", - "start_time": "2024-06-24T20:26:06.205804Z" + "end_time": "2024-06-24T21:06:39.372209Z", + "start_time": "2024-06-24T21:06:39.363485Z" } }, "source": [ @@ -174,15 +174,15 @@ "}" ], "outputs": [], - "execution_count": 3 + "execution_count": 43 }, { "cell_type": "code", "id": "698c0b16-2e5f-4c9f-bc81-89f0bbed9611", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:06.261175Z", - "start_time": "2024-06-24T20:26:06.248646Z" + "end_time": "2024-06-24T21:06:39.450728Z", + "start_time": "2024-06-24T21:06:39.442880Z" } }, "source": [ @@ -202,15 +202,15 @@ "}" ], "outputs": [], - "execution_count": 4 + "execution_count": 44 }, { "cell_type": "code", "id": "da5c61bf-7fb2-47d1-a0f5-d15b32147673", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:06.284088Z", - "start_time": "2024-06-24T20:26:06.269596Z" + "end_time": "2024-06-24T21:06:39.561170Z", + "start_time": "2024-06-24T21:06:39.553767Z" } }, "source": [ @@ -235,7 +235,7 @@ "}" ], "outputs": [], - "execution_count": 5 + "execution_count": 45 }, { "cell_type": "markdown", @@ -260,8 +260,8 @@ "id": "b066f011-96e1-4544-81bf-cdc7083b3f73", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:06.332529Z", - "start_time": "2024-06-24T20:26:06.292375Z" + "end_time": "2024-06-24T21:06:39.705603Z", + "start_time": "2024-06-24T21:06:39.658696Z" } }, "source": [ @@ -308,22 +308,22 @@ "}" ], "outputs": [], - "execution_count": 6 + "execution_count": 46 }, { "cell_type": "code", "id": "e3d17a61-4b9e-48e9-901a-231da501f41b", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:06.356777Z", - "start_time": "2024-06-24T20:26:06.345540Z" + "end_time": "2024-06-24T21:06:39.803187Z", + "start_time": "2024-06-24T21:06:39.795127Z" } }, "source": [ "alias_sampling_qref = {\"version\": \"v1\", \"program\": alias_sampling_dict}" ], "outputs": [], - "execution_count": 7 + "execution_count": 47 }, { "metadata": {}, @@ -338,13 +338,9 @@ "
\n", "

NOTE:

\n", "

\n", - " To use qref's rendering tool in Jupyter Notebook, ensure it's installed by running:\n", - " poetry install -E jupyter\n", + " To use the qref rendering tool in Jupyter Notebook, ensure the Graphviz software is installed on your OS and that its executables are included in your system variables. For installation instructions, please refer to the Graphviz download page.\n", "

\n", - "

\n", - " Additionally, ensure the Graphviz software is installed on your OS and that its executables are on your system variables. For installation instructions, please refer to the Graphviz download page.\n", - "

\n", - "
\n" + "" ], "id": "dfdf59f8a2ef16c5" }, @@ -357,42 +353,36 @@ { "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:07.360400Z", - "start_time": "2024-06-24T20:26:06.361246Z" + "end_time": "2024-06-24T21:06:40.822960Z", + "start_time": "2024-06-24T21:06:39.876790Z" } }, "cell_type": "code", "source": [ - "from qref import SchemaV1\n", "from qref.experimental.rendering import to_graphviz\n", "\n", - "# Validate the schema and convert to Graphviz object\n", - "program = SchemaV1.model_validate(alias_sampling_qref)\n", - "gv_object = to_graphviz(program)\n", + "# Convert the qref format to Graphviz object\n", + "gv_object = to_graphviz(alias_sampling_qref)\n", "\n", "# Render the Graphviz object to a PNG file\n", - "gv_object.render(\"alias_sampling\", format=\"png\")" + "gv_object.render(\"alias_sampling\", format=\"png\")\n", + "gv_object" ], "id": "492ad64333e398fa", "outputs": [ { "data": { + "image/svg+xml": "\n\n\n\n\n\n\n\ncluster_.alias_sampling\n\nalias_sampling\n\n\n\n.alias_sampling.In_0\n\nIn_0\n\n\n\n.alias_sampling.usp\n\nin\n\nusp\n\nout\n\n\n\n.alias_sampling.In_0->.alias_sampling.usp:in\n\n\n\n\n\n.alias_sampling.In_1\n\nIn_1\n\n\n\n.alias_sampling.had\n\nin\n\nhad\n\nout\n\n\n\n.alias_sampling.In_1->.alias_sampling.had:in\n\n\n\n\n\n.alias_sampling.In_2\n\nIn_2\n\n\n\n.alias_sampling.qrom\n\nIn_alt\n\nIn_keep\n\nIn_l\n\nqrom\n\nout_alt\n\nout_keep\n\nout_l\n\n\n\n.alias_sampling.In_2->.alias_sampling.qrom:In_alt\n\n\n\n\n\n.alias_sampling.In_3\n\nIn_3\n\n\n\n.alias_sampling.In_3->.alias_sampling.qrom:In_keep\n\n\n\n\n\n.alias_sampling.In_4\n\nIn_4\n\n\n\n.alias_sampling.compare\n\nIn_flag\n\nIn_keep\n\nIn_sigma\n\ncompare\n\nout_flag\n\nout_keep\n\nout_sigma\n\n\n\n.alias_sampling.In_4->.alias_sampling.compare:In_flag\n\n\n\n\n\n.alias_sampling.out_0\n\nout_0\n\n\n\n.alias_sampling.temp_0\n\ntemp_0\n\n\n\n.alias_sampling.temp_1\n\ntemp_1\n\n\n\n.alias_sampling.temp_2\n\ntemp_2\n\n\n\n.alias_sampling.temp_3\n\ntemp_3\n\n\n\n.alias_sampling.compare:out_sigma->.alias_sampling.temp_0\n\n\n\n\n\n.alias_sampling.compare:out_keep->.alias_sampling.temp_2\n\n\n\n\n\n.alias_sampling.swap\n\nIn_control\n\nIn_target_0\n\nIn_target_1\n\nswap\n\nout_control\n\nout_target_0\n\nout_target_1\n\n\n\n.alias_sampling.compare:out_flag->.alias_sampling.swap:In_control\n\n\n\n\n\n.alias_sampling.had:out->.alias_sampling.compare:In_sigma\n\n\n\n\n\n.alias_sampling.qrom:out_keep->.alias_sampling.compare:In_keep\n\n\n\n\n\n.alias_sampling.qrom:out_alt->.alias_sampling.swap:In_target_1\n\n\n\n\n\n.alias_sampling.qrom:out_l->.alias_sampling.swap:In_target_0\n\n\n\n\n\n.alias_sampling.swap:out_target_0->.alias_sampling.out_0\n\n\n\n\n\n.alias_sampling.swap:out_target_1->.alias_sampling.temp_1\n\n\n\n\n\n.alias_sampling.swap:out_control->.alias_sampling.temp_3\n\n\n\n\n\n.alias_sampling.usp:out->.alias_sampling.qrom:In_l\n\n\n\n\n\n", "text/plain": [ - "'alias_sampling.png'" + "" ] }, - "execution_count": 8, + "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 8 - }, - { - "metadata": {}, - "cell_type": "markdown", - "source": "![Alias Samplν`~ZAng](../images/alias_sampling.png)\n", - "id": "f83601e78b3ffbf0" + "execution_count": 48 }, { "metadata": {}, @@ -405,8 +395,8 @@ "id": "5d0d2d69-4b77-4d62-9dd3-2405f4db21ed", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:08.599697Z", - "start_time": "2024-06-24T20:26:07.364051Z" + "end_time": "2024-06-24T21:06:40.841356Z", + "start_time": "2024-06-24T21:06:40.830608Z" } }, "source": [ @@ -415,15 +405,15 @@ "uncompiled_routine = qref_to_bartiq(alias_sampling_qref)" ], "outputs": [], - "execution_count": 9 + "execution_count": 49 }, { "cell_type": "code", "id": "d20ef4d2-9420-4090-a402-ee5f27034524", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:09.210539Z", - "start_time": "2024-06-24T20:26:08.610840Z" + "end_time": "2024-06-24T21:06:40.953312Z", + "start_time": "2024-06-24T21:06:40.846589Z" } }, "source": [ @@ -432,7 +422,7 @@ "compiled_routine = compile_routine(uncompiled_routine)" ], "outputs": [], - "execution_count": 10 + "execution_count": 50 }, { "cell_type": "markdown", @@ -447,8 +437,8 @@ "id": "dad8df1e-9570-46c5-a422-4f29bba4d52c", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:09.223852Z", - "start_time": "2024-06-24T20:26:09.212804Z" + "end_time": "2024-06-24T21:06:40.984789Z", + "start_time": "2024-06-24T21:06:40.967739Z" } }, "source": [ @@ -465,7 +455,7 @@ ] } ], - "execution_count": 11 + "execution_count": 51 }, { "cell_type": "markdown", @@ -489,8 +479,8 @@ "id": "becb2091-9faf-4364-ac22-f10240072937", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:09.384300Z", - "start_time": "2024-06-24T20:26:09.227116Z" + "end_time": "2024-06-24T21:06:41.110642Z", + "start_time": "2024-06-24T21:06:40.992467Z" } }, "source": [ @@ -511,7 +501,7 @@ ] } ], - "execution_count": 12 + "execution_count": 52 }, { "cell_type": "markdown", @@ -531,8 +521,8 @@ "id": "dbf7d3a4-5a58-4dcb-990e-eccd0d7cda9a", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:09.504698Z", - "start_time": "2024-06-24T20:26:09.388114Z" + "end_time": "2024-06-24T21:06:41.217016Z", + "start_time": "2024-06-24T21:06:41.114669Z" } }, "source": [ @@ -550,7 +540,7 @@ ] } ], - "execution_count": 13 + "execution_count": 53 }, { "cell_type": "markdown", @@ -565,8 +555,8 @@ "id": "2909fb37-6a15-44fc-a80f-46e562220fcb", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:09.664185Z", - "start_time": "2024-06-24T20:26:09.508129Z" + "end_time": "2024-06-24T21:06:41.362809Z", + "start_time": "2024-06-24T21:06:41.222791Z" } }, "source": [ @@ -592,7 +582,7 @@ ] } ], - "execution_count": 14 + "execution_count": 54 }, { "cell_type": "markdown", @@ -624,8 +614,8 @@ "id": "1a346534-4f97-4855-8262-2c5df824eb27", "metadata": { "ExecuteTime": { - "end_time": "2024-06-24T20:26:09.870380Z", - "start_time": "2024-06-24T20:26:09.666565Z" + "end_time": "2024-06-24T21:06:41.457553Z", + "start_time": "2024-06-24T21:06:41.372181Z" } }, "source": [ @@ -642,15 +632,15 @@ "application/vnd.jupyter.widget-view+json": { "version_major": 2, "version_minor": 0, - "model_id": "a4432e43f3f449bb83206cd960046ff9" + "model_id": "dbd90e9500c04d6894d2bff15b01a796" } }, - "execution_count": 15, + "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 15 + "execution_count": 55 }, { "cell_type": "markdown", @@ -678,12 +668,12 @@ ], "text/latex": "$\\displaystyle \\begin{align}\n&\\text{Routine \\textrm{(alias\\_sampling)}}\\newline\n&\\underline{\\text{Input ports:}}\\\\\n&\\text{In\\_0} = R\\\\\n&\\text{In\\_1} = 8\\\\\n&\\text{In\\_2} = R\\\\\n&\\text{In\\_3} = 8\\\\\n&\\text{In\\_4} = 1\\newline\n&\\underline{\\text{Output ports:}}\\\\\n&\\text{out\\_0} = R\\\\\n&\\text{temp\\_0} = 8\\\\\n&\\text{temp\\_1} = R\\\\\n&\\text{temp\\_2} = 8\\\\\n&\\text{temp\\_3} = 1\\newline\n&\\underline{\\text{Resources:}}\\\\\n&T_{\\text{gates}} = 831\\\\\n&rotations = 2\\\\\n&\\text{usp}.\\!T_{\\text{gates}} = 320\\\\\n&\\text{usp}.\\!rotations = 2\\\\\n&\\text{qrom}.\\!T_{\\text{gates}} = 476\\\\\n&\\text{compare}.\\!T_{\\text{gates}} = 28\\\\\n&\\text{swap}.\\!T_{\\text{gates}} = 7\n\\end{align}$" }, - "execution_count": 16, + "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 16 + "execution_count": 56 }, { "cell_type": "markdown",
\n", "

NOTE:

\n", "

\n", - " To use qref's rendering tool in Jupyter Notebook, ensure it's installed by running:\n", - " poetry install -E jupyter\n", + " To use the qref rendering tool in Jupyter Notebook, ensure the Graphviz software is installed on your OS and that its executables are included in your system variables. For installation instructions, please refer to the Graphviz download page.\n", "

\n", - "

\n", - " Additionally, ensure the Graphviz software is installed on your OS and that its executables are on your system variable. For installation instructions, please refer to the Graphviz download page.\n", - "

\n", - "