Skip to content

Instantly share code, notes, and snippets.

@goropikari
Created June 21, 2018 12:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save goropikari/edf4a2674d1cb98c65fcf83abf6e3cae to your computer and use it in GitHub Desktop.
Save goropikari/edf4a2674d1cb98c65fcf83abf6e3cae to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Compile\n",
"\n",
"This software includes the work that is distributed in the Apache License 2.0 \n",
"https://github.com/QISKit/qiskit-tutorial/blob/master/hello_world/quantum_world.ipynb"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"3.6.5 (default, May 11 2018, 04:00:52) \n",
"[GCC 8.1.0]\n",
"qiskit version: 0.5.4\n"
]
}
],
"source": [
"import sys, qiskit\n",
"print(sys.version)\n",
"print(\"qiskit version:\", qiskit.__version__)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import getpass, time\n",
"import qiskit\n",
"from qiskit import ClassicalRegister, QuantumRegister, load_qasm_string\n",
"from qiskit import QuantumCircuit, available_backends, execute, register, get_backend\n",
"\n",
"# import basic plot tools\n",
"from qiskit.tools.visualization import plot_histogram, circuit_drawer"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Please input your token and hit enter: ········\n",
"\n",
"You have access to great power!\n",
"['ibmqx2', 'ibmqx4', 'ibmqx5']\n"
]
}
],
"source": [
"APItoken = getpass.getpass('Please input your token and hit enter: ')\n",
"qx_config = {\n",
" \"APItoken\": APItoken,\n",
" \"url\":\"https://quantumexperience.ng.bluemix.net/api\"}\n",
"\n",
"try:\n",
" register(qx_config['APItoken'], qx_config['url'])\n",
"\n",
" print('\\nYou have access to great power!')\n",
" print(available_backends({'local': False, 'simulator': False}))\n",
"except: \n",
" print('Something went wrong.\\nDid you enter a correct token?')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Circuit identities\n",
"## CNOT"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=372x202 at 0x7F2A18557550>"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"q = QuantumRegister(2)\n",
"c = ClassicalRegister(2)\n",
"qc = QuantumCircuit(q,c)\n",
"\n",
"qc.cx(q[0], q[1])\n",
"\n",
"qc.measure(q, c)\n",
"circuit_drawer(qc)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"OPENQASM 2.0;\n",
"include \"qelib1.inc\";\n",
"qreg q[2];\n",
"creg c0[2];\n",
"cx q[0],q[1];\n",
"measure q[1] -> c0[1];\n",
"measure q[0] -> c0[0];\n",
"\n"
]
},
{
"data": {
"image/png": "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v39fQ0Pjyy+/lODsfHPE27dvYb/Grl276HS6BM1ygb9jQUGBWEex2eyoqCgSiTRt2rTnz58P3YVyhIwQAQDu7u7x8fHYytFMJpNCocTFxRUUFMBH3Obm5nhNypQbY2Pj4uJiOOKjuLj4ypUrlZWVAIAVK1Y8fPhw6GBzLnFxcZaWlopdQd/f33/16tWfffaZZB11jY2NH3/88YcffhgeHo5LPI2NjXZ2dg8fPkxLSzt79qy443B4dXZ2njp1atOmTeI+sCAQCF999dWjR48IBIKdnd1IG+M7Kv09btLb29vNza2kpERbW9vS0hLOnm5sbHz9+jWQZWdETk6OjFoGABgZGd25c+fp06c3b95sb283MTFxcnLCbqz4am1tvXHjBt9Vs+WJSCReunRpyZIlzs7OycnJYnU6FhcXwykPGRkZQ98YILEXL16sXLlycHAwLy/PxsZG+gYBAMeOHevp6ZF40c1Zs2bdv39/zZo1y5cvv3jx4oYNG3CJCuHrn6kZenp6cKFHDLzmBMrWYcmFQqFQKBQRKycmJhIIhC1btsg0JFHo6urm5uZu3LhxzZo1//73vwMCAob9wDOZzNjY2ICAAFNT08zMTFzef8disezt7fX19XNzc7GpfVLCZaWpCRMmZGdne3h4eHl59fT0oKmisiNsDPnjx49hQalzhFji4uJWr16N40R1aYwfP/7WrVu7du06fvz49OnTz58/z7sAJ9TT05OUlDRr1qxdu3atXbu2sLAQr8+ziopKVFRUQUEBXg0C/Faa0tLSysjIePbsGUoQMiXsXX7wOkJVVZX3e/j333+HI5EKCwsBALdv32YwGACARYsWcV2MKJGCgoKKigq87uFxoaam9v3333/++eeBgYFffvnl7t27ly1bZmtrC3sErl69eu/evbKysuzs7P7+/sWLF+fn5y9duhTfGDZt2oRja/iuNKWqqoqtTorIiMAcweFwYIfZ7NmzefuoUlNThy4wn5WVlZWVBQAIDAxU3hwRFxdnaGi4atUqRQfCbebMmdeuXautrb169er169dTUlJgPxEM2MzM7N///rebm9vQZ9Uj1vXr1y0tLeW/eA8iMYE54uXLl93d3UDANI34+HgFrgorCzQaLSUlZefOnVzLZ4wcpqam/v7+/v7+AAA2m93S0mJoaDjs3PCR5siRI999953Shf0+E/h5eN86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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=353x202 at 0x7F2A183B0E48>"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"backend = 'ibmqx2'\n",
"circuit = qiskit.compile(qc, backend=backend)\n",
"print(circuit['circuits'][0]['compiled_circuit_qasm'])\n",
"circuit_drawer(load_qasm_string(circuit['circuits'][0]['compiled_circuit_qasm']))"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"OPENQASM 2.0;\n",
"include \"qelib1.inc\";\n",
"qreg q[2];\n",
"creg c0[2];\n",
"u2(0,3.14159265358979) q[1];\n",
"u2(0,3.14159265358979) q[0];\n",
"cx q[1],q[0];\n",
"u2(0,3.14159265358979) q[0];\n",
"measure q[0] -> c0[0];\n",
"u2(0,3.14159265358979) q[1];\n",
"measure q[1] -> c0[1];\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=902x213 at 0x7F2A1828E908>"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"backend = 'ibmqx4'\n",
"circuit = qiskit.compile(qc, backend=backend)\n",
"print(circuit['circuits'][0]['compiled_circuit_qasm'])\n",
"circuit_drawer(load_qasm_string(circuit['circuits'][0]['compiled_circuit_qasm']))"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Status @ 0 seconds\n",
"{'job_id': None, 'status': <JobStatus.INITIALIZING: 'job is being initialized'>, 'status_msg': 'job is begin initialized please wait a moment'}\n",
"Status @ 10 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 36, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 20 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 36, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 30 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 40 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 50 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 60 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 70 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 80 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 90 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 100 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 30, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 110 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 30, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 120 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 30, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 130 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 30, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 140 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 30, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 150 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 27, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 160 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 27, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 170 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 27, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 180 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 27, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 190 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 24, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 200 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 24, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 210 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 24, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 220 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 24, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 230 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 21, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 240 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 21, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 250 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 21, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 260 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 21, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 270 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 280 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 290 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 300 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 310 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 320 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 15, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 330 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 12, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 340 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 12, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 350 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 9, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 360 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 9, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 370 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 9, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 380 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 9, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 390 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 400 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 410 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 420 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 430 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 440 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 450 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 460 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 470 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 480 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 490 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 500 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 510 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 520 seconds\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'status': <JobStatus.RUNNING: 'job is actively running'>, 'status_msg': None}\n",
"{'job_id': '5b2b8d2c5aa140003c622d96', 'status': <JobStatus.DONE: 'job has successfully run'>, 'status_msg': None}\n"
]
},
{
"data": {
"image/png": "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7guABeXW3Rq1fG6iahERkarpTGoREQmlgBARkVAKCBERCaWAEBGRUAoIEREJpYAQEZFQCggREQmlgBARkVAKCBERCaWAEBGRUAoIEREJpYAQEZFQCggREQmlgBARkVAKCBERCaWAEBGRUAoIEREJpYAQEZFQCggREQmlgJC4ee655+jQoQPt2rXj7rvvrvB8cXExgwcPpl27dpx22mkUFhYC8I9//IOePXvSpUsXevbsyaJFi0pfM2DAALp160ZWVhbXXXcde/bsKfOef/zjHzEzduzYAcDcuXPp2rUr2dnZ5OTksHTp0tK2Y8aMISsri06dOnH99dfj7jXQC4kR777euXMn2dnZpT/NmjVj1KhRAEycOJEuXbqQnZ3NmWeeyfr168ts68MPPyQ1NZXx48eXWb9nzx66d+/Oj3/84xroAUkEBYTExZ49exgxYgTPPvss69evZ/r06RW+SP72t79x7LHHUlBQwA033MDNN98MQLNmzXj66adZu3YtU6ZM4Yorrih9zYwZM1i9ejVvv/02n3zyCU8++WTpc1u2bOGFF16gdevWpev69evH6tWrWbVqFZMmTeKaa64B4JVXXmHZsmWsWbOGt99+m+XLl7N48eKa7JIaUxN93aRJE1atWlX6c+KJJ3LJJZcAcOmll7J27VpWrVrFmDFjuPHGG8ts68Ybb+T888+vUOdf/vIXOnXqVBNdIAmigJC4eOONN2jXrh1t27YlJSWFIUOGMHfu3DJt5s6dy5VXXgnAoEGDWLhwIe5O9+7dadWqFQBZWVl89913FBcXA3DUUUcBUFJSwq5duzCz0ve74YYbuPfee8usS01NLX38zTfflC6bGd9//z27du2iuLiY3bt3c/zxx9dQb9SsmurrfTZu3Mj27ds566yzgH//DqBsnwLMmTOHNm3akJWVVeY9ioqKmD9/fmlA12UHOlr79NNP6dOnD6mpqYwcObLMa/Y3Mv7rX/9Kx44dycrKYsyYMQA89thjZUZ4DRo0YNWqVXz77bcMHDiwtP3YsWPj+tkVEBIXW7duJSMjo/Rxeno6W7durbRNo0aNOProo/n000/LtJk5cyY9evTg8MMPL13Xv39/WrRoQZMmTRg0aBAQfAGmpaXRrVu3CrXMnj2bjh07MnDgQCZNmgTA6aefTp8+fWjZsiUtW7akf//+dfav25rsa4D8/HwGDx5cJggmTJjASSedxJgxY7j//vsB+Prrr7nnnnu47bbbKtQ4atQo7r33Xho0qNtfMQczWmvcuDG33357hV1vUPnI+MUXX2Tu3LmsXr2adevWMXr0aAAuu+yy0tHdtGnTaNOmDdnZ2QCMHj2ad955h7feeotly5bx7LPPxu3z1+3fntQr69at4+abb+ahhx4qs/75559n27ZtFBcXs2jRIr799lvuvPNOxo0bF/o+F198Me+88w5z5szht7/9LQAFBQVs2LCBoqIitm7dyqJFi1iyZEmNf6baqrK+hiAghg4dWmbdiBEjeO+997jnnnv4/e9/D8Dvfvc7brjhBlJTU8u0feaZZ2jRogU9e/asuQ+QIAczWjvyyCM588wzady4cYX3rWxk/OCDDzJ27NjS0G7RokWF106fPp0hQ4YAcMQRR9CnTx8AUlJS6NGjB0VFRXH69AoIiZO0tDS2bNlS+rioqIi0tLRK25SUlPDll1/StGnT0vYXX3wxU6dO5aSTTqrw/o0bN+aiiy5i7ty5vPfee7z//vt069aNzMxMioqK6NGjB//617/KvObss89m8+bN7Nixg9mzZ/PDH/6Q1NRUUlNTOf/883n11Vfj3Q0JUZN9vXr1akpKSir9ch8yZAhz5swB4PXXX2fMmDFkZmZy3333ceedd5KXl8eyZcuYN28emZmZDBkyhEWLFnH55ZfH7fMnUrxGa2HCRsYbN25kyZIlnHbaaZxzzjksX768wuueeOKJCgEO8MUXX/D000/Tr1+/mD7j/iggJC569erFpk2beP/999m1axf5+fnk5uaWaZObm8uUKVMAeOqpp+jbty9mxhdffMHAgQO5++67OeOMM0rbf/3112zbtg0IvuTmz59Px44d6dKlC9u3b6ewsJDCwkLS09N58803OeGEEygoKCidnfTmm29SXFxM06ZNad26NYsXL6akpITdu3ezePHiOruLqSb6ep/p06dX+PLZtGlT6fL8+fNp3749AEuWLCn9HYwaNYpf//rXjBw5krvuuouioiIKCwvJz8+nb9++/P3vf493N9R55UfGEPx3/tlnn/Haa6/xhz/8gZ/85CdlZtu9/vrrHHHEEXTu3LnMe5WUlDB06FCuv/562rZtG7caG8XtneSQ1qhRI/Ly8ujfvz979uxh2LBhZGVlceutt5KTk0Nubi5XX301V1xx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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"backend = 'ibmqx4'\n",
"job_exp = execute(qc, backend=backend, shots=1024, max_credits=3)\n",
"\n",
"lapse = 0\n",
"interval = 10\n",
"while not job_exp.done:\n",
" print('Status @ {} seconds'.format(interval * lapse))\n",
" print(job_exp.status)\n",
" time.sleep(interval)\n",
" lapse += 1\n",
"print(job_exp.status)\n",
"\n",
"plot_histogram(job_exp.result().get_counts(qc))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Toffoli gate"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=514x277 at 0x7F2A18441F60>"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"q = QuantumRegister(3)\n",
"c = ClassicalRegister(3)\n",
"qc = QuantumCircuit(q,c)\n",
"\n",
"qc.x(q[0])\n",
"qc.x(q[1])\n",
"qc.ccx(q[0], q[1], q[2])\n",
"\n",
"qc.measure(q, c)\n",
"circuit_drawer(qc)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Status @ 0 seconds\n",
"{'job_id': None, 'status': <JobStatus.INITIALIZING: 'job is being initialized'>, 'status_msg': 'job is begin initialized please wait a moment'}\n",
"Status @ 10 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 20 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 30 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 40 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 50 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 60 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 70 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 33, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 80 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 30, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 90 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 27, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 100 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 27, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 110 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 27, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 120 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 27, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 130 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 24, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 140 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 21, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 150 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 21, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 160 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 21, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 170 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 21, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 180 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 190 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 200 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 210 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 220 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 18, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 230 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 15, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 240 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 15, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 250 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 15, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 260 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 15, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 270 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 12, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 280 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 12, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 290 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 12, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 300 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 12, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 310 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 9, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 320 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 9, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 330 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 9, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 340 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 9, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 350 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 360 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 370 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 380 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 390 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 6, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 400 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 410 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 420 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 430 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 440 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 450 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 460 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 470 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 480 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 490 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 500 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 510 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 520 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 530 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 540 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 550 seconds\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 560 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 570 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 580 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 590 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 600 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 610 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 620 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 630 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 640 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 650 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 660 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 670 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 680 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 690 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 700 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 710 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 720 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 730 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 740 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 750 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 760 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 770 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 780 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 790 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 800 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 810 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 820 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 830 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 840 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 850 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 860 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 870 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 880 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 890 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 900 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 910 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 920 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 930 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 940 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 950 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 960 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 970 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 980 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 990 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1000 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1010 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1020 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1030 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1040 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1050 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1060 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1070 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1080 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1090 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1100 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Status @ 1110 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1120 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1130 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1140 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1150 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'queue_position': 3, 'status': <JobStatus.QUEUED: 'job is queued'>, 'status_msg': None}\n",
"Status @ 1160 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'status': <JobStatus.RUNNING: 'job is actively running'>, 'status_msg': None}\n",
"Status @ 1170 seconds\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'status': <JobStatus.RUNNING: 'job is actively running'>, 'status_msg': None}\n",
"{'job_id': '5b2b8fb15aa140003c622da8', 'status': <JobStatus.DONE: 'job has successfully run'>, 'status_msg': None}\n"
]
},
{
"data": {
"image/png": "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8OdYxCYiItHF6gqiC7DK3Ve7+14gE7gosoK7v+3u34SeLgSaxSg2ERGJIlYJoinBFOGF8kNlJRkCvFahEYmIyCGVZ7rvmDCzXwPpHDyteOH2YcAwgObNm8cwMhGR40usriDWA6dFPG8WKivCzH4K/AHIKGlKcXd/yt3T3T29YcOGFRKsiIjELkEsAtqYWQszqw4MBLIiK5hZR+BJguSwOUZxiYhICWKSINy9ABgBvE6wrsQMd19hZnebWUao2oNALWCmmeWYWVYJhxMRkRiIWRuEu88B5hQruz3i8U9jFYuIiJROI6klocydO5czzzyT1q1bc//99x+0/d133+Wcc84hKSmJWbNmHbR9+/btNGvWjBEjRoTLfvzjH3PmmWeSlpZGWloamzcHdzgnT55Mw4YNw+UTJ04M7zNlyhTatGlDmzZtmDJlSrh8+vTppKam0r59e3r16sX//ve/o/n2RWKq0vViEinJ/v37GT58OG+88QbNmjWjc+fOZGRkcNZZ3425bN68OZMnT+ahh6KvjHvbbbfRvXv3g8qfffZZ0tPTDyofMGAA48ePL1L21Vdfcdddd7F48WLMjE6dOpGRkUHt2rUZOXIkubm5NGjQgNGjRzN+/HjuvPPOI3vjInGiKwhJGB9//DGtW7emZcuWVK9enYEDBzJ79uwidZKTk2nfvj1Vqhz81c7OzmbTpk1ceOGFRxTH66+/To8ePahXrx5169alR48ezJ07F3fH3dm1axfuzvbt22nSpMkRvZZIPClBSMJYv349p532XW/pZs2asX79Qb2lozpw4AC/+93vSryyGDx4MGlpadxzzz24e7j8hRdeoH379vTv359169YdMo5q1arx+OOPk5qaSpMmTcjNzWXIkCGH81ZFKgUlCDkuTJgwgT59+tCs2cEzuDz77LMsW7aMBQsWsGDBAqZNmwZA3759ycvLY+nSpfTo0YNBgwYd8jX27dvH448/zieffMKGDRto3749Y8aMqZD3IxILShCSMJo2bRo+iwfIz8+nadNDzdjynQ8//JDx48eTnJzMqFGjmDp1Krfeemv4uAC1a9fmsssu4+OPPwagfv361KhRA4ChQ4eSnZ19yDhycnIAaNWqFWbGr371Kz744IMjfNci8aMEIQmjc+fOrFy5kjVr1rB3714yMzPJyMgofUeCq4S1a9eSl5fHQw89xJVXXsn9999PQUFBuKfRvn37eOWVVzj77LMB2LhxY3j/rKws2rVrB0DPnj2ZN28eW7duZevWrcybN4+ePXvStGlTcnNz2bJlCwBvvPFGeB+RRKReTJIwkpKSGD9+PD179mT//v1cffXVpKSkcPvtt5Oenk5GRgaLFi2iX79+bN26lX/84x/ccccdrFixosRj7tmzh549e7Jv3z7279/PT3/6U37zm98AMG7cOLKyskhKSqJevXpMnjwZgHr16nHbbbfRuXNnAG6//Xbq1asHwB133EH37t2pVq0ap59+engfkURkkQ1yiSY9Pd0XL14c7zBERA5Lh4cGHva+S0ZlHva+Zpbt7gf36y5Gt5hERCQqJQgREYlKCUJERKJSI7UcNw73fu+R3OsVSWS6ghARkaiUIEREJColCBERiUoJQkREolKCEBGRqJQgREQkKiUIEam0Sltids+ePQwYMIDWrVvTtWtX8vLygGDixUGDBpGamkq7du2KTLuenJxMamoqaWlpRVYRXLJkCd26dSM1NZW+ffuyfft2IFioqnDZ2Q4dOvDSSy+F9xk7diwpKSmcffbZXHrppezevbuCPon4UIIQkUqpcInZ1157jdzcXKZPn05ubm6ROs888wx169Zl1apV3Hjjjdxyyy0AzJw5kz179rBs2TKys7N58sknw8kD4O233yYnJ4fIudyGDh3K/fffz7Jly+jXrx8PPvggAGeffTaLFy8mJyeHuXPncs0111BQUMD69esZN24cixcvZvny5ezfv5/MzGNrzIwShIhUSmVZYnb27NnhhZz69+/PW2+9hbtjZuzatYuCggK+/fZbqlevzsknn3zI1/viiy/C65X36NGDF154AYATTzyRpKRgTPHu3bsxs/A+hccvKCjgm2++OeaWmI1ZgjCzXmb2uZmtMrNbo2zvbmb/MrMCM+sfq7hEpHIqyxKzkXWSkpKoU6cOX375Jf379+ekk06icePGNG/enFGjRoWnZDczLrzwQjp16sRTTz0VPlZKSko4Ac2cObPIolAfffQRKSkppKam8sQTT5CUlETTpk0ZNWoUzZs3p3HjxtSpU+eI1zuvbGKSIMysKvAY0Bs4C7jUzM4qVm0tcBXwXCxiEpFj18cff0zVqlXZsGEDa9as4eGHH2b16tUAvPfee/zrX//itdde47HHHuPdd98FYNKkSUyYMIFOnTqxY8cOqlevHj5e165dWbFiBYsWLWLMmDHs3r2brVu3Mnv2bNasWcOGDRvYtWsXf//73+PyfitKrK4gugCr3H21u+8FMoGLIiu4e567LwUOxCgmkePa4TYAP/vss+FG27S0NKpUqRJebjU7O5vU1FRat27N9ddfT+F6M7fddhvt27cnLS2NCy+8kA0bNgDw2Wef0a1bN2rUqMFDDz0Ufu1169Zx3333kZmZSUpKCo8++mjUJWYjl38tKCjg66+/pn79+jz33HP06tWLatWq0ahRI37wgx+E2xsKj9GoUSP69esXXmK2bdu2zJs3j+zsbC699FJatWp10GfSrl07atWqxfLly3nzzTdp0aIFDRs2pFq1alx88cXH3BKzsUoQTYF1Ec/zQ2UiEgdH0gB8+eWXk5OTQ05ODtOmTaNFixakpaUBcN111/H000+zcuVKVq5cydy5cwG4+eabWbp0KTk5Ofz85z/n7rvvBoLV+caNG8eoUaOKvHZSUhJPPPEEjRo1IjMzk/HjxzN58uSDlpjNyMhgypQpAMyaNYsLLrgAM6N58+bMnz8fgF27drFw4ULatm3Lrl272LFjR7h83rx54SVmN2/eDMCBAwe49957ufbaawFYs2YNBQUFAPznP//hs88+Izk5mebNm7Nw4UK++eYb3J233nrrmFtiNuEaqc1smJktNrPFhWv/ikj5HEkDcKTp06czcGAwS+7GjRvZvn075557LmbGlVdeycsvvwxQpIF4165d4YbeRo0a0blzZ6pVq1bkuI0bN6ZLly6MHz+eSy65hA0bNvD9738/vMRsVlYWAEOGDOHLL7+kdevW/OUvfwlfCQ0fPpydO3eSkpJC586dGTx4MO3bt2fTpk2cd955dOjQgS5duvCzn/2MXr16hd/LGWecQdu2bWnSpAmDBw8GgltSHTp0IC0tjX79+jFhwgQaNGhA165d6d+/P+eccw6pqakcOHCAYcOGHfkfpxKJ1XTf64HTIp43C5WVm7s/BTwFwZKjRx6ayPEnWgPwRx99VGKdyAbgBg0ahOs8//zz4cSyfv16mjVrVuSYkY3Kf/jDH5g6dSp16tTh7bffLlOcffr04ayzzqJ79+48+uijAOGrD4CaNWsyc+bMg/arVatW1PKWLVuyZMmSqK81cuRIRo4ceVD5FVdcwRVXXBF1n7vuuou77rqrTO8lEcXqCmIR0MbMWphZdWAgkBWj1xaRCvDRRx9x4oknhm/RlOZPf/oT69at4/LLL2f8+PFl2mfnzp1ccsklPPLII6V2U5WjLyYJwt0LgBHA68CnwAx3X2Fmd5tZBoCZdTazfOCXwJNmtiIWsYkcjyIbd4FyNQAXyszM5NJLLy1SPz8//5DHhKANo3CMwaHs27ePSy65hMsvv5yLL7647G9OjpqYrSjn7nOAOcXKbo94vIjg1pOIVLDOnTuzcuVK1qxZQ9OmTcnMzOS554r2MC9sAO7WrVuRBmAIGnJnzJjBggULwvUbN27MySefzMKFC+natStTp07lt7/9LQArV66kTZs2QNC20bZt20PG5+4MGTKEdu3acdNNNx3We9QKgkdOS46KHIeSkpIYP348PXv2ZP/+/Vx99dXhBuD09HQyMjIYMmQIV1xxBa1bt6ZevXpFppF49913Oe2002jZsmWR406YMIGrrrqKb7/9lt69e9O7d28Abr31Vj7//HOqVKnC6aefzhNPPAHAf//7X9LT09m+fTtVqlThkUceITc3l6VLlzJt2rTwnEkA9913H3369InRJyQAVrxXQiJJT0/3yLlU5PDNnTuXkSNHsn//foYOHcqttxYd7L5nzx6uvPJKsrOzqV+/Ps8//zzJycnh7WvXruWss87izjvvDHdZTE5Opnbt2lStWpWkpKRwP/ScnByuvfZadu/eTVJSEhMmTKBLly5s3bqVq6++mn//+9/UrFmTSZMmhe9vjx07lokTJ2JmpKam8re//Y2aNWuW6z3qjPL4kgh/78ONEY4sTjPLdvf00uolXDdXOfqOpE98oZtuuil8thgp2qRoo0eP5o477iAnJ4e7776b0aNHA8EZYlpaGkuXLmXq1KnhHiXHw6RoIpWREkQMHO6I1UJr166lVq1aRUaalnTMNWvW0LVrV1q3bs2AAQPYu3cvAE888UT4cv28884LJ4C9e/eSkZHB5s2b6devHx988EG5+8S//PLLtGjRgpSUlDJ9HmYWnkr566+/Dk9wlpubywUXXAAEo1rz8vLYtGkTcOxPiiZSGakNooIVnp2/8cYbNGvWjM6dO5ORkcFZZ303FVXk2XlmZia33HILzz//fHh78bPzQx3zlltu4cYbb2TgwIFce+21PPPMM1x33XVcdtll4ZGhWVlZ3HTTTcydO5enn36ab775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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"backend = 'ibmqx4'\n",
"job_exp = execute(qc, backend=backend, shots=1024, max_credits=3)\n",
"\n",
"lapse = 0\n",
"interval = 10\n",
"while not job_exp.done:\n",
" print('Status @ {} seconds'.format(interval * lapse))\n",
" print(job_exp.status)\n",
" time.sleep(interval)\n",
" lapse += 1\n",
"print(job_exp.status)\n",
"\n",
"plot_histogram(job_exp.result().get_counts(qc))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"OPENQASM 2.0;\n",
"include \"qelib1.inc\";\n",
"qreg q[3];\n",
"creg c1[3];\n",
"u3(1.57079632679490,3.14159265358979,3.14159265358979) q[1];\n",
"u3(1.57079632679490,3.14159265358979,3.14159265358979) q[0];\n",
"cx q[2],q[1];\n",
"u3(0.785398163397448,1.57079632679490,4.71238898038469) q[2];\n",
"cx q[2],q[0];\n",
"u3(-0.785398163397448,1.57079632679490,4.71238898038469) q[2];\n",
"cx q[2],q[1];\n",
"u3(-0.785398163397448,1.57079632679490,4.71238898038469) q[1];\n",
"u3(0.785398163397448,1.57079632679490,4.71238898038469) q[2];\n",
"cx q[2],q[0];\n",
"cx q[1],q[0];\n",
"u3(-0.785398163397448,1.57079632679490,4.71238898038469) q[0];\n",
"u3(0.785398163397448,1.57079632679490,4.71238898038469) q[1];\n",
"cx q[1],q[0];\n",
"u2(0,3.14159265358979) q[0];\n",
"measure q[0] -> c1[0];\n",
"u2(0,3.14159265358979) q[1];\n",
"measure q[1] -> c1[1];\n",
"u3(-0.785398163397448,1.57079632679490,4.71238898038469) q[2];\n",
"measure q[2] -> c1[2];\n",
"\n"
]
},
{
"data": {
"image/png": "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6KaezknSgleJDnKJCK4SNF2LXExCy11PvD1oHuc+AADQcfhYrKk6yN2xW+NkiMfj//qv//rAAw/cfPPNd9111wFrIgcjFovddtttp5566hVXXNG8ETIyMh588MH+/fv/+te/Likp+eMf/3joqZok/Stea3iSxl6dhrKysnPPPbe2tva1115L5UJDUz388MPnn39+YroNgEi89957+66sqan5/PPPQwj5+fn7vpqoB27fvv3xxx9PdrxI7Nq1q2F2pDahzQUOIZSUlCR64lOmTIk6S7vS1DO63Z/OydAWz7i2mNlVInKuJ3tpi+dRW8zs3AcAAJrHbWzraHN3mm0ucIji1njHjh2PPfbYf/3Xf919990tUmgIIfz+97//5JNPDn3A22+//Q9/+MPOnTtbJFWTfFWnIfGchoyMjD17STt27DjnnHPS0tJeeeWVo48+OukBW8vf//73zz777Ic//GHUQYAO7bvf/W5i6sE9zZs3r66uLj8/f/DgwfvucvbZZ59wwgkhhAceeKA1Ira6BQsWXHTRRVGnaII2FziEMH/+/Fgsdthhh/3gBz+IOku70tQzut2fzsnQFs+4tpjZVSJyrid7aYvnUVvM7NwHAACax21s62hzd5ptLnCI4tY4Ozu7rKzs5z//eUsNWF5ePn369O9+97unn376oY923XXXPfPMM4c+TlPtt9MQj8fff//9EMKIESP2fMzLD3/4w3fffTcrK+uaa66ZOHHi+P/X1q1bWyN1Ejz88MO9e/eeMGFC1EGADu2OO+648sorv/vd77788svl5eXbt2///e9///Of/zwjI+PRRx9tdJe0tLTErGzvvPNOo+3XNq2ysvLxxx9v3vROkWhzgUMIVVVVv/vd70II06ZNa09txVTQ1DO6fZ/OydAWz7i2mNlVIhW4nuypLZ5HbTGzcx8AAGg2t7GtoM3daba5wCG6W+OWejxDwqxZs3bs2HHnnXe24JitL2N/L6xatSrx4IjTTjttz/XFxcUhhNdff73RvSorK1s0XiupqKh44oknfvKTn2Rk7Pf/EIBWcO2112ZnZ//0pz89++yzG1bm5uY++uijp5xyyv72OuOMMyZNmvSnP/3pP//zPyPpxyXPT3/607Z1cW5zgUMIv/vd7/7xj3+cfPLJ//Zv/xZ1lvamGWd0Oz6dk6EtnnFtMbOrRCpwPdlTWzyP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qqpq4MCBeXl5U6ZMGT9+fLLzHaS5c+euXbs2hHDrrbceddRRB7NLaWlpYmHo0KGNbtCwfv369S2REQAAAAAAAABoggN0GmpqaqZPnz5jxoxYLNawsqys7KOPPnruuee+853vvPrqq0lOeFAef/zx1157LYQwZcqUg+w07NixI7HQtWvXRjfo3r17YqG8vPzQEwIAAAAAAAAATfJVnYby8vIJEyYsXbo0hDB69OjLL788JyentLS0qKho0aJFRUVFOTk5rRQzCRo6DV26dGl0g86dOycWdBoAAAAAAAAAoPXtt9MQi8UShYasrKy5c+dee+21e756xx13zJkz51vf+laLhKitra2srDziiCOaPcLtt98+ZcqUEELv3r0Pcpcvv/wysXDATkNFRUWzgwEAAAAAAAAAzbPfTsPtt9+eeELDggULLrvssr1e7dKly0033XTohy8oKPj5z3/+8ssv19fX5+Tk3Hrrrddff30zxjnjjDOaukttbW1iob6+vtENGtbvOe/GwZs+ffrs2bObsSOtpq6ubteuXT169EhLS4s6Cy2gvLw8MzNzfy0l2od4PF5eXt69e/dOnTpFnYUkcn1mL7FYrLKy8vDDD486CKmitra2trb2sMMOizoIqaK6urqurq5h9kCoqqoK+59ostXs2rUrIyMjMzMz2hikjvLy8qysrIav0MDOnTu7deuWkXGAqYFpEidatBIfuR9//PGVlZXdunULIVx88cV+yKPivilyZWVl8+fPnz9/fnp6euLPTEceeWTUoWh76uvrKyoqDjvssPT09Kiz0PaUl5enpaV17do1Ho+HEGKxWCpciJrxNjhjf1uvX79+1qxZIYQLLrhg30JDS3n//ffPOOOM9PT0m2++OTs7++mnn54yZcrnn3/+m9/8JklH3FPD7/KGcsNeGtb37NmzGeOfe+65u3btSvyIkJpqa2tXrlw5cuRIvwnah08++aRv376H8sQXUl88Hv/www9POOEEHw23b4nr88knn6zTQMKuXbvWrVt30kknRR2EVPHll19u27btuOOOizoIqWLbtm27du3Ky8uLOgipYtOmTWlpaQMGDIg2xpo1a3r27NmrV69oY5A6Pvnkk379+jXvUybapYKCgmOPPTbyAlY789FHHw0ePLhHjx5RB+mgPvnkk+eee+773/9+UVFRv379/vjHP55//vmDBw+OOlcHVVpaWlxcPHz48KiDdFwPPvhgXl7esGHDMjMzly5dWl9f/73vfS/qULQ9sVhsxYoVI0eO9DU/muHPf/5zt27dTj311Fgs9vHHH2/ZsuVHP/pR1KHChx9+OHz48Ca9Dc7MzGy80zBz5sxEa+y2225rmXT7iMfjP/rRj2Kx2FtvvTVy5MgQwi233DJ+/Pg777zze9/73oknnpik4zZoeGubpE7DqaeeeuqppzYvGwAAAAAAtCFPPPHEc8899+tf/7pfv34FBQV//OMff/zjHzfjEcvQPjz55JPf/OY377///hDChAkTYrHYjBkzog4FdCx///vfjznmmMceeyyEMHny5GXLlrXdC1EjX0+vr69/6qmnQgijRo067bTTknTgDz/8sKCgYPLkyYlCQwihU6dOM2fOrKurmzlzZpIOuqeGTkN5eXmjG2zdujWxoEEPAAAAAABfYezYsdOmTevTp08IYfjw4VOnTj3llFOiDgUAtAeNPKehsLCwpKQkhJCfn5+8Ay9ZsiSEMG7cuD1Xjho1qlevXm+++Wbyjtvg6KOPTiysXbv29NNP33eDtWvXJhaa9yj7+fPnz507t7npaA21tbUbN27Mzc31xJ72YcOGDdnZ2WZbb9/q6+vXr1/fv3//rKysqLOQRLW1tZs2bcrNzTU3EAmVlZVffPGFp8rTYOfOnTt27Bg0aFDUQUgV27dvr6mp6devX9RBSBXbtm1LS0s75phjoo3x+eefd+vWLTs7O9oYpI4NGzYceeSRHolPQjweX7duXb9+/cw90bLWr1/fq1evhkmHicQTTzzR8KHr888/H3WcjqusrKysrMx9U4Q2b978xBNPPPPMM507d96xY0c8Hv/6178edSjant27d2/YsCEnJycjo/FH78NX+PTTTzMyMgYPHlxXV1dTU7Nr167IL0TNexvcuXPnRk6ATZs2JRaSOtPSSy+9FELYd17k4cOHL1269IsvvkjUOZNnxIgRiYXPPvus0Q0aOg3NmwjjmGOO8cl7iqupqamqqsrLy9NpaB9qamr69OnjE8P2rb6+vqKiIjc314c+7Vt1dXV1dbXOGQ3Ky8vr6+u9s6JBaWlpVlaWHwkadOvWbdeuXX4kaJCRkZGWljZw4MBoY9TX1x9++OGRVytIHdXV1X379nXTSkI8Hq+oqMjJyenevXvUWdqVysrKgQMHeuxutGpra33omgq2b99eUlLiTXKEPv300549ex5xxBGZmZk1NTXxeNw/B82we/fuysrKvLw8nQaaYcOGDZmZmQMGDIjFYsXFxbW1tZFfiBJvg3Nzc7t163bwezXeaWj4TmRtbW3LpGtMYmaH/v3777U+Nzd36dKlq1evTnanIT8/Pysrq7q6+v333290g8LCwhBCdnb2sGHDmjH+hRdeeOGFFx5SRAAAAAAAANqaoUOHjhs37v777w8hTJgwIRaLPfHEE1GHAjqWMWPGHHPMMU899VQIYfLkycuWLWu7F6JGHul8/PHHJxZWrlyZvAOXlZWlp6fvW9VMfPV2165dyTt0QmZm5gUXXBBCeP3114uLi/d6dfPmze+8804I4eKLL05LS0t2GAAAAAAAAABgL410GgYPHpyYiPTZZ5/9+OOP991gxYoVc+bMOcQD79y5s9HHpCRWVlRUHOL4B2PSpEkhhOrq6pkzZ+710rRp0+LxeAjhuuuua4UkAAAAAAAAAMBeGuk0pKen33nnnSGEWCx29tlnL168uKSkpKqqas2aNQsXLrzkkktGjRq1atWqfXcsLS3d9r8aSgmNrgwhZGVlxWKxfQfZvXt3+N+nNRy8K664YuDAgQMHDiwqKjr4vSZOnDh+/PgQwuzZs+fNm9ewfs6cOfPnzw8hXHTRRWPGjGlSEgAAAAAAAACgRTTypIQQwqRJkxYtWrRkyZKtW7deccUVe73as2fPM844Y9+9zj///GXLlu21cs/db7311t/+9reJ5SOOOKKkpGT37t2dO3fec/uamprEq036n1FcXLx58+YQQl1dXZN2nDdv3ujRo7du3frjH/947ty5eXl5BQUFq1evDiHk5OTMnTu3SaMBAAAAAAAAAC2lkec0hBDS0tKeffbZqVOnZmdn77n+uOOOmzVr1saNGy+99NJDPHCitbBp06a91ieqCT179jzE8Q9S//79ly9ffuaZZ4YQli9f/uSTTyYKDePGjXv77bf79OnTOjEAAAAAAAAAgL00/pyGEEKXLl1+/etf33bbbYWFhSUlJT179szJyendu/dXjPXWW28d/IGPPfbY9957b/Xq1Xl5eXuu/+ijj7KysnJzcw9+qBDCq6++2qTt99SnT5+XX375gw8+ePHFF4uLiwcMGHDmmWeOGDGi2QMCAAAAAAAAAIduv52GhM6dO3/ta19LxoEvuuiihQsXLlu2bNy4cQ0rV69e/Y9//GPChAndu3dPxkG/wqhRo0aNGtXKBwUAAAAAAAAA9qfxuSdawfjx4zMzMx955JGqqqqGlffee28I4cILL4wqFQAAAAAAAACQIiLrNPTo0eMXv/jFhg0brrjiinXr1lVVVc2ePXvOnDnDhw+/9tpro0oFAAAAAAAAAKSIA8w9kVRTp04tLS194IEHnn/++cSak0466dlnn83KyoowFQAAAAAAAACQCqLsNHTq1On++++/4YYbXnzxxYqKipNPPnn8+PHp6ZE9OgIAAAAAAAAASB1RdhoSjj/++OOPPz7qFAAAAAAAAABAavFQBAAAAAAAAAAgFek0AAAAAAAAAACpSKcBAAAAAAAAAEhFOg0AAAAAAAAAQCrSaQAAAAAAAAAAUpFOAwAAAAAAAACQinQaAAAAAAAAAIBUpNMAAAAAAAAAAKQinQYAAAAAAAAAIBXpNAAAAAAAAAAAqUinAQAAAAAAAABIRToNAAAAAAAAAEAq0mkAAAAAAAAAAFKRTgMAAAAAAAAAkIp0GgAAAAAAAACAVKTTAAAAAAAAAACkIp0GAAAAAAAAACAV6TQAAAAAAAAAAKlIpwEAAAAAAAAASEU6DQAAAAAAAABAKtJpAAAAAAAAAABSkU4DAAAAAAAAAJCKdBoAAAAAAAAAgFSk0wAAAAAAAAAApCKdBgAAAAAAAAAgFSW307BixYqSkpKkHqKl1NXVrVmz5pVXXlm5cmV9fX3UcQAAAAAAAACgo0tip+Hee+895ZRTCgoKkneIFlFfX3/PPfcMGjRo2LBhZ511Vn5+fm5u7n333Rd1LgAAAAAAAADo0DJadri6urpPPvnkjTfeeOCBB1auXNmygydDTU3NlVde+fTTTyf+s1u3bpWVlRs3brzxxhvffPPNRYsWpaebngMAAAAAAAAAItCSf7Dv06dP586dTzrppBtuuKFNFBpCCFOnTk0UGiZPnvzFF19UVFQUFhZefvnlIYTFixfPmDEj6oAAAAAAAAAA0EG1ZKehrKwsHo8PHDjw+uuvnzhxYguOnCSrV6++++67QwjXXHPNvHnzevfunZaWlp+fv2jRoksuuSSEMHXq1PXr10cdEwAAAAAAAAA6opbsNBQWFpaWlm7cuHHu3Lknn3xyC46cJA899FAsFsvKypo5c+ae69PT02fPnt2pU6dYLPbYY49FFQ8AAAAAAAAAOrKW7DQMHTo0Ozu7BQdMtoULF4YQxo4d27dv371eysnJGTt2bAhhwYIFESQDAAAAAAAAgA6vJTsNbcu6deu2bNkSQhg5cmSjGyTWr169uqSkpFWTAQAAAAAAAAAdudPw4YcfJhb212kYPnx4YqGgoKB1IgEAAAAAAAAADTIOZqMNGzY8+uijS5YsKSoqqqqqGjhwYF5e3pQpU8aPH5/sfAdp7ty5a9euDSHceuutRx111MHsUlpamlgYOnRooxs0rF+/fn1LZAQAAAAAAAAAmuAAnYaamprp06fPmDEjFos1rCwrK/voo4+ee+6573znO6+++mqSEx6Uxx9//LXXXgshTJky5SA7DTt27EgsdO3atdENunfvnlgoLy8/9IQAAAAAAAAAQJN8VaehvLx8woQJS5cuDSGMHj368ssvz8nJKS0tLSoqWrRoUVFRUU5OTivFTIKGTkOXLl0a3aBz586JBZ0GAAAAAAAAAGh9++00xGKxRKEhKytr7ty511577Z6v3nHHHXPmzPnWt77VUjnq6uqqqqoOO+yw5u1+++23T5kyJYTQu3fvg9zlyy+/TCwcsNNQUVHRjEiFhYUvvPBCM3ak1cRisY8++mjkyJFpaWlRZ6EFrFq1ql+/focffnjUQUiieDy+YsWK448/fn+XbtqH3bt3r1y50vWZBpWVlevWrcvPz486CKmirKxs27Ztxx57bNRBSBX/+Mc/du3alZubG3UQUsXmzZvT0tL69+8fbYx169YdfvjhRx99dLQxSB2ffPJJ//793bTSYMWKFccee2xWVlbUQdqVjz/+eNCgQc3+kJkWkfjQdcSIEenp6VFn6dC+/PLL4uJi900R2rFjx/Lly//lX/4lKytr3bp19fX1M2fOjDoUbU9dXd2KFStGjhzpokozbN68eceOHf/+7/8ei8VWrFhRUlKSCheiFStWDB8+PDMz8+B3yczMDPH9+OUvf5nY6Mknn9zfNl/hV7/6VWL3l1566YAbr1+/fsyYMffcc08zDtRskydPTiRcs2ZNoxt88MEHiQ1uuummZozf8H8gAAAAAAAAANBUGRkZjT+nYf369bNmzQohXHDBBZdddlmSDv/4448vXbp05cqVr7/+en19ffIO1KiGum5tbW2jGzSs79mzZzPGv/POO++8887m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Ug/RUurq6tasWfPKK6+sXLmyvr4+6jgAAAAAAAAA0NElsdNw7733nnLKKQUFBck7RIuor6+/5557Bg0aNGzYsLPOOis/Pz83N/e+++6LOhcAAAAAAAAAdGgZLTtcXV3dJ5988sYbbzzwwAMrV65s2cGToaam5sorr3z66acT/9mtW7fKysqNGzfeeOONb7755qJFi9LTTc8BAAAAAAAAABFoyT/Y9+nTp3PnzieddNINN9zQJgoNIYSpU6cmCg2TJ0/+4osvKioqCgsLL7/88hDC4sWLZ8yYEXVAAAAAAAAAAOigWrLTUFZWFo/HBw4ceP3110+cOLEFR06S1atX33333SGEa665Zt68eb17905LS8vPz1+0aNEll1wSQpg6der69eujjgkAAAAAAAAAHVFLdhoKCwtLS0s3btw4d+7ck08+uQVHTpKHHnooFotlZWXNnDlzz/Xp6emzZ8/u1KlTLBZ77LHHoooHAAAAAAAAAB1ZS3Yahg4dmp2d3YIDJtvChQtDCGPHju3bt+9eL+Xk5IwdOzaEsGDBggiSAQAAAAAAAECH15KdhrZl3bp1W7ZsCSGMHDmy0Q0S61evXl1SUtKqyQAAAAAAAACAjtxp+PDDDxML++s0DB8+PLFQUFDQOpEAAAAAAAAAgAYZB7PRhg0bHn300SVLlhQVFVVVVQ0cODAvL2/KlCnjx49Pdr6DNHfu3LVr14YQbr311qOOOupgdiktLU0sDB06tNENGtavX7++JTICAAAAAAAAAE1wgE5DTU3N9OnTZ8yYEYvFGlaWlZV99NFHzz333He+851XX301yQkPyuOPP/7aa6+FEKZMmXKQnYYdO3YkFrp27droBt27d08slJeXH3pCAAAAAAAAAKBJvqrTUF5ePmHChKVLl4YQRo8effnll+fk5JSWlhYVFS1atKioqCgnJ6eVYiZBQ6ehS5cujW7QuXPnxIJOAwAAAAAAAAC0vv12GmKxWKLQkJWVNXfu3GuvvXbPV++44445c+Z861vfapEQFRUVXbt27dSpU7NHuP3226dMmRJC6N2790Hu8uWXXyYWDthpqKioaHYwAAAAAAAAAKB59ttpuP322xNPaFiwYMFll12216tdunS56aabDvHYdXV1995773333VdUVJSVlXXyySffcMMNV111VTOGOuOMM5q6S21tbWKhvr6+0Q0a1u8578bB+81vfnPPPfc0Y0daTV1d3a5du3r06JGWlhZ1FlpAeXl5Zmbm/lpKtA/xeLy8vLx79+6HUoMj9bk+s5dYLFZZWXn44YdHHYRUUVtbW1NT06NHj6iDkCqqq6vr6uoaZg+EysrKtLS0/U002Wp27dqVkZGRmZkZbQxSh5tW9rJz585u3bplZBxgamCapLy8PCsrq+G7akSivr6+oqLCTX3kamtra2trDzvssKiDdHSVlZXp6elZWVlRB6Gtqq+vLy8v79GjR3p6etRZaHvKy8sTd8fxeDyEEIvFjjzyyKhDNedtcKdOnRrfev369bNmzQohXHDBBfsWGlrKD37wgz//+c+XXXbZpEmTVq1a9dxzz1199dWvvvrq/Pnzk3TEPTX8Lm8oN+ylYX3Pnj2bMf748eN9cpHiamtrly9ffuqpp/pN0D6sWLFiwIABqXA5Jnni8fi77747YsQItwHtW21t7QcffDB69GjXZxIqKipWrVr19a9/PeogpIrt27dv2bLlpJNOijoIqWLLli0VFRXHHnts1EFIFevXr09PTx88eHC0MVatWpWdnX3wj5Ok3SsoKBg0aFB2dnbUQUgV77777oknntitW7eog7QrH3zwwZAhQ/Sho7V79+7333/fh66R2759+9atW/Pz86MO0tGtWbMmKytrwIABUQehrYrFYu+9997o0aN9zY9mmDt37mGHHTZ27Njdu3d/8MEHGzduPPRnFhy6d955Jz8/v0lvg9PT0xvvNMycOTPxcILbbrutZdLt46mnnlqwYMF///d/f//730+s+fjjj8eNG/eHP/xh/PjxyStSNGj4XleSOg2jR48ePXp087IBAAAAAAAAQPP89a9/7dWr1/333x9CmDx5clVV1S233BJ1qGZqpClZX1//1FNPhRBGjRp12mmnJenA991333nnnddQaAghnHDCCXfffXcIYfr06Uk66J4aOg3l5eWNbrB169bEQvM6DQAAAAAAAADQ+v7jP/7jhhtuSCz/6Ec/+tWvfhVtnkPRyHMaCgsLS0pKQghJfSpRXl7eOeecs9fKiRMnpqenr1y5cvfu3cme9uzoo49OLKxdu/b000/fd4O1a9cmFo444ohmjP/ggw/OmzevueloDbW1tRs3bszNzfXEnvZhw4YN2dnZni7YvtXX169bt27AgAHmnmjfampqNm3a5PpMg8rKyq1btw4ZMiTqIKSKsrKyHTt2RP5UeVLH9u3bq6ur+/fvH3UQUsW2bdvS0tKOOeaYaGNs3ry5W7duZsejQVFR0VFHHdXwHRs6uHg8vm7dun79+nXt2jXqLO3K+vXre/Xq1TDpMJHwoWuKKCsrKysrGzRoUNRBOrotW7Z06dKl4Q9S0FS7d+/esGFDTk5ORkbjj96HAyouLq6rq+vTp08IYdasWdGGicfja9eu7d+/f5PeBmc0egJs2rQpsTB8+PCWSdeYOXPmJKa32FPXrl27d+9eXl7+5ZdfJvvThxEjRiQWPvvss0Y3aOg0nHjiic0Yv3///nl5ec3LRuuoqampqanJy8vz9rp9qK2t7d27t6lJ27f6+vrKysrc3Fwf+rRvNTU1tbW1Q4YMMfUmCRUVFSEE76xoUFpa2q1bNz8SNOjevXviHULUQUgVnTt3TktLi3zS4ng83qNHj8irFaSOmpqavn37Nu+bM7Q/8Xh8165dOTk53bt3jzpLu1JdXT1gwADfeIlWbW2tD11TQWlpaUlJifumyKWnp2dmZvbt2zfqILRVu3fvrq6uzsvL02mg2TIzM2OxWIp8OyjxNjg3N7dbt24Hv1dmZmYjJ0DD3w9qa2tbJl1jGv1z1KefflpeXn7kkUe2wj1/fn5+VlZWdXX1+++/3+gGhYWFIYTs7Oxhw4Y1Y/yJEydOnDjxkCICAAAAAAAAQAfWyNcfjz/++MTCypUrWzdMeOGFF0IIkydPboVjZWZmXnDBBSGE119/vbi4eK9XN2/e/M4774QQLr744rS0tFbIAwAAAAAAAADsqZFOw+DBg/v16xdCePbZZz/++ON9N1ixYsWcOXNaPMrnn38+ffr0IUOG/PKXv2zxwRs1adKkEEJ1dfXMmTP3emnatGnxeDyEcN1117VOGAAAAAAAAABgT410GtLT0++8884QQiwWO/vssxcvXlxSUlJVVbVmzZqFCxdecsklo0aNWrVq1b47lpaWbvtfiWmP97dyXzt37jz//PM7d+7817/+tRkzC15xxRUDBw4cOHBgUVHRwe81ceLE8ePHhxBmz549b968hvVz5syZP39+COGiiy4aM2ZMU8MAAAAAAAAAAIcuLfE0gr3E4/EJEyYsWbKk0X169uz58MMPX3rppXut/+Y3v7ls2bKvONitt97629/+dt/1O3fuPO+887Zs2fK3v/1t2LBhBx3+/zrjjDNee+21EMKaNWuGDBly8Dt+/vnno0eP3rp1awjha1/7Wl5eXkFBwerVq0MIOTk5b731Vp8+fZqRBwAAAAAAAAA4RI08pyGEkJaW9uyzz06dOjU7O3vP9ccdd9ysWbM2bty4b6Gh2Xbu3Dlu3Lji4uI33nijeYWGQ9G/f//ly5efeeaZIYTly5c/+eSTiULDuHHj3n77bYUGAAAAAAAAAIhK489paLB79+7CwsKSkpKePXvm5OT07t27ZQ9fVlY2bty4ioqKl156KdoCwQcffPDiiy8WFxcPGDDgzDPPHDFiRIRhAAAAAAAAAIADdBqSqqys7Nxzz929e/eLL7549NFHRxUDAAAAAAAAAEhBGVEdeMeOHeeee256evorr7xyxBFHRBUDAAAAAAAAAEhNkT2n4dJLL33mmWfGjh3bo0ePeDxeV1e356sPP/xw3759IwkGAAAAAAAAAKSCyJ7TUFxcHEJ4/fXXG321srKydeMAAAAAAAAAAKnl/wO/a/jMTgIdCQAAAABJRU5ErkJggg==\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=2801x326 at 0x7F2A178FBF60>"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"backend = 'ibmqx4'\n",
"circuit = qiskit.compile(qc, backend=backend)\n",
"print(circuit['circuits'][0]['compiled_circuit_qasm'])\n",
"circuit_drawer(load_qasm_string(circuit['circuits'][0]['compiled_circuit_qasm']))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Optimization"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=452x182 at 0x7F2A178FAC50>"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"q = QuantumRegister(2)\n",
"c = ClassicalRegister(2)\n",
"qc = QuantumCircuit(q,c)\n",
"\n",
"qc.z(q[0])\n",
"qc.z(q[0])\n",
"\n",
"qc.measure(q, c)\n",
"circuit_drawer(qc)"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"OPENQASM 2.0;\n",
"include \"qelib1.inc\";\n",
"qreg q[2];\n",
"creg c2[2];\n",
"measure q[1] -> c2[1];\n",
"measure q[0] -> c2[0];\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=307x284 at 0x7F2A183F4A20>"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"backend = 'ibmqx4'\n",
"circuit = qiskit.compile(qc, backend=backend)\n",
"print(circuit['circuits'][0]['compiled_circuit_qasm'])\n",
"circuit_drawer(load_qasm_string(circuit['circuits'][0]['compiled_circuit_qasm']))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Optimization?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## $Z^2 = I$ ?"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=374x88 at 0x7F2A1834E0B8>"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"q = QuantumRegister(1)\n",
"c = ClassicalRegister(1)\n",
"qc = QuantumCircuit(q,c)\n",
"\n",
"qc.z(q[0])\n",
"qc.z(q[0])\n",
"\n",
"qc.measure(q, c)\n",
"circuit_drawer(qc)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"OPENQASM 2.0;\n",
"include \"qelib1.inc\";\n",
"qreg q3[1];\n",
"creg c3[1];\n",
"u1(3.14159265358979) q3[0];\n",
"u1(3.14159265358979) q3[0];\n",
"measure q3[0] -> c3[0];\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=537x101 at 0x7F2A17831828>"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"backend = 'ibmqx4'\n",
"circuit = qiskit.compile(qc, backend=backend)\n",
"print(circuit['circuits'][0]['compiled_circuit_qasm'])\n",
"circuit_drawer(load_qasm_string(circuit['circuits'][0]['compiled_circuit_qasm']))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## SWAP "
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=344x284 at 0x7F2A178F8FD0>"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"q = QuantumRegister(2)\n",
"c = ClassicalRegister(2)\n",
"qc = QuantumCircuit(q,c)\n",
"\n",
"qc.swap(q[0],q[1])\n",
"\n",
"qc.measure(q, c)\n",
"circuit_drawer(qc)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"OPENQASM 2.0;\n",
"include \"qelib1.inc\";\n",
"qreg q[2];\n",
"creg c4[2];\n",
"cx q[0],q[1];\n",
"u2(0,3.14159265358979) q[1];\n",
"u2(0,3.14159265358979) q[0];\n",
"cx q[0],q[1];\n",
"u2(0,3.14159265358979) q[1];\n",
"u2(0,3.14159265358979) q[0];\n",
"cx q[0],q[1];\n",
"measure q[1] -> c4[1];\n",
"measure q[0] -> c4[0];\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=809x213 at 0x7F2A182AECC0>"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"backend = 'ibmqx2'\n",
"circuit = qiskit.compile(qc, backend=backend)\n",
"print(circuit['circuits'][0]['compiled_circuit_qasm'])\n",
"circuit_drawer(load_qasm_string(circuit['circuits'][0]['compiled_circuit_qasm']))"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"OPENQASM 2.0;\n",
"include \"qelib1.inc\";\n",
"qreg q[2];\n",
"creg c4[2];\n",
"u2(0,3.14159265358979) q[1];\n",
"u2(0,3.14159265358979) q[0];\n",
"cx q[1],q[0];\n",
"u2(0,3.14159265358979) q[0];\n",
"u2(0,3.14159265358979) q[1];\n",
"cx q[1],q[0];\n",
"u2(0,3.14159265358979) q[0];\n",
"u2(0,3.14159265358979) q[1];\n",
"cx q[1],q[0];\n",
"u2(0,3.14159265358979) q[0];\n",
"measure q[0] -> c4[0];\n",
"u2(0,3.14159265358979) q[1];\n",
"measure q[1] -> c4[1];\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=1359x213 at 0x7F2A176CEA90>"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"backend = 'ibmqx4'\n",
"circuit = qiskit.compile(qc, backend=backend)\n",
"print(circuit['circuits'][0]['compiled_circuit_qasm'])\n",
"circuit_drawer(load_qasm_string(circuit['circuits'][0]['compiled_circuit_qasm']))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Define SWAP by myself"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=590x182 at 0x7F2A175E6080>"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"q = QuantumRegister(2)\n",
"c = ClassicalRegister(2)\n",
"qc = QuantumCircuit(q,c)\n",
"\n",
"qc.cx(q[1],q[0])\n",
"qc.h(q)\n",
"qc.cx(q[1],q[0])\n",
"qc.h(q)\n",
"qc.cx(q[1],q[0])\n",
"\n",
"qc.measure(q, c)\n",
"circuit_drawer(qc)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"OPENQASM 2.0;\n",
"include \"qelib1.inc\";\n",
"qreg q[2];\n",
"creg c5[2];\n",
"cx q[1],q[0];\n",
"u2(0,3.14159265358979) q[1];\n",
"u2(0,3.14159265358979) q[0];\n",
"cx q[1],q[0];\n",
"u2(0,3.14159265358979) q[1];\n",
"u2(0,3.14159265358979) q[0];\n",
"cx q[1],q[0];\n",
"measure q[1] -> c5[1];\n",
"measure q[0] -> c5[0];\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=809x213 at 0x7F2A1855ECF8>"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"backend = 'ibmqx4'\n",
"circuit = qiskit.compile(qc, backend=backend)\n",
"print(circuit['circuits'][0]['compiled_circuit_qasm'])\n",
"circuit_drawer(load_qasm_string(circuit['circuits'][0]['compiled_circuit_qasm']))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Reference\n",
"\n",
"[Basic Circuit Identities and Larger Circuits — Experience Documentation 2.0 documentation](https://quantumexperience.ng.bluemix.net/proxy/tutorial/full-user-guide/004-Quantum_Algorithms/061-Basic_Circuit_Identities_and_Larger_Circuits.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.6.5"
},
"latex_envs": {
"LaTeX_envs_menu_present": true,
"autoclose": false,
"autocomplete": true,
"bibliofile": "biblio.bib",
"cite_by": "apalike",
"current_citInitial": 1,
"eqLabelWithNumbers": true,
"eqNumInitial": 1,
"hotkeys": {
"equation": "Ctrl-E",
"itemize": "Ctrl-I"
},
"labels_anchors": false,
"latex_user_defs": false,
"report_style_numbering": false,
"user_envs_cfg": false
},
"toc": {
"nav_menu": {},
"number_sections": true,
"sideBar": true,
"skip_h1_title": false,
"toc_cell": false,
"toc_position": {
"height": "calc(100% - 180px)",
"left": "10px",
"top": "150px",
"width": "511px"
},
"toc_section_display": true,
"toc_window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment