{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Local backends: ['local_clifford_simulator', 'local_statevector_simulator', 'local_unitary_simulator', 'local_qasm_simulator']\n", "simulation: COMPLETED\n", "{'00': 525, '11': 499}\n" ] } ], "source": [ "# Import the QISKit SDK\n", "from qiskit import QuantumCircuit, ClassicalRegister, QuantumRegister\n", "from qiskit import available_backends, execute\n", "\n", "# Create a Quantum Register with 2 qubits.\n", "q = QuantumRegister(2)\n", "# Create a Classical Register with 2 bits.\n", "c = ClassicalRegister(2)\n", "# Create a Quantum Circuit\n", "qc = QuantumCircuit(q, c)\n", "\n", "# Add a H gate on qubit 0, putting this qubit in superposition.\n", "qc.h(q[0])\n", "# Add a CX (CNOT) gate on control qubit 0 and target qubit 1, putting\n", "# the qubits in a Bell state.\n", "qc.cx(q[0], q[1])\n", "# Add a Measure gate to see the state.\n", "qc.measure(q, c)\n", "\n", "# See a list of available local simulators\n", "print(\"Local backends: \", available_backends({'local': True}))\n", "\n", "# Compile and run the Quantum circuit on a simulator backend\n", "job_sim = execute(qc, \"local_qasm_simulator\")\n", "sim_result = job_sim.result()\n", "\n", "# Show the results\n", "print(\"simulation: \", sim_result)\n", "print(sim_result.get_counts(qc))" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAEFCAYAAAD5bXAgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAGe9JREFUeJzt3XuY1WW99/H3l0EqSS0FCeUkgsahiXIketoqbTWnLHi22RNqpWJipY+7g7ntaUumu93BrWkX+KSRx61iech5EuUqze1hSwIeMjQUEWXE7WmjJpYw8n3+WItpGH44s3BmrYF5v66Ly9/v/t1rre/Ca+bD73Dfd2QmkiS116fWBUiSeiYDQpJUyICQJBUyICRJhQwISVIhA0KSVMiAkCQVMiAkSYUMCElSIQNCklSob60LeCsGDBiQI0aMqHUZkrRVWbx48QuZObCjflULiIhoBM4H6oA5mfmDgj7/CzgDSODBzDzyzd5zxIgRLFq0qBuqlaRtV0Q82Zl+VQmIiKgDZgMHA83AwohoysyH2/QZDXwL+Ehmro6IXatRmySpWLXuQUwElmXm8sxcC8wFprbrczwwOzNXA2Tmc1WqTZJUoFoBsTuwss1+c7mtrb2AvSLi7ohYUL4kJUmqkWrdg4iCtvYLUfQFRgOTgSHAnRExPjNf2uiNImYAMwCGDRvW9ZVKkoDqnUE0A0Pb7A8BVhX0uTEz12XmE8BSSoGxkcy8KDMbMrNh4MAOb8JLkrZQtQJiITA6IvaIiH7ANKCpXZ9fAR8FiIgBlC45La9SfZKkdqoSEJnZApwEzAceAX6RmUsi4syImFLuNh94MSIeBn4HfDMzX6xGfZKkTcXWvCZ1Q0NDOg5CkioTEYszs6Gjfk61IUkqZEBIkgoZEJKkQgaEJKmQASFJKmRASJIKGRCSpEIGxFtwyy23sPfeezNq1Ch+8INNlrfg0ksvZeDAgUyYMIEJEyYwZ86c1mONjY28613v4pOf/ORGrznqqKPYe++9GT9+PNOnT2fdunWtx26//XYmTJjAuHHjOOCAA1rbzz//fMaPH8+4ceM477zzWtvPOOMMdt9999bPnzdvXld+fUnbuszcav/ss88+WSstLS05cuTIfPzxx/P111/P+vr6XLJkyUZ9LrnkkjzxxBMLX//b3/42m5qa8tBDD92o/aabbsr169fn+vXrc9q0aXnBBRdkZubq1atzzJgx+eSTT2Zm5rPPPpuZmQ899FCOGzcu16xZk+vWrcsDDzwwH3300czM/M53vpNnn312l35vSVs/YFF24nesZxBb6N5772XUqFGMHDmSfv36MW3aNG688cZOv/7AAw9khx122KT9E5/4BBFBRDBx4kSam5sBuOqqqzjssMNaZ7DdddfSekqPPPIIkyZNYvvtt6dv374ccMAB3HDDDV3wDSX1dgbEFnr66acZOvRvE9QOGTKEp59+epN+1113HfX19Rx++OGsXLlyk+Obs27dOq644goaG0vLYjz66KOsXr2ayZMns88++3D55ZcDMH78eO644w5efPFFXnvtNebNm7fR58yaNYv6+nqmT5/O6tWrt/TrSuqFDIgtlAVzWEVsvOzFpz71KVasWMEf/vAHDjroII4++uhOv/9XvvIV9t9/f/bbbz8AWlpaWLx4MTfddBPz58/nrLPO4tFHH2XMmDH80z/9EwcffDCNjY28//3vp2/f0jIfX/7yl3n88cd54IEHGDx4MN/4xjfewjeW1NsYEFtoyJAhG/1Lvbm5md12222jPrvssgtve9vbADj++ONZvHhxp977u9/9Ls8//zznnnvuRp/X2NhI//79GTBgAPvvvz8PPvggAMcddxz33Xcfd9xxBzvvvDOjR5eW0Rg0aBB1dXX06dOH448/nnvvvfctfWdJvYsBsYX23XdfHnvsMZ544gnWrl3L3LlzmTJlykZ9nnnmmdbtpqYmxowZ0+H7zpkzh/nz53P11VfTp8/f/vdMnTqVO++8k5aWFl577TV+//vft77fc8+Vlu9+6qmnuP766zniiCM2+fwbbriB8ePHb/kXltTrVGvJ0W1O3759mTVrFocccghvvPEG06dPZ9y4ccycOZOGhgamTJnCT37yE5qamujbty8777wzl156aevr99tvP/70pz/x6quvMmTIEH7+859zyCGH8KUvfYnhw4fz4Q9/GIDDDjuMmTNnMmbMGBobG6mvr6dPnz588YtfbP2F/+lPf5oXX3yR7bbbjtmzZ/Pud78bgFNPPZUHHniAiGDEiBFceOGFVf97krT1cj0ISeplXA9CUq/Q0YDVDa699loigg3/qFy3bh1HH30073vf+xgzZgzf//73AVi6dGnr4NIJEyaw4447tg5APf3006mvr2fChAl87GMfY9WqVUDpoZWTTz6ZUaNGUV9fz3333df6uXV1da3v1f4ydI/XmcESPfVPLQfKSaq9zgxYzcx85ZVXcr/99ssPfehDuXDhwszMvPLKK/Ozn/1sZmauWbMmhw8fnk888cQm7z9o0KBcsWJFZma+/PLLrcfOP//8POGEEzKzNMC1sbEx169fn/fcc09OnDixtV///v279Dt3BRwoJ2lb19kBq6effjqnnnoqb3/721vbIoI1a9bQ0tLCX/7yF/r168eOO+640etuvfVW9txzT4YPHw6w0fE1a9a0Ptp+44038oUvfIGIYNKkSbz00ksbPSSytTIgJG21OjNg9f7772flypWbzHt2+OGH079/fwYPHsywYcM45ZRT2HnnnTfqM3fu3NanAjf49re/zdChQ7nyyis588wzO6zjr3/9Kw0NDUyaNIlf/epXb/1LV5EBIWmrlR0MWF2/fj1f+9rXOOecczbpd++991JXV8eqVat44oknOOecc1i+fHnr8bVr19LU1MRnPvOZjV73ve99j5UrV3LUUUcxa9asDut46qmnWLRoEVdddRVf/epXefzxx7fsy9aAASFpq9XRgNU///nP/PGPf2Ty5MmMGDGCBQsWMGXKlNZf2I2NjWy33XbsuuuufOQjH6HtU5E333wzH/zgBxk0aFDhZx955JFcd911Hdax4b8jR45k8uTJ3H///V33F9DNDAhJW62OBqzutNNOvPDCC6xYsYIVK1YwadIkmpqaaGhoYNiwYdx2221kJmvWrGHBggW8973vbX3t1Vdfvcnlpccee6x1u6mpqbX/lClTuPzyy8lMFixYwE477cTgwYNZvXo1r7/+OgAvvPACd999N2PHju3Ov5Iu5UA5SVutzgxY3ZwTTzyRY489lvHjx5OZHHvssdTX1wPw2muv8Zvf/GaTwaWnnXYaS5cupU+fPgwfPpyf/vSnQGkW5nnz5jFq1Ci23357LrnkEqA02/IJJ5xAnz59WL9+PaeddtpWFRAOlJOkXsaBcpKkt6Rql5giohE4H6gD5mTmD9odPwY4G9jwjNqszJxDN3n/v03rrrfe5j14ytxalyCpCqoSEBFRB8wGDgaagYUR0ZSZD7frek1mnlSNmiRJb65al5gmAssyc3lmrgXmAlOr9NmSpC1QrYDYHWi73mZzua29T0fEHyLi2ogY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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# useful additional packages\n", "from qiskit.tools.visualization import plot_histogram\n", "\n", "# Plot result\n", "plot_histogram(sim_result.get_counts(qc))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.6.5" } }, "nbformat": 4, "nbformat_minor": 2 }