Created
August 21, 2021 22:44
-
-
Save splch/14e6a3d0c11f81b2e82aaaea7677995f to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# Qiskit Advocate Program Exam" | |
] | |
}, | |
{ | |
"cell_type": "raw", | |
"metadata": {}, | |
"source": [ | |
"https://airtable.com/shrm7eWJsKLf3WVrP\n", | |
"Test: advocate-test-20200715-1\n", | |
"--------------------------------------\n", | |
"Spencer\n", | |
"Churchill\n", | |
"Yes\n", | |
"[email protected]\n", | |
"Trabuco Canyon\n", | |
"US\n", | |
"he/ him/ his\n", | |
"Code, Bug Reports, Other\n", | |
"- https://github.com/qiskit-community/qiskit-textbook/pull/551\n", | |
"- https://github.com/qiskit-community/qiskit-textbook/pull/552\n", | |
"- https://github.com/qiskit-community/qiskit-textbook/pull/553\n", | |
"- https://github.com/qiskit-community/qiskit-textbook/pull/554\n", | |
"- https://github.com/qiskit-community/qiskit-textbook/pull/555\n", | |
"- https://github.com/qiskit-community/qiskit-textbook/pull/557\n", | |
"- https://github.com/qiskit-community/qiskit-textbook/pull/583\n", | |
"- https://github.com/Qiskit/qiskit-aqua/pull/1133\n", | |
"- https://github.com/Qiskit/qiskit-terra/issues/4770\n", | |
"- https://quantumcomputing.stackexchange.com/a/12997/12728\n", | |
"- https://qiskit.slack.com/archives/CMXDMFNN5/p1595434796242400?thread_ts=1595432822.236700&cid=CMXDMFNN5\n", | |
"https://github.com/splch\n", | |
"Spence\n", | |
"\n", | |
"\n", | |
"No\n", | |
"☑️" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"# # install dependencies\n", | |
"# !pip install --upgrade qiskit==0.19.6 \n", | |
"# !pip install --upgrade metakernel\n", | |
"# !pip install --upgrade portalocker\n", | |
"# !pip install --upgrade matplotlib\n", | |
"\n", | |
"from numpy import pi, sqrt, array\n", | |
"from qiskit import *\n", | |
"from qiskit.tools.monitor import job_monitor\n", | |
"from qiskit.visualization import plot_histogram, plot_state_city, plot_bloch_multivector, plot_bloch_vector, plot_state_paulivec, plot_state_hinton, plot_state_qsphere\n", | |
"\n", | |
"from qiskit.circuit.library import QuantumVolume, HGate, CXGate\n", | |
"from qiskit.transpiler.passes import Decompose, LookaheadSwap\n", | |
"from qiskit.transpiler import CouplingMap\n", | |
"from qiskit.quantum_info.operators import Operator, Pauli\n", | |
"\n", | |
"from qiskit.providers.ibmq import least_busy, ibmqbackend\n", | |
"\n", | |
"import qiskit.quantum_info as qi\n", | |
"from qiskit.providers.aer import StatevectorSimulator, QasmSimulator\n", | |
"\n", | |
"from qiskit.providers.aer.noise import NoiseModel, thermal_relaxation_error\n", | |
"from qiskit.ignis.mitigation.measurement import complete_meas_cal, CompleteMeasFitter\n", | |
"from qiskit.ignis.verification.quantum_volume import qv_circuits, QVFitter\n", | |
"from tqdm import tqdm\n", | |
"\n", | |
"from qiskit.optimization import QuadraticProgram\n", | |
"from qiskit.aqua.algorithms import QAOA\n", | |
"\n", | |
"%matplotlib inline" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 1.1 - 3" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"[ 0.70710678+0.00000000e+00j -0.70710678+8.65956056e-17j] [0.7071067811865475, -0.7071067811865475]\n" | |
] | |
}, | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 288x288 with 1 Axes>" | |
] | |
}, | |
"execution_count": 2, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(1, 1)\n", | |
"q.x(0)\n", | |
"q.h(0)\n", | |
"\n", | |
"# execute the quantum circuit\n", | |
"backend = BasicAer.get_backend('statevector_simulator') # the device to run on\n", | |
"result = execute(q, backend).result()\n", | |
"psi = result.get_statevector(q)\n", | |
"\n", | |
"# plot visual\n", | |
"print(psi, [1/sqrt(2), -1/sqrt(2)])\n", | |
"plot_bloch_multivector([1/sqrt(2), -1/sqrt(2)])" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 1.2 - 2" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 504x360 with 1 Axes>" | |
] | |
}, | |
"execution_count": 3, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"# quantum circuit for question 1\n", | |
"q = QuantumCircuit(2, 2)\n", | |
"q.h(0)\n", | |
"q.cx(0, 1)\n", | |
"q.barrier()\n", | |
"q.measure([0, 1], [0, 1])\n", | |
"\n", | |
"# execute the quantum circuit\n", | |
"backend = BasicAer.get_backend('qasm_simulator') # the device to run on\n", | |
"result = execute(q, backend, shots=1024).result()\n", | |
"counts = result.get_counts(q)\n", | |
"\n", | |
"# plot visual\n", | |
"plot_histogram(counts)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 1.3 - 5" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 1080x360 with 2 Axes>" | |
] | |
}, | |
"execution_count": 4, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(3, 3)\n", | |
"q.h([0, 1])\n", | |
"q.cx([1, 2], [0, 0])\n", | |
"\n", | |
"# execute the quantum circuit\n", | |
"backend = BasicAer.get_backend('statevector_simulator') # the device to run on\n", | |
"result = execute(q, backend).result()\n", | |
"psi = result.get_statevector(q)\n", | |
"\n", | |
"# plot visual\n", | |
"plot_state_city(psi)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 1.4 - 5" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 5, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 504x504 with 2 Axes>" | |
] | |
}, | |
"execution_count": 5, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(2, 2)\n", | |
"q.x(0)\n", | |
"q.h(0)\n", | |
"q.cx(0, 1)\n", | |
"\n", | |
"# execute the quantum circuit\n", | |
"backend = BasicAer.get_backend('statevector_simulator') # the device to run on\n", | |
"result = execute(q, backend).result()\n", | |
"psi = result.get_statevector(q)\n", | |
"\n", | |
"# plot visual\n", | |
"plot_state_qsphere(psi)\n", | |
"\n", | |
"# plot_state_city(psi) # not 1\n", | |
"# plot_state_hinton(psi) # not 2\n", | |
"# plot_state_paulivec(psi) # not 3\n", | |
"# plot_bloch_multivector(psi) # not 4" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 1.5 - 1" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAc0AAAEyCAYAAACYgYvRAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAYY0lEQVR4nO3df5BdZZ3n8fcXMoiY4JBkSNJpEEOoURMR9OIANhAtsyywhQhTBkrNZlmTJQ5EpHRHa4CZsICzODKwzmQZMltC0N1lwB1dNUBYpA0FoWMnM5EfbpIaIGNC0yESjUpIAL/7x73J3mn6x3OTm+5L+v2qutX3Ps9znvs9/+STc885z4nMRJIkDe2QkS5AkqQ3C0NTkqRChqYkSYUMTUmSChmakiQVMjQlSSo0ZqQLGEkTJ07M4447bqTLkCS1kDVr1mzLzN/rr29Uh+Zxxx1Hd3f3SJchSWohEbFpoD5/npUkqZChKUlSIUNTkqRChqYkSYUMTUmSChmakiQVMjQlSSpkaEqSVMjQlCSpkKEpSVIhQ1OSpEKGpiRJhQxNSZIKGZqSJBUyNCVJKmRoSpJUyNCUJKmQoSlJUiFDU5KkQoamJEmFDE1JkgoZmpIkFTI0pYPQpZdeytFHH83MmTP77c9MFi1axPTp0znxxBNZu3bt3r4777yTE044gRNOOIE777xzb/uaNWt473vfy/Tp01m0aBGZecD3Q2o1hqZ0EJo3bx7333//gP333XcfGzduZOPGjdx+++0sXLgQgJdeeonFixfT1dXF6tWrWbx4Mdu3bwdg4cKFLF26dO92g80vHawMTekgdOaZZzJ+/PgB+7/73e8yd+5cIoJTTz2VX/ziF/T09PDAAw8we/Zsxo8fz1FHHcXs2bO5//776enpYceOHZx66qlEBHPnzuU73/nO8O2Q1CIMTWkU2rJlC8ccc8zez+3t7WzZsmXQ9vb29je0S6ONoSlJUiFDUxqFpk6dys9+9rO9nzdv3szUqVMHbd+8efMb2qXRxtCURqHzzz+fZcuWkZk8/vjjvP3tb2fKlCmcffbZrFixgu3bt7N9+3ZWrFjB2WefzZQpUzjyyCN5/PHHyUyWLVvGxz72sZHeDWnYjRnpAiQ13yWXXEJnZyfbtm2jvb2dxYsX8+qrrwJw2WWXce6557J8+XKmT5/OEUccwTe+8Q0Axo8fzzXXXMMpp5wCwLXXXrv3gqIlS5Ywb948du7cyTnnnMM555wzMjsnjaAYzfdaVSqV7O7uHukyJEktJCLWZGalvz5/npUkqZChKUlSIUNTkqRChqYkSYUMTUmSChmakiQVMjQlSSpkaEqSVGhYQzMizoyI/x0RWyIiI2JewTbvjYgfRcTO2nbXRkT0GXNRRDwdEbtqfz9+wHZCkjRqDfeR5ljgSeBzwM6hBkfEkcCDQC9wSm27LwJX1Y05Dbgb+BZwUu3vPRHxB02uXZI0yg3r2rOZuRxYDhARdxRs8kngCODfZuZO4MmIeBdwVUTcnNU1AK8EHs7MG2rb3BARH661X9LcPZAkjWatfk7zNOCRWmDu8QDQBhxXN2ZFn+0eAE4/4NVJkkaVVn/KyWRgc5+23rq+Z2t/e/sZM7m/CSNiAbAAoK2tjc7OTgCmTZvGuHHjWLduHQATJkxgxowZrFy5EoAxY8bQ0dHB2rVr2bFjBwCVSoXe3l7+/HvH788+SpKa4Lo5Paxfvx6oPjO2vb2drq4uAMaOHUulUmHVqlXs2rULgI6ODjZs2MDWrVsBmDlz5t6+gYzYU04i4tfA5Zl5xyBjVgCbM/PSurZjgU3A6Zm5KiJ2A5/JzGV1Y+YCSzPzLYPV0KynnMy/Zb+nkCTtp6VXNmeeN/NTTl4AJvVpm1TXN9iYF5AkqYlaPTRXAWdExOF1bbOB54Hn6sbM7rPdbOCxA16dJGlUGe77NMdGxEkRcVLtu4+tfT621v+ViHiobpP/DrwM3BERMyPiQuBLwJ4rZwFuBT4SEV+KiHdFxJeBDwO3DNNuSZJGieE+0qwA/1B7vRVYXHt/Xa1/CrD3qprM/CXVo8Y2oBv4a+BrwM11Yx4DLgbmAT8B5gJzMrPrwO6KJGm0Ge77NDuBGKR/Xj9tTwBnDjHvvcC9+1meJEmDavVzmpIktQxDU5KkQoamJEmFDE1JkgoZmpIkFTI0JUkqZGhKklTI0JQkqZChKUlSIUNTkqRChqYkSYUMTUmSChmakiQVMjQlSSpkaEqSVMjQlCSpkKEpSVIhQ1OSpEKGpiRJhQxNSZIKGZqSJBUyNCVJKmRoSpJUyNCUJKmQoSlJUiFDU5KkQoamJEmFDE1JkgoZmpIkFTI0JUkqZGhKklTI0JQkqZChKUlSIUNTkqRChqYkSYUMTUmSChmakiQVMjQlSSpkaEqSVMjQlCSpkKEpSVIhQ1OSpEKGpiRJhQxNSZIKNRSaEXFIRBxS93lyRHwmIj7U/NIkSWotjR5p/gC4AiAixgLdwFeBzoiY2+TaJElqKY2GZgX4Ye39hcAO4GhgPvCFkgki4rMR8WxEvBIRayLijEHG3hER2c/rN3VjZg0w5l0N7pskSYNqNDTHAr+ovf9XwN9n5qtUg/T4oTaOiDnArcCNwMnAY8B9EXHsAJt8DpjS5/UM8Hf9jJ3RZ9zGoj2SJKlQo6H5z8CHIuJtwNnAg7X28cDLBdtfBdyRmUsz86eZeQXQAyzsb3Bm/jIzX9jzohrM04Cl/QzfWj82M19vcN8kSRpUo6F5M3AXsBnYAqystZ8JPDHYhhFxGPABYEWfrhXA6YXfPx94KjMf66evOyJ6IuKhiPhw4XySJBUb08jgzPybiFgDHAM8mJm/rXX9E3DNEJtPBA4Fevu09wIfHeq7I+LtwCeAL/fp2nOk+mPgMODTwEMRcVZmPtLPPAuABQBtbW10dnYCMG3aNMaNG8e6desAmDBhAjNmzGDlyur/C8aMGUNHRwdr165lx44dAFQqFXp7eyn4ZVqSdID19PSwfv16AKZOnUp7eztdXV0AjB07lkqlwqpVq9i1axcAHR0dbNiwga1btwIwc+bMvX0Dicw8gLtQ90URbVSPTs/KzJV17dcCn8zM3x9i+z8Cvga0ZeZLQ4xdDryWmecPNq5SqWR3d3fpLgxo/i37PYUkaT8tvbI580TEmsys9NfX8OIGtatfn4qIlyNiWq3tjyPiE0Nsug14HZjUp30S8ELBV88Hvj1UYNZ0AScUjJMkqVijixtcCVwN3A5EXdfzwOWDbZuZu4E1wOw+XbOpXkU72Pd+EHgf/V8A1J+TqP5sK0lS0zR0ThO4DJifmT+IiOvr2tdSveVjKDcDd0XEauDR2nxtwG0AEbEMIDP7LpSwANiYmZ19J6wF+XPAU1TPaX4KuAC4qHCfJEkq0mhovgN4sp/2V4G3DrVxZt4dEROoHq1Oqc11bmZuqg15w/2aETEOuBi4boBpD6O6KlE7sJNqeJ6XmcuHqkeSpEY0GprPAO8HNvVpPxd4umSCzFwCLBmgb1Y/bb+iuqjCQPPdBNxU8t2SJO2PRkPzL4C/iogjqJ7TPC0iPg38R+DSZhcnSVIrafQ+zW9ExBiqy+AdQXWhg+eBRZl59wGoT5KkltHokSaZuRRYGhETgUMyc2vzy5IkqfU0HJp7ZOa2ZhYiSVKrGzI0I+InVFfx2R4RTwADLiGUmSc2szhJklpJyZHmt4Fdde+HZ909SZJazJChmZmL697/2QGtRpKkFtboMno/jIjf7af9yIj4YdOqkiSpBTW6YPssqivw9HU4cMZ+VyNJUgsruno2It5f9/HEiKh/0sihwNlUH/slSdJBq/SWk26qFwAlsKKf/p3AFc0qSpKkVlQamu+kumzeM8AHgRfr+nYDWzPz9SbXJklSSykKzbqnkDT80GpJkg4WJYsbXAh8LzNfrb0fUGb+r6ZVJklSiyk50rwXmAxsrb0fSFK9KEiSpINSyeIGh/T3XpKk0cYQlCSpUOk5zSKe05QkHcxKz2mW8JymJOmg1tA5TUmSRjMDUZKkQt6nKUlSIe/TlCSpkPdpSpJUyBCUJKlQw6EZEe+PiGUR0V173dXneZuSJB2UGgrNiPgk8GNgCrC89poErI6ITzW/PEmSWkfp8zT3uAG4JjNvrG+MiC8D1wPfbFZhkiS1mkZ/nv094O/6ab8HOHr/y5EkqXU1GpoPA7P6aZ8F/Gh/i5EkqZU1umD7fcBXIqICPF5rOxW4EPizplcnSVIL2dcF2xfUXvW+DizZ74okSWpRLtguSVIhA1GSpEKN3nJCRBwFnAMcCxxW35eZ1zWpLkmSWk5DoRkRpwI/AHZRvf1kC9WFDnYBzwGGpiTpoNXoz7NfBb4FTAVeAT5C9YizG/jPzS1NkqTW0mhongj8VWYm8DrwlszsBf4YbzmRJB3kGg3N3XXve4F31N7/GmhrSkWSJLWoRi8EWgucAmwAOoHrI2IS8CngJ80tTZKk1tLokeafAM/X3l8NvEh1UYOjeONiB5IkHVQaOtLMzO669y9SvfVEkqRRoeH7NAEi4njg3bWPT2fmM80rSZKk1tTofZoTgP8GnA/89v83x/eBSzPz502uT5KkltHoOc2/BaYDZwCH115nAu8Elja3NEmSWkujoXk2MD8zH83M12qvR4H/UOsbUkR8NiKejYhXImJNRJwxyNhZEZH9vN7VZ9xFEfF0ROyq/f14g/slSdKQGg3NF4Hf9NP+MjDkT7MRMQe4FbgROBl4DLgvIo4dYtMZVJfr2/PaWDfnacDdVFcqOqn2956I+IOh6pEkqRGNhuZ1wC0RMXVPQ+391yhbd/Yq4I7MXJqZP83MK4AeYOEQ223NzBfqXq/X9V0JPJyZN9TmvIHqPaRXFu+VJEkFhrwQKCKeALKu6Z3AcxGxpfZ5zzq0R1M95znQPIcBHwD+ok/XCuD0Icrojoi3AE8D12fmw3V9p1G9V7TeA8DlQ8wpSVJDSq6evbdJ3zUROJTq8nv1eoGPDrDNnqPQH1N9DNmngYci4qzMfKQ2ZvIAc05uRtGSJO0xZGhm5uLhKGSA714PrK9rWhURxwFfBB7pd6MhRMQCaqsXtbW10dnZCcC0adMYN24c69atA2DChAnMmDGDlStXAjBmzBg6OjpYu3YtO3bsAKBSqdDb2wscvy+lSJKaqKenh/Xrq5ExdepU2tvb6erqAmDs2LFUKhVWrVrFrl27AOjo6GDDhg1s3boVgJkzZ+7tG0hUH1jSmIj4CPAeqj/bPpWZnQXbHEb1gqFLMvOeuva/BmZm5lmF3/2nwMWZ+e7a538Gvp6ZX60b80Xg8sx8xwDTAFCpVLK7u3uwIUXm37LfU0iS9tPSK5szT0SsycxKf30NXQgUEVMjYjXwINXHgX2J6s+lXREx6FNOMnM3sAaY3adrNtWraEudRPVn2z1WNWFOSZKG1Ogyev+F6nM0p2fmswARMQ34Zq3vD4fY/mbgrlrwPgpcRvWRYrfV5loGkJlza5+vBJ4DnqJ6TvNTwAXARXVz3gqsjIgvAd8BPg58GOhocN8kSRpUo6E5G5i1JzABMvOZiFgEPDTUxpl5d20pvqup3m/5JHBuZm6qDel7v+ZhwFeBdmAn1fA8LzOX1835WERcDFxP9baXfwLmZGZXg/smSdKg9mXB9v5OghafGM3MJcCSAfpm9fl8E3BTwZz30ryrfCVJ6lejixs8BHw9Io7Z01BbzecWCo40JUl6M2s0NBcBbwOeiYhNEbGJ6s+hb6v1SZJ00Gr059mfAx8EZgF7Fk3/aWb+n2YWJUlSKyoOzYg4FPgl8L7MfJDqbSeSJI0axT/P1hZJ30T1ilZJkkadRs9p/ifgzyNi4oEoRpKkVtboOc0vUH3KyZaI2EyfZ2tm5onNKkySpFbTaGjeS/WezDgAtUiS1NKKQjMijqC6Ms8FwO9QvSfziszcduBKkySptZSe01wMzAN+APwPqs+//K8HqCZJklpS6c+zFwL/PjP/J0BEfAt4NCIOrV1VK0nSQa/0SPMY6h76nJmrgdeoPqFEkqRRoTQ0DwV292l7jX1b8F2SpDel0tAL4JsRsauu7XBgaUS8vKchM89vZnGSJLWS0tC8s5+2bzazEEmSWl1RaGbmvzvQhUiS1OoaXUZPkqRRy9CUJKmQoSlJUiFDU5KkQoamJEmFDE1JkgoZmpIkFTI0JUkqZGhKklTI0JQkqZChKUlSIUNTkqRChqYkSYUMTUmSChmakiQVMjQlSSpkaEqSVMjQlCSpkKEpSVIhQ1OSpEKGpiRJhQxNSZIKGZqSJBUyNCVJKmRoSpJUyNCUJKmQoSlJUiFDU5KkQoamJEmFDE1JkgoNe2hGxGcj4tmIeCUi1kTEGYOMvTAiVkTEixHxq4joiojz+4yZFxHZz+vwA783kqTRZFhDMyLmALcCNwInA48B90XEsQNschbwQ+C82vjlwN/3E7QvA1PqX5n5SvP3QJI0mo0Z5u+7CrgjM5fWPl8REf8aWAh8ue/gzPxcn6bFEXEecAHwyL8cmi8cgHolSdpr2I40I+Iw4APAij5dK4DTG5hqHLC9T9tbI2JTRGyOiO9HxMn7UaokSf0aziPNicChQG+f9l7goyUTRMQfAe3AXXXN64FLgXVUA/VzwKMR8b7M3NjPHAuABQBtbW10dnYCMG3aNMaNG8e6desAmDBhAjNmzGDlypUAjBkzho6ODtauXcuOHTsAqFQq9Pb2AseXlC9JOoB6enpYv349AFOnTqW9vZ2uri4Axo4dS6VSYdWqVezatQuAjo4ONmzYwNatWwGYOXPm3r6BRGYewF2o+6KINmALcFZmrqxrvxb4ZGb+/hDbX0Q1LOdk5vcGGXco8I/Aw5m5aLA5K5VKdnd3l+/EAObfst9TSJL209IrmzNPRKzJzEp/fcN5IdA24HVgUp/2ScCg5yMj4g+pBubcwQITIDNfB7qBE/a9VEmS3mjYQjMzdwNrgNl9umZTvYq2XxHxCaqBOS8z7x3qeyIigBOBnn2vVpKkNxruq2dvBu6KiNXAo8BlQBtwG0BELAPIzLm1zxdTDcwvACsjYnJtnt2Z+VJtzJ8CjwMbgSOBRVRDc+Ew7ZMkaZQY1tDMzLsjYgJwNdX7KZ8Ezs3MTbUhfe/XvIxqjbfUXnv8CJhVe/+7wO3AZOCXwD8AZ2bm6qbvgCRpVBvuI00ycwmwZIC+WYN9HmCbzwOfb0ZtkiQNxrVnJUkqZGhKklTI0JQkqZChKUlSIUNTkqRChqYkSYUMTUmSChmakiQVMjQlSSpkaEqSVMjQlCSpkKEpSVIhQ1OSpEKGpiRJhQxNSZIKGZqSJBUyNCVJKmRoSpJUyNCUJKmQoSlJUiFDU5KkQoamJEmFDE1JkgoZmpIkFTI0JUkqZGhKklTI0JQkqZChKUlSIUNTkqRChqYkSYUMTUmSChmakiQVMjQlSSpkaEqSVMjQlCSpkKEpSVIhQ1OSpEKGpiRJhQxNSZIKGZqSJBUyNCVJKmRoSpJUyNCUJKmQoSlJUiFDU5KkQsMemhHx2Yh4NiJeiYg1EXHGEOPPqo17JSKeiYjL9ndOSZL2xbCGZkTMAW4FbgROBh4D7ouIYwcY/05geW3cycBXgK9HxEX7OqckSftquI80rwLuyMylmfnTzLwC6AEWDjD+MuD5zLyiNn4pcCfwhf2YU5KkfTJsoRkRhwEfAFb06VoBnD7AZqf1M/4BoBIRv7OPc0qStE+G80hzInAo0NunvReYPMA2kwcYP6Y2377MKUnSPhkz0gUMt4hYACyoffx1RKwfyXqkFjIR2DbSRUj76m8/37Sp3jFQx3CG5jbgdWBSn/ZJwAsDbPPCAONfq80Xjc6ZmbcDtxdXLY0SEdGdmZWRrkNqZcP282xm7gbWALP7dM2mesVrf1YNML47M1/dxzklSdonw/3z7M3AXRGxGniU6tWxbcBtABGxDCAz59bG3wZcHhG3AH8DfAiYB1xSOqckSc0yrKGZmXdHxATgamAK8CRwbmZuqg05ts/4ZyPiXOAvqd5C8jywKDO/3cCcksp42kIaQmTmSNcgSdKbgmvPSpJUyNCUJKmQoSlJUiFDUxrFIuKEiOh7n7OkAXghkDTKRMTRwKeBzwMvUl0spAe4F/h2Zv5mBMuTWpqhKY0yEXEH8B7g+8DPgQnAScC7gc3ATZn54EjVJ7UyQ1MaRSIigF9RvZd5ZV1bO3AqMJ/quptzMvMfR6pOqVV5TlMaXd4DPAvs3tOQVT/LzHuAf0M1VOeMUH1SSzM0pdHlGWAr8Je1i4D+xb8BtfWc7wTOGYnipFZnaEqjSGbuBP4EeCuwDJgbEcdExFiAiDgCOIvqcpSS+vCcpjQKRcRM4BrgfOA3VJ8o9CLwUapX0n4mM58YuQql1mRoSqNY7faT84ALgFeoHmHek5n/dyTrklqVoSkJgIg4JDN/O9J1SK3M0JQkqZAXAkmSVMjQlCSpkKEpSVIhQ1OSpEKGpiRJhQxNSZIKGZqSJBX6f7FBpj2rWUTSAAAAAElFTkSuQmCC\n", | |
"text/plain": [ | |
"<Figure size 504x360 with 1 Axes>" | |
] | |
}, | |
"execution_count": 6, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(1, 1)\n", | |
"\n", | |
"q.u1(pi, 0) # 0: 100%\n", | |
"# q.u2(0, pi, 0) # 0: 50%, 1: 50%\n", | |
"# q.u3(pi/2, 0, pi, 0) # 0: 50%, 1: 50%\n", | |
"# q.h(0) # 0: 50%, 1: 50%\n", | |
"\n", | |
"q.measure(0, 0)\n", | |
"\n", | |
"# execute the quantum circuit\n", | |
"backend = BasicAer.get_backend('qasm_simulator') # the device to run on\n", | |
"result = execute(q, backend, shots=1024).result()\n", | |
"counts = result.get_counts(q)\n", | |
"\n", | |
"# plot visual\n", | |
"plot_histogram(counts)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 2.1 - 3" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 7, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 479.192x385.28 with 1 Axes>" | |
] | |
}, | |
"execution_count": 7, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"lhs = QuantumCircuit(5, 5)\n", | |
"lhs.t(0)\n", | |
"lhs.h(1)\n", | |
"lhs.cx([0, 1], [2, 4])\n", | |
"# lhs.draw('mpl')\n", | |
"\n", | |
"rhs = QuantumCircuit(2, 2)\n", | |
"rhs.cx(0, 1)\n", | |
"rhs.sdg(0)\n", | |
"# rhs.draw('mpl')\n", | |
"\n", | |
"# merge lhs and rhs circuits\n", | |
"q = lhs.compose(rhs)\n", | |
"\n", | |
"# plot quantum circuit\n", | |
"q.draw('mpl')" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 2.2 - 5 ~" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 8, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"31 or 8\n" | |
] | |
} | |
], | |
"source": [ | |
"q = QuantumVolume(num_qubits=5, depth=5).decompose()\n", | |
"q = transpile(q, basis_gates=['u3', 'cx'])\n", | |
"print(q.decompose().depth(), \"or\", 8) # 8 is from https://qiskit.org/textbook/ch-quantum-hardware/measuring-quantum-volume.html" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 2.3 - 2" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 9, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"module 'qiskit.circuit.library' has no attribute 'NAND'\n" | |
] | |
} | |
], | |
"source": [ | |
"try:\n", | |
" qiskit.circuit.library.HGate\n", | |
" qiskit.circuit.library.QFT\n", | |
" qiskit.circuit.library.QuantumVolume\n", | |
" qiskit.circuit.library.NAND\n", | |
"except AttributeError as e:\n", | |
" print(e)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 2.4 - 3" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 10, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"False" | |
] | |
}, | |
"execution_count": 10, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(2)\n", | |
"q.x(0)\n", | |
"q.z(1)\n", | |
"\n", | |
"Operator(Pauli(label='XZ')) == Operator(Pauli(label='X')).tensor(Operator(Pauli(label='Z'))) == Operator([[0, 0, 1, 0], [0, 0, 0, -1], [1, 0, 0, 0], [0, -1, 0, 0]]) == Operator(q)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 2.5 - 5 ~" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 11, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"7\n" | |
] | |
}, | |
{ | |
"data": { | |
"image/png": "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76CRXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhEREZEWqtp84d9F58Bi8VwtzS3A0wWIiIiIiPucL4evsuGbHDhedKF98RoICYSukTC8OwztBkEGSooG+lZEREREpCHVZkj7HjZ9C5XV9s8pq4TMfOvHuj0wbRiM6AEmk3trbQ4KvSIiIiIGd7YUXvsEjp50/GvOlcNbX8C3uXDHGN8f9dWcXhEvU9XAq29Xne9r9PNwH/2sRRxnsdjOh21KVbXn5suWlMFftzgXeC+27xi8lt7w6LCvUOgV8SJZP8EfPrCdY9WYHVnwfzdYX8Eb0cmz8PSHkJHr2PlZBZD6Afzo4M9PLsgttF572T85dv6+Y/D0R3CqpHnrEvFGFgu89zUs/9SxF38VVfDqNvhor/uDr8UC//wcfjrT8DnP/cr60ZjMfPjwG5eW5nYKveIzcnNz+a//+i/GjBlDWFgYJpOJjIwMT5flUtszratnX/y46eC7Iwv+vQPyTsN3x91Tn7vtPgonS6x/WJoKvlkF8EoaFJ6z/mzEOTuyrNfeK2lNB999x2DFp9YXJXuOuqc+EW9SdM76+ykjF1Zsbzz4VlRZR0kz8+HLLCgpd1+dAF9mw4E81/T1yQHHXxh7I4Ve8RmHDh3i3//+N+3btycpKcnT5TSLX42GAZ2s86gaC741gdcC/GwIjOrlzird57oEGN/P+hZiY8G3JvBWVMMV8daFF+Kcm4dbV2uXVzUefGsCr9kC1wyAawe4tUwRrxDRGu67FsKCGg++FwfeNiEwd6L1v+5iNlsXrbmKBdjkw2NNCr3iM8aNG0dBQQHr169nxowZni6nWQT4w93jGg++dQPvtQmeqNQ9TCaYOqzx4Fs38M4cCX76zeY0Pz/ri67Ggm/dwPuzIcZY0S1yKbpENB587QXemHburfH7POuotCsdzIMTjUyV8Gb60yANMpvNLFu2jN69exMSEsLgwYNJT0+nb9++zJkzx6m+ioqKmDx5Mvv27bN73GKxsGjRIo4fb/h9er8WkmTsBd8aLSnw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nF4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhERERExPIVeERERETE8hV4RERERMTyFXhEvUloBa3dDZbVj5588Cxu/BYuleesSERHxdQq94rPuvvtuTCYTt9xyi6dLcZl/fg5p38Pr6U0H35Nn4W9bYOM++DTTPfWJiIj4KoVe8Ukff/wx77zzDm3btvV0KS510xBoHQwH8hoPvjWBt/g8xHeAK+PdWqaIiIjPUegVn1NaWkpKSgpPPfUU4eHhni7HpWLbw9yJjQffuoF3zgQICfRIuSIiIj5DoVcaZDabWbZsGb179yYkJITBgweTnp5O3759mTNnjlN9FRUVMXnyZPbt22f3uMViYdGiRRw/frzJvp566ilatWrFww8/7FQNvsJe8K2hwCsiInJpFHqlQbNnz2bJkiWkpKSwYcMGbr31VmbOnEl2djbDhw93qq/y8nI2bdpEYWGh3eNFRUWsWrWKpKQkjh071mA/u3bt4i9/+QuvvPIKAQEBTtXgS+oG3xoKvCIiIpdGoVfsWrlyJStWrGDdunXMnz+fCRMm8MQTTzB69GiqqqoYNmzYJfVbUVFBWVlZvY+wsDA2btxIUFAQSUlJHDlypN7XVlVVcc8993DPPfcwatSoy/wOvd/FwbeGAq+IiMilMe5QmVyW1NRUJk+eTFJSkk17r169CAwMJDExEYAjR44wa9Ys8vLyCA4O5sUXX2Ts2LEN9jtp0iSHHn/WrFmkp6fbtC1btoyCggL++Mc/OvndOM9kMjX7Yziq26BJTHtsIwBl5wp57N4+PFhyysNViYiIeAeLg/t2KvRKPbm5uWRkZDBv3rx6x3JyckhISCA42Dr8mJKSwowZM7j//vv5/PPPmT59OocPHyYoKMhu36mpqQwaNMjuMbPZzMKFC8nKymLBggX1Hnfx4sU8//zzWCwWiouLa7+msrKS4uJiWrVqRWCgsYY/23WM59p7/l77eUirCCbd/08+fHYa1ZXlHqxMRETEtyj0Sj25ubkAxMTE2LSXlpaSnp7OlClTADh58iTbt29n3bp1AIwZM4ZOnTqRlpbW4Iju6NGjGT9+fL326upqkpOTyc7OZs2aNbWPUSM7O5uysjLmzJlTbxHdsWPHCA8P58033+SOO+64pO+5LkdfNTanuovWpg6Dv2+D7omT+dvGMmYnQaC/p6sUERHxDQq9Uk9UVBQAmZmZ3HDDDbXtS5cuJS8vr3YRW05ODtHR0bWjvgA9evTg6NGjTj/mmTNnOHjwIGvXrrUbmIcMGUJaWlq99ttuu42+ffuyePFi+vfv7/TjequGdmmYOxFe2HJhVwcFXxEREcco9Eo98fHxJCYmkpqaSkREBJ07d2bVqlWsX78ewOmdG8A6atzY6Gl4eDg7duxocC5t+/bt7Y4Qh4SE0KFDB7vHfFVj25LVLG5T8BUREXGOdm+Qevz8/Hj33XdJSEjgvvvuIzk5maioKObOnYu/v3/tIrauXbtSUFBAefmFuaWHDx+mW7dul/S43rR4zFMc2YfXkRtYiIiIiC2TxRsmL4pPuPPOO9m7d6/NDSauv/56pk2bVruQ7ZZbbuHIkSMNLmSTxr2aBvt/dGxbsrxi64hvSTn8Yjgk9XNbmSIiIj5HoVcc1r9/f0aNGsXy5ctr27Kzs7nrrrvIz88nKCiIF154od42Z+K4kjL4aK910Zoj+/DmFcOXWfDzYeCngXIREZEGKfSKQ0pKSmjXrh3PPfccv/3tbz1djoiIiIhTFHpFRERExPC0kE1EREREDE+hV0REREQMT6FXRERERAxPoVdEREREDE+hV0REREQMT6FXRERERAxPoVdEREREDE+hV0REREQMT6FXRERERAxPoVdEREREDE+hV0REREQMT6FXRERERAxPoVdEREREDE+hV0REREQMT6FXRERERAxPoVdEREREDE+hV0REREQMT6FXRERERAxPoVdEREREDE+hV0REREQMT6FXRERERAxPoVdEREREDE+hV0REREQMT6FXRERERAxPoVdEREREDO//A8+YNVjwi63kAAAAAElFTkSuQmCC\n", | |
"text/plain": [ | |
"<Figure size 910.224x325.08 with 1 Axes>" | |
] | |
}, | |
"execution_count": 11, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(5)\n", | |
"q.h(3)\n", | |
"q.cx([0, 3, 2], [4, 0, 4])\n", | |
"\n", | |
"q = transpile(q, coupling_map=[[0, 1], [1, 2], [2, 3], [3, 4]])\n", | |
"print(q.depth())\n", | |
"q.draw('mpl')" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 3.1 - 4" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 12, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"ibmq_qasm_simulator\n", | |
"Job Status: job has successfully run\n", | |
"{'00000': 1024}\n" | |
] | |
} | |
], | |
"source": [ | |
"lhs = QuantumCircuit(5, 5)\n", | |
"lhs.t(0)\n", | |
"lhs.h(1)\n", | |
"lhs.cx([0, 1], [2, 4])\n", | |
"# lhs.draw('mpl')\n", | |
"\n", | |
"rhs = QuantumCircuit(2, 2)\n", | |
"rhs.cx(0, 1)\n", | |
"rhs.sdg(0)\n", | |
"# rhs.draw('mpl')\n", | |
"\n", | |
"# merge lhs and rhs circuits\n", | |
"q = lhs.compose(rhs)\n", | |
"\n", | |
"# run quantum circuit\n", | |
"IBMQ.load_account()\n", | |
"provider = IBMQ.get_provider('ibm-q')\n", | |
"# qcomp = least_busy(provider.backends()) # needs 5+ qubits\n", | |
"qcomp = least_busy(provider.backends(filters=lambda x: x.configuration().n_qubits >= 5))\n", | |
"# qcomp = provider.backends(filters=lambda x: x.configuration().n_qubits >= 5 and not x.configuration().simulator and x.status().operational==True) # returns list\n", | |
"print(qcomp)\n", | |
"job = execute(q, backend=qcomp)\n", | |
"\n", | |
"from qiskit.tools.monitor import job_monitor\n", | |
"job_monitor(job)\n", | |
"result = job.result()\n", | |
"print(result.get_counts(q))" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 3.2 - 1" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 13, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stderr", | |
"output_type": "stream", | |
"text": [ | |
"ibmqfactory.load_account:WARNING:2020-07-22 21:49:44,807: Credentials are already in use. The existing account in the session will be replaced.\n" | |
] | |
}, | |
{ | |
"data": { | |
"text/plain": [ | |
"namespace(_backend=<IBMQSimulator('ibmq_qasm_simulator') from IBMQ(hub='ibm-q', group='open', project='main')>,\n", | |
" _api=<qiskit.providers.ibmq.api.clients.account.AccountClient at 0x7ff96d775dd0>,\n", | |
" _job_id='5f1916df646fcb0014e6f9b0',\n", | |
" _creation_date=datetime.datetime(2020, 7, 23, 4, 49, 34, 741000, tzinfo=tzutc()),\n", | |
" _api_status='COMPLETED',\n", | |
" _kind=<ApiJobKind.QOBJECT_STORAGE: 'q-object-external-storage'>,\n", | |
" _name=None,\n", | |
" _time_per_step=None,\n", | |
" _result=None,\n", | |
" _qobj=None,\n", | |
" _error=None,\n", | |
" _tags=[],\n", | |
" _run_mode='fairshare',\n", | |
" _status=<JobStatus.DONE: 'job has successfully run'>,\n", | |
" _queue_info=None,\n", | |
" _use_object_storage=True,\n", | |
" _backend_info={'id': '5ae875670f020500393162ad',\n", | |
" 'name': 'ibmq_qasm_simulator'},\n", | |
" hub_info={'hub': {'name': 'ibm-q'},\n", | |
" 'group': {'name': 'open'},\n", | |
" 'project': {'name': 'main'}},\n", | |
" end_date='2020-07-23T04:49:38.869Z',\n", | |
" share_level='none',\n", | |
" user_id='5d13e0d7a630220018c34c3f',\n", | |
" _cancelled=False,\n", | |
" _job_error_msg=None)" | |
] | |
}, | |
"execution_count": 13, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"IBMQ.load_account()\n", | |
"backend = IBMQ.get_provider('ibm-q').backends\n", | |
"backend.jobs()[0]" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 4.1 - 5" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"https://youtu.be/ZvipHRY-URs?t=300" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 4.2 - 3" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"https://qiskit.org/documentation/stubs/qiskit.pulse.channels.html#module-qiskit.pulse.channels" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 4.3 - 2" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"https://qiskit.org/documentation/stubs/qiskit.pulse.Drag.html#qiskit.pulse.Drag" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 4.4 - 1" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"https://qiskit.org/textbook/ch-quantum-hardware/calibrating-qubits-openpulse.html#frequencysweep" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 4.5 - 2" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"https://qiskit.org/textbook/ch-quantum-hardware/calibrating-qubits-openpulse.html#rabi" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 5.1 - 1" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 14, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"[0.35355339+0.j 0.35355339+0.j 0.35355339+0.j 0.35355339+0.j\n", | |
" 0.35355339+0.j 0.35355339+0.j 0.35355339+0.j 0.35355339+0.j]\n" | |
] | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(3)\n", | |
"q.h([0, 1, 2])\n", | |
"\n", | |
"# execute the quantum circuit\n", | |
"backend = BasicAer.get_backend('statevector_simulator') # the device to run on\n", | |
"result = execute(q, backend).result()\n", | |
"psi = result.get_statevector(q)\n", | |
"\n", | |
"# plot visual\n", | |
"print(psi)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 5.2 - 2" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 15, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"False" | |
] | |
}, | |
"execution_count": 15, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(2)\n", | |
"q.h(0)\n", | |
"q.cx(0,1)\n", | |
"\n", | |
"qi.Statevector.from_instruction(q) == sqrt(0.5) * (qi.Statevector.from_label('00') + qi.Statevector.from_label('11')) == qi.Statevector.from_label('00').evolve(q) == qi.Statevector(array([1, 0, 1, 0]) / sqrt(2))" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 5.3 - 1" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 16, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"[[ 0.+0.0000000e+00j 0.+0.0000000e+00j 0.+0.0000000e+00j\n", | |
" 1.-2.4492936e-16j]\n", | |
" [ 0.+0.0000000e+00j 0.+0.0000000e+00j -1.+2.4492936e-16j\n", | |
" 0.+0.0000000e+00j]\n", | |
" [ 0.+0.0000000e+00j 1.-1.2246468e-16j 0.+0.0000000e+00j\n", | |
" 0.+0.0000000e+00j]\n", | |
" [-1.+1.2246468e-16j 0.+0.0000000e+00j 0.+0.0000000e+00j\n", | |
" 0.+0.0000000e+00j]]\n" | |
] | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(2)\n", | |
"q.x([0, 1])\n", | |
"q.z(0)\n", | |
"\n", | |
"# execute the quantum circuit\n", | |
"backend = BasicAer.get_backend('unitary_simulator') # the device to run on\n", | |
"result = execute(q, backend).result().results[0].data.unitary\n", | |
"\n", | |
"# plot visual\n", | |
"print(result)\n", | |
"\n", | |
"# 0 0 0 1\n", | |
"# 0 0 -1 0\n", | |
"# 0 1 0 0\n", | |
"# -1 0 0 0" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 5.4 - 3" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 17, | |
"metadata": { | |
"scrolled": true | |
}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"'Label contains invalid characters.'\n" | |
] | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(2)\n", | |
"q.h(0)\n", | |
"q.cx(0,1)\n", | |
"\n", | |
"try:\n", | |
" qi.Operator(q) == qi.Operator.from_label('II').compose(HGate(), [0]).compose(CXGate(), [0, 1]) == qi.Operator.from_label('II').compose(q) == qi.Operator.from_label('HI') + qi.Operator.from_label('CX')\n", | |
"except QiskitError as e:\n", | |
" print(e)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 5.5 - 3" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 18, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAc0AAAFDCAYAAABY/1W1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAlAklEQVR4nO3deZgdZZn38e9NAggELkOAQDZCE0BISCA0I4MBArJIHHgVFcRxGEYFUWQZF9BX5HUF1BFBEVDGERBRBhkRFZAwSCIQwU4wLMGwZBlZTAKJhmUSknC/f9TpttN0J9VJ9zmn+3w/15WLc56qrtyVhz6/U1VPPRWZiSRJWr9Nal2AJEl9haEpSVJJhqYkSSUZmpIklWRoSpJUkqEpSVJJA2tdQC1tt912OXr06FqXIUmqIzNnznw+M7fvbFlDh+bo0aNpaWmpdRmSpDoSEQu7WubpWUmSSjI0JUkqydCUJKkkQ1OSpJIMTUmSSjI0JUkqydCUJKkkQ1OSpJIMTUmSSjI0JUkqydCUJKkkQ1OSpJIMTUmSSjI0JUkqydCUJKkkQ1OSpJIMTUmSSjI0JUkqydCUJKkkQ1OSpJIMTUmSSjI0JUkqydCUJHXL7bffzh577MGYMWO46KKLXrf84osvZq+99mL8+PG89a1vZeHChW3LBgwYwD777MM+++zDscce+7qfPfPMMxk0aFCv1r8xBta6AElS37FmzRpOP/10pk6dyogRI9h///059thj2WuvvdrW2XfffWlpaWHLLbfkiiuu4JxzzuGGG24AYIsttuAPf/hDp9tuaWlh2bJl1diNDeaRpiSptAceeIAxY8bQ1NTEZpttxnvf+15+/vOfr7XOoYceypZbbgnAAQccwNNPP73e7a5Zs4ZPfepTfO1rX+uVunuKoSlJKu2ZZ55h5MiRbe9HjBjBM8880+X63//+9zn66KPb3q9YsYLm5mYOOOAAbr755rb2yy67jGOPPZaddtqpV+ruKZ6elST1iuuuu46WlhamTZvW1rZw4UKGDx/OvHnzOOyww9h7773ZYostuPHGG7n77rtrV2xJHmlKFRszuAFg+fLljBgxgo997GNtbTfccAPjx49n7NixnHvuub2+D/2R/VJfhg8fzp/+9Ke2908//TTDhw9/3Xp33nknX/nKV7jlllvYfPPN1/p5gKamJiZPnsyDDz7Igw8+yJNPPsmYMWMYPXo0r7zyCmPGjOn9ndkQmdmwf/bbb7+sldtuuy1333333HXXXfPCCy983fJvfOMbueeee+bee++dhx12WC5YsGCt5X/9619z+PDhefrpp7e1XX/99Tlu3Ljce++986ijjsolS5b0+n70F6tXr86mpqZ86qmncuXKlTl+/Ph89NFH11rnrrvuypdffjkzMy+//PI8/vjj11p+5pln5oknntjWJ88//3yOHDkyFy9enJmZJ510Ut55551V2Jv+w36pP6tWrcpddtkl582b19YnjzzyyFrrzJo1K5uamvLxxx9fq33p0qW5YsWKzMxcsmRJjhkz5nX9mZm51VZb9d4OlAC0ZBe54ZFmDbSOPrvtttuYM2cOP/7xj5kzZ85a67SOPnvooYd497vfzTnnnLPW8s997nMcfPDBbe9Xr17NWWedxW9+8xseeughxo8fz2WXXVaV/ekPNnZww8yZM1m0aBFHHnlkW9u8efPYbbfd2H777QE4/PDDuemmm6qwN/2H/VJ/Bg4cyGWXXcZRRx3FnnvuyfHHH8/YsWM5//zzueWWWwD41Kc+xUsvvcR73vOetW4teeyxx2hubmbChAkceuihfPrTn15r1G1f4DXNGmj/QQC0fRC0/5/n0EMPbXt9wAEHcN1117W9b/0geNvb3kZLSwvwtzMGL7/8MkOGDGH58uX1e3qjDnU2uOH+++/vcv32gxtee+01PvGJT3Dddddx5513tq0zZswY5s6dy4IFCxgxYgQ333wzr776au/tRD9kv9SnKVOmMGXKlLXavvjFL7a9bv/v3d6BBx7Iww8/vN7tv/TSSxtXYC8yNGugNz4INt10U6644gr23ntvttpqK3bbbTe+853v9N5ONLCOgxsuv/xypkyZwogRI9Zab/DgwVxxxRWccMIJbLLJJhx44IE89dRTtSi5IdgvqgZDs86V/SBYtWoVV1xxBQ8++CBNTU2cccYZXHjhhZx33nm1KLvP6e7ghmnTprUNbpgxYwa//e1vufzyy3nppZd49dVXGTRoEBdddBHHHHMMxxxzDADf+973GDBgQHV2qJ+wX1R3urrY2Qh/ajUQ6L777ssjjzyy7f0FF1yQF1xwwevWmzp1ar7pTW/KRYsWtbW9733vy5EjR+bOO++cQ4YMya233jrPPffcfOCBB/Kwww5rW2/atGl59NFH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\n", | |
"text/plain": [ | |
"<Figure size 504x360 with 1 Axes>" | |
] | |
}, | |
"execution_count": 18, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"q = QuantumCircuit(3, 3)\n", | |
"q.h([0, 1])\n", | |
"q.cx([0, 0], [1, 2])\n", | |
"q.barrier()\n", | |
"q.measure([0, 1, 2], [0, 1, 2])\n", | |
"\n", | |
"# execute the quantum circuit\n", | |
"backend = BasicAer.get_backend('qasm_simulator') # the device to run on\n", | |
"result = execute(q, backend, shots=1024).result()\n", | |
"counts = result.get_counts(q)\n", | |
"\n", | |
"# plot visual\n", | |
"plot_histogram(counts)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 5.6 - 3" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 19, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"True\n" | |
] | |
} | |
], | |
"source": [ | |
"i = 0\n", | |
"a = set()\n", | |
"b = set(['01', '10', '00', '11', '00', '10', '00', '01', '00', '11', '11', '11', '11', '11', '11'])\n", | |
"while a != b and i < 10000:\n", | |
" q = QuantumCircuit(2)\n", | |
" q.h([0,1])\n", | |
" q.measure_all()\n", | |
"\n", | |
" # result = execute(q, StatevectorSimulator(), shots=15, memory=True).result()\n", | |
" result = execute(q, QasmSimulator(), shots=15, memory=True).result()\n", | |
" \n", | |
" a = set(result.get_memory(q))\n", | |
" i += 1\n", | |
"\n", | |
"print(i != 10000)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 5.7 - 4" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"https://qiskit.org/documentation/stubs/qiskit.quantum_info.Clifford.html" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 6.1 - 5" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"1, 3, 5 (1 decays to 0)\n", | |
"<br>\n", | |
"3, 5 (decay times are not equal)\n", | |
"<br>\n", | |
"5 (q0 decays faster than q1)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 6.2 - 4" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 20, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"# T1 = [100, 30]\n", | |
"# T1 = [50, 3]\n", | |
"# T1 = [3,10]\n", | |
"T1 = [30,100]\n", | |
"# T1 = [1,1000]\n", | |
"\n", | |
"T2 = [1,1] # arbitrarily chosen T2 times\n", | |
"time_measure = 10 # arbitrarily chosen measurement time\n", | |
"noise_thermal = NoiseModel()\n", | |
"for j in range(2):\n", | |
" noise_thermal.add_quantum_error(thermal_relaxation_error(T1[j], T2[j], time_measure) , \"measure\", [j])\n", | |
"\n", | |
"# Generate the calibration circuits\n", | |
"q = QuantumRegister(2)\n", | |
"meas_calibs, state_labels = complete_meas_cal(qubit_list=[0, 1], qr=q, circlabel='mcal')\n", | |
"\n", | |
"# Execute the calibration circuits\n", | |
"backend = qiskit.Aer.get_backend('qasm_simulator')\n", | |
"job = qiskit.execute(meas_calibs, backend=backend, shots=1000, noise_model=noise_thermal)\n", | |
"cal_results = job.result()\n", | |
"\n", | |
"# Calculate the calibration matrix with the noise model\n", | |
"meas_fitter = CompleteMeasFitter(cal_results, state_labels, qubit_list=[0, 1], circlabel='mcal')\n", | |
"\n", | |
"# Plot the calibration matrix\n", | |
"meas_fitter.plot_calibration()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 6.3 - 4 ~" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 21, | |
"metadata": { | |
"scrolled": false | |
}, | |
"outputs": [ | |
{ | |
"name": "stderr", | |
"output_type": "stream", | |
"text": [ | |
"100%|██████████| 4/4 [00:00<00:00, 4.06it/s]" | |
] | |
}, | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"[4, 4, 1, 4, 4, 4, 4, 4, 4, 4]\n" | |
] | |
}, | |
{ | |
"name": "stderr", | |
"output_type": "stream", | |
"text": [ | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"all_qubit_lists = [[[0,2,4],[0,2,3,4],[0,1,2,3,4]],\n", | |
" [[0,1,2],[0,1,2,3],[0,1,2,3,4]],\n", | |
" [[0,2,4],[0,1,2,4],[0,1,2,3,4]],\n", | |
" [[2,3,4],[1,2,3,4],[0,1,2,3,4]]]\n", | |
"\n", | |
"num_runs = 1\n", | |
"ntrials = 1\n", | |
"\n", | |
"maxes = []\n", | |
"pbar = tqdm(total=num_runs * len(all_qubit_lists) * ntrials)\n", | |
"for i in range(num_runs):\n", | |
" avgs = []\n", | |
" for ans, qubit_lists in enumerate(all_qubit_lists):\n", | |
" #Qubit list\n", | |
"\n", | |
" qv_circs, qv_circs_nomeas = qv_circuits(qubit_lists, ntrials)\n", | |
"\n", | |
" qv_circs_nomeas[0] = qiskit.compiler.transpile(qv_circs_nomeas[0], basis_gates=['u1','u2','u3','cx'])\n", | |
"\n", | |
" backend = qiskit.Aer.get_backend('statevector_simulator')\n", | |
" ideal_results = []\n", | |
" for trial in range(ntrials):\n", | |
" ideal_results.append(qiskit.execute(qv_circs_nomeas[trial], backend=backend, optimization_level=0).result())\n", | |
" pbar.update(1)\n", | |
"\n", | |
" qv_fitter = QVFitter(qubit_lists=qubit_lists)\n", | |
" qv_fitter.add_statevectors(ideal_results)\n", | |
"\n", | |
" n = 5\n", | |
" T1 = [ j*20 for j in range(1,n+1) ]\n", | |
" T2 = [ 2*t1 for t1 in T1 ] # T2 times as large as they can be\n", | |
" time_measure = 10 # arbitrarily chosen measurement time\n", | |
" noise_thermal = NoiseModel()\n", | |
" for j in range(n):\n", | |
" noise_thermal.add_quantum_error( thermal_relaxation_error(T1[j], T2[j], time_measure) , \"measure\", [j])\n", | |
"\n", | |
" backend = qiskit.Aer.get_backend('qasm_simulator')\n", | |
" shots = 1024\n", | |
" exp_results = []\n", | |
" for trial in range(ntrials):\n", | |
" exp_results.append(qiskit.execute(qv_circs[trial], backend=backend, noise_model=noise_thermal, backend_options={'max_parallel_experiments': 0}).result())\n", | |
"\n", | |
" qv_fitter.add_data(exp_results)\n", | |
"\n", | |
" avg = 0\n", | |
" qv_success_list = qv_fitter.qv_success()\n", | |
" qv_list = qv_fitter.ydata\n", | |
" for qidx, qubit_list in enumerate(qubit_lists):\n", | |
" if qv_list[0][qidx]>2/3:\n", | |
" avg += qv_success_list[qidx][1]/3\n", | |
"\n", | |
" avgs.append(avg)\n", | |
" maxes.append(avgs.index(max(avgs))+1)\n", | |
"pbar.close()\n", | |
"\n", | |
"maxes = [4, 4, 1, 4, 4, 4, 4, 4, 4, 4] # from previous run\n", | |
"print(maxes)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 7.1 - 2" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 22, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"\\ This file has been generated by DOcplex\n", | |
"\\ ENCODING=ISO-8859-1\n", | |
"\\Problem name: CPLEX\n", | |
"\n", | |
"Minimize\n", | |
" obj: x - 2 y + [ 4 x*y ]/2 + 3\n", | |
"Subject To\n", | |
"\n", | |
"Bounds\n", | |
" 0 <= x <= 1\n", | |
" 0 <= y <= 1\n", | |
"\n", | |
"Binaries\n", | |
" x y\n", | |
"End\n", | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"mod = QuadraticProgram()\n", | |
"mod.binary_var('x')\n", | |
"mod.binary_var('y')\n", | |
"mod.minimize(constant = 3, linear=[1,-2], quadratic={('x', 'y'): 2})\n", | |
"\n", | |
"print(mod.export_as_lp_string())\n", | |
"# x - 2 y + 2 x^2 + 2 y^2 + 3 != x - 2 y + [ 4 x*y ]/2 + 3" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 7.2 - 4 ~" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"https://qiskit.org/documentation/tutorials/optimization/3_minimum_eigen_optimizer.html" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# 7.3 - 4" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"https://qiskit.org/documentation/tutorials/optimization/2_converters_for_quadratic_programs.html" | |
] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Python 3", | |
"language": "python", | |
"name": "python3" | |
}, | |
"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.7.7" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 4 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Exam Answer Repository