{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Dynamic Bernstein-Vazirani using mid-circuit reset and measurement\n", "\n", "```{post} 2021-10-27\n", ":tags: Dynamic\n", ":category: Hardware\n", "```" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The ability to do mid-circuit reset and measurement unlocks a variety of tools for executing quantum circuits. A brief discussion is given in this [IBM Research blog post](https://www.ibm.com/blogs/research/2021/02/quantum-mid-circuit-measurement/). On particular possibility is the ability to reuse qubits, and in doing so reduce the hardware requirements of some algorithms. The Bernstein-Vazirani (BV) algorithm is one such example. In particular, when using phase-kickback, BV usually requires a high degree of qubit connectivity to impliment. This has been used by trapped-ion hardware vendors to show that their hardware gives better fidelity on these problems, e.g. see ([https://arxiv.org/abs/2102.00371](https://arxiv.org/abs/2102.00371) and [https://www.nature.com/articles/s41467-019-13534-2](https://www.nature.com/articles/s41467-019-13534-2)). However, with reset and measurement, BV requires only two qubits, making connectivity differences mute. We showed this in a reply Tweet: [https://twitter.com/nonhermitian/status/1362348935440986113](https://twitter.com/nonhermitian/status/1362348935440986113), but did not explain how we got that figure. So here is how I did it." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Frontmatter" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "from qiskit import *\n", "from qiskit.quantum_info import hellinger_fidelity\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "\n", "sns.set_style('darkgrid')" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "IBMQ.load_account()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Select the target backend\n", "\n", "Here we select the backend and extract its two-qubit gate coupling map. This is not the same backend used in the original figure as, at the time or writing, that one is offline. It is however the same processor family and revision." ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [], "source": [ "provider = IBMQ.get_provider(project='internal-test')\n", "backend = provider.backend.ibm_cairo" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [], "source": [ "cmap = backend.configuration().coupling_map" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Create circuits\n", "\n", "In BV each qubit corresponding to a '1' bit interacts with only the target qubit. Moreover, since the state of the target qubit is an eigenstate of the `x` operator, the qubits remain unentangled, and the whole algorithm can be written using only two qubits provided that those qubits can be measured and reset mid-circuit. The function below will create the circuit that does this for a given input bitstring:" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "def bv_circ(bitstring):\n", " \"\"\"Create a Bernstein-Vazirani circuit from a given bitstring.\n", " \n", " Parameters:\n", " bitstring (str): A bitstring.\n", " \n", " Returns:\n", " QuantumCircuit: Output circuit.\n", " \"\"\"\n", " qc = QuantumCircuit(2, len(bitstring))\n", " qc.x(1)\n", " qc.h(1)\n", " for idx, bit in enumerate(bitstring[::-1]):\n", " qc.h(0)\n", " if int(bit):\n", " qc.cx(0, 1)\n", " qc.h(0)\n", " qc.measure(0,idx)\n", " qc.barrier([0,1])\n", " qc.reset(0)\n", " # reset control\n", " qc.reset(1)\n", " qc.x(1)\n", " qc.h(1)\n", " \n", " return qc" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Finding the best two-qubits to use\n", "\n", "Let us look at an example circuit for a length 10 bitstring of all ones:" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [], "source": [ "bitstring = '1'*10\n", "\n", "qc = bv_circ(bitstring)" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "image/png": "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2f/CF9KM1c7cW7BemjBfevc76cx5oyssWaAfIzExMUpNTdVrr72m8PBwzZ49Wz169FBkZKSuueYa9ezZU9ddd50qV66s9u3b64MPPtCFCxf02GOPaceOHfriiy8UHh6uyZMna+TIkUb/OqZjxtwD4H8B2/yaPn26pk2bprlz5+rpp59WcnKynn/+eV177bXKyckpaH4dOnRIPXv2VIUKFdS6dWutXbvW4MrNJS9P+jBF2lDMlCq5edLCDc5PBeG5jh07auHChapWrZoWLVqkli1b6umnn9bWrVuLrJudna3Zs2crOTlZ99xzj7Kzs9WoUSPl5ubqjjvuoPFVRqNHj1bfvn3VsWNHxcbGSpI+/fTTgsfnzJmjPn36GFUeDDQrzXmG6+XNfYekH3dJ/1ppSFmmFxcXp9TUVMXHx2vdunVq3769HnroIa1evVqOy57snJwcLV26VHfeeaduuOEGHT9+XPXr15ckPf300zS+yojcQ0mWbXM2+4tr7m896GyABWrjP5BFRUVpyZIl6tKli/bt26cePXqof//+WrJkiXJycgqt63A4tGbNGg0dOlRt27bVL7/8opo1a6pcuXL65z//SeOrjMg9AO4I2ObXa6+9pl69eqlbt26Fljdu3FhhYWFq1aqVJGnYsGFq1qyZjh07puHDh2vAgAHKzeVfbndtOSj9crj0dZZsCuxPAwNRVFSUZsyYoYoVK+qTTz7RzTffrH379rm1befOnVW+fHk5HA6FhIQE5FmOqampRpfglqFDh2r8+PHavXu3srKy9Mwzz+jmm29WXFycJGn9+vXKyclR27ZtDa4U/nQkS1q5o/R11u6V9h3zTz1WYbfbNX36dNWpU0fLli1Tly5dtH79ere2TUhIUJUqVQp+JvfKjtxDcc7nSPPWlb7OvuNSemBcbWcqf//739W2bVvt2LFDnTp10pIlS9zarn79+qpbt27Bzy1btlRISIivyiwTcg+AlQRk82v//v3auHGj7rzzziKP7d27VwkJCQoPD9epU6c0b948vfDCC4qIiNDQoUOVm5urVatWGVC1Of24U7K5WCc3T1qzxx/VWMeECRNUt25d/fjjjxoyZIjy8vLc2u7SOb6effZZSdJf/vIXJSQk+LJcj23atMnoElyKiopSXFyc1qxZU7Bs165dyszMVGJiYsGyuXPncip8kPlxl+t1bHLm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\n", "text/plain": [ "
" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "qc.draw('mpl')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "One can see that one qubit `q0` there are repeated measurement+reset operations that take place. Every reset is itself a measurement followed by a conditional `x`-gate. Therefore we are doing two measurements back-to-back each time we see that combination of operations. Doing measurements like this can lead to issues. Namely, for example, if the measurement cavity ring-down time is not short enough, the cavity could be non-empty the next time one performs a measurement and things can get messy. It turns out to actually be a bit more complicated than that, so at the end of the day, we need to figure out which qubits are the best to us. Here we will do that by performing a 10-digit BV experiment on every edge of the systems two-qubit coupling map. We will take whichever one gives the best result as the edge to use for the actual experiment." ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [], "source": [ "circs = []\n", "for edge in cmap:\n", " trans_qc = transpile(qc, backend, initial_layout=edge)\n", " circs.append(trans_qc)" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [], "source": [ "job = execute(circs, backend, shots=8192)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we compute the fidelity of the output with the known answer to see which gets the closest and sort the results from best to worse in terms of the fidelity." ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [], "source": [ "fids = [hellinger_fidelity(counts, {bitstring: 1}) for counts in job.result().get_counts()]\n", "sorted_fidelities, sorted_edges = zip(*sorted(zip(fids, cmap), reverse=True))" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[12, 10] 0.787109375\n", "[15, 12] 0.7611083984375\n", "[21, 18] 0.7478027343749999\n", "[5, 8] 0.7426757812499999\n", "[10, 12] 0.7342529296875\n", "[14, 11] 0.7335205078125001\n", "[18, 17] 0.732177734375\n", "[11, 14] 0.7274169921875001\n", "[11, 8] 0.7211914062500001\n", "[15, 18] 0.7196044921875\n", "[17, 18] 0.7133789062499999\n", "[12, 13] 0.7061767578125\n", "[8, 5] 0.6993408203125001\n", "[2, 3] 0.6868896484375001\n", "[8, 11] 0.6839599609375001\n", "[13, 14] 0.6837158203125\n", "[14, 13] 0.683349609375\n", "[9, 8] 0.6793212890625\n", "[23, 24] 0.6715087890625\n", "[24, 25] 0.6627197265625001\n", "[5, 3] 0.6622314453125001\n", "[22, 19] 0.6545410156250001\n", "[13, 12] 0.6502685546875\n", "[4, 1] 0.650146484375\n", "[19, 22] 0.6381835937500001\n", "[10, 7] 0.6345214843750001\n", "[20, 19] 0.6341552734375\n", "[19, 20] 0.6315917968750002\n", "[7, 10] 0.6259765625000001\n", "[8, 9] 0.6256103515625001\n", "[14, 16] 0.6195068359375\n", "[1, 4] 0.608154296875\n", "[0, 1] 0.6065673828125001\n", "[22, 25] 0.6042480468750002\n", "[7, 4] 0.5914306640625001\n", "[2, 1] 0.5823974609375001\n", "[3, 5] 0.579833984375\n", "[1, 0] 0.578369140625\n", "[3, 2] 0.56298828125\n", "[25, 24] 0.5587158203125001\n", "[26, 25] 0.5572509765624999\n", "[25, 22] 0.5478515625000001\n", "[7, 6] 0.5463867187500001\n", "[16, 14] 0.540771484375\n", "[18, 21] 0.5361328124999999\n", "[1, 2] 0.5299072265625\n", "[25, 26] 0.5206298828125\n", "[24, 23] 0.5153808593750001\n", "[21, 23] 0.5070800781250001\n", "[16, 19] 0.48986816406250006\n", "[23, 21] 0.46118164062499994\n", "[19, 16] 0.38427734375000006\n", "[12, 15] 0.35766601562500006\n", "[18, 15] 0.34863281250000017\n", "[4, 7] 0.20458984375000003\n", "[6, 7] 0.14062500000000008\n" ] } ], "source": [ "for idx, edge in enumerate(sorted_edges):\n", " print(edge, sorted_fidelities[idx])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can see from above that there is a very wide range of fidelities that come out. This just goes to show that, when doing this on today's hardware, the choice of qubits matters quite a bit. Having found the optimal edge on which to run, we now use that to do extended BV circuit runs." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Run actual experiment\n", "\n", "Here we choose a set of bitstring lengths to run and then execute this on the target backend edge that we identified earlier as the best candidate. For fun, we will also run on the worst edge to see the difference." ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [], "source": [ "bit_lengths = [1, 5, 10, 15, 20, 25, 30]\n", "\n", "circs = [bv_circ('1'*kk) for kk in bit_lengths]" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [], "source": [ "trans_circs_best = transpile(circs, backend, initial_layout=sorted_edges[0])\n", "trans_circs_worst = transpile(circs, backend, initial_layout=sorted_edges[-1])" ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [], "source": [ "job2 = execute(trans_circs_best, backend, shots=8192)\n", "job3 = execute(trans_circs_worst, backend, shots=8192)" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [], "source": [ "fids_best = []\n", "fids_worst = []\n", "for idx, counts in enumerate(job2.result().get_counts()):\n", " fids_best.append(hellinger_fidelity(counts, {'1'*bit_lengths[idx]: 1}))\n", " \n", "for idx, counts in enumerate(job3.result().get_counts()):\n", " fids_worst.append(hellinger_fidelity(counts, {'1'*bit_lengths[idx]: 1}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plot results" ] }, { "cell_type": "code", "execution_count": 89, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAgIAAAGOCAYAAADl32vyAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAAB8TklEQVR4nO3dd3xT1fvA8U9296ZlFmiBMsosZe8NshVRFERERHHjQPkp4ABEnMgQZAiIgnxVBEFQhqDILkt2gTILHXSPpEl+fxQCpYU2bZp0PO/Xqy/am5t7nzzcNk/OOfcchdlsNiOEEEKIcknp6ACEEEII4ThSCAghhBDlmBQCQgghRDkmhYAQQghRjkkhIIQQQpRjUggIUcrIjT5CCFuSQkCIPAwfPpyQkJA8v9q2bQvATz/9REhICPHx8fc8zoQJE+jbt2+Bz3vp0iVCQkL4/fffAZg1axZNmza1PP7nn38yadKkQr6qgjt+/Dj9+vUjNDSUsWPHFvh5Xbp04b333ivGyGzj7jwXxt3XRWhoKF26dOHjjz8mMzMTgH379hESEsKPP/54z+M8//zz9OjRo9BxCFFUakcHIERJ1axZM958881c2zUaDQCdOnVi5cqVeHh4FFsMQ4YMoWPHjpafv/32W1xcXIrtfLfMmTOHGzduMG/ePAICAor9fPbm7+/PypUrqVGjRpGOM3z4cEuhl5mZycmTJ/n8889JTk7mvffeIywsjGrVqrFhwwaGDBmS6/nJycn89ddfPPvss0WKQ4iikEJAiHvw8PCgSZMm93zcx8cHHx+fYo2hYsWKVKxYsVjPkZeEhATq169Pu3bt7H5ue9Bqtff9vy2oSpUq5ThOy5YtSUpKYt68ebzzzjtoNBoGDBjA3LlziY+Pz3W9/P777xgMBgYOHFjkWIQoLOkaEKKQ7u4ayMrKYubMmbRt25ZmzZoxbdo0jEZjructXbqUHj16EBoaygMPPMD69evveY47uwaGDx/Onj172LZtGyEhIRw9epTQ0FAWLlyY4zkHDhwgJCSEkydP5nlMg8HA/Pnz6dmzJw0bNqRfv36sXbvW8nhISAh79uzhr7/+IiQkhN27d+d5nJiYGF588UXCwsJo3749v/zyS47HBw8ezDPPPJNjW2ZmJmFhYSxfvpzdu3cTEhLCvn37eOSRR2jYsCFdu3bN1Yx++PBhnn76aZo3b05oaCg9e/bkhx9+sDz+008/0bJlS7Zv306/fv1o2LAhDz30EJGRkfzxxx/07NmTpk2b8swzzxAXFwfk3TWwe/duHnvsMZo2bUqHDh2YPn26pYnfGu7u7jl+HjhwICaTiY0bN+bad+3atbRq1YrKlStbfR4hbEUKASHuwWw2k5WVlevrXqZOncqyZct4+umn+fTTTzlx4gQbNmzIsc9XX33FRx99RJ8+fZg3bx5t2rTh1VdfzbVfXiZNmkT9+vVp1qwZK1eupE6dOnTs2JHffvstx35r166lXr16hISE5HmcN998kzlz5vDwww8zd+5cmjZtymuvvWZ5A165cmWO8zRo0CDXMYxGI0899RRHjx7l/fffZ8KECXz55Zdcu3bNss+AAQP4559/uHHjhmXbli1byMjIoE+fPpZtr776Kj179mT+/PnUr1+f//u//+PMmTMAXLlyhREjRuDi4sIXX3zB7NmzqVmzJpMmTeLEiROWY6SmpjJ58mTGjBnDZ599RnR0tOX7V199lQkTJrBz506++OKLPHNy+PBhRo0ahbu7O5999hkvvPACP/74Ix9++OF9/09MJpPlusjIyODQoUMsW7aMhx56yNKFVK1aNcLCwnIVfNeuXWPv3r3SGiAcTroGhLiHv/76K883wX///TdXE29CQgI//PADL7/8MiNHjgSgdevWdO7c2bJPUlIS8+fPZ/To0bz88ssAtGvXjtTUVD755BN69+5933hq1aqFm5sbLi4uluboQYMGMW7cOM6ePUtQUBBZWVls2LAh1yfxW06ePMlvv/3GlClTeOSRRywxpKSk8OmnnzJ48GCaNGmS6zx327ZtGydPnmTlypWWfWrUqMHgwYMt+/Tr14+PP/6YjRs3Ws61du1a2rdvnyN/w4cP58knnwSgQYMG/PHHH2zfvp1atWpx+vRpmjRpwsyZMy1vrI0bN6Zly5bs27ePunXrAtmtHK+99pqlwDh06BDz589n+fLlhIeHA9kD9w4dOpTn6/n666+pWrUqs2fPRqVSAdmtFz///DNGo9Gy7W4zZ85k5syZObYFBgby/PPP59g2cOBA3n33Xa5fv46/vz8A69atw9nZmZ49e+Z5bCHsRVoEhLiHsLAwVq9enesrr8GBhw4dwmg00qFDB8s2nU6XY6DfwYMHyczMpFOnTjlaGDp06MDFixe5ePGi1TF2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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "label_best = \"{} {}\".format(backend.name(), sorted_edges[0])\n", "label_worst = \"{} {}\".format(backend.name(), sorted_edges[-1])\n", "\n", "fig, ax = plt.subplots(figsize=(8,6))\n", "ax.plot(bit_lengths, fids_best, 'H-', label=label_best, lw=2, ms=8)\n", "ax.plot(bit_lengths, fids_worst, 's-', label=label_worst, lw=2, ms=8)\n", "ax.set_xlabel('Bitstring length', fontsize=16)\n", "ax.set_ylabel('Fidelity', fontsize=16)\n", "ax.set_xlim([1, 30])\n", "ax.set_ylim([0, 1])\n", "ax.set_title('Fidelity of dynamic BV', fontsize=16)\n", "ax.legend(fontsize=14)\n", "ax.tick_params(axis='both', labelsize=14);" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.9.7" } }, "nbformat": 4, "nbformat_minor": 4 }