{ "cells": [ { "cell_type": "code", "execution_count": 41, "id": "b053c59a", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ibmqfactory.load_account:WARNING:2021-07-11 13:31:24,710: Credentials are already in use. The existing account in the session will be replaced.\n" ] } ], "source": [ "import numpy as np\n", "# Importing standard Qiskit libraries\n", "from qiskit import QuantumCircuit, transpile, Aer, IBMQ\n", "from qiskit.tools.jupyter import *\n", "from qiskit.visualization import *\n", "from ibm_quantum_widgets import *\n", "\n", "# Loading your IBM Quantum account(s)\n", "provider = IBMQ.load_account()" ] }, { "cell_type": "code", "execution_count": 42, "id": "faa85259", "metadata": {}, "outputs": [], "source": [ "# Insert imports here\n", "from qiskit.quantum_info.operators import Operator, Pauli\n", "from qiskit.aqua.algorithms import QPE\n", "import numpy as np\n", "pi = np.pi\n", "sin = np.sin\n", "cos = np.cos" ] }, { "cell_type": "code", "execution_count": 63, "id": "7697f5b0", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[[1, 0, 0, 0],\n", " [0, 0.8660254037844387, 0.49999999999999994j, 0],\n", " [0, 0.49999999999999994j, 0.8660254037844387, 0],\n", " [0, 0, 0, 1]]" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "operator = ([[1,0,0,0],[0,cos(pi/6),complex(0,sin(pi/6)),0],[0,complex(0,sin(pi/6)),cos(pi/6),0],[0,0,0,1]])\n", "\n", "operator2 = np.linalg.matrix_power(operator, 6)\n", "operator" ] }, { "cell_type": "code", "execution_count": 93, "id": "8d21b448", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 206.852x144.48 with 1 Axes>" ] }, "execution_count": 93, "metadata": {}, "output_type": "execute_result" } ], "source": [ "qc = QuantumCircuit(2)\n", "qc.unitary(operator,[0,1])\n", "qc = transpile(qc)\n", "qc.draw()" ] }, { "cell_type": "code", "execution_count": 94, "id": "6762485f", "metadata": {}, "outputs": [], "source": [ "gate = qc.to_gate().control(1)" ] }, { "cell_type": "code", "execution_count": 95, "id": "360a3ca1", "metadata": {}, "outputs": [], "source": [ "#defining 1st part of circuit\n", "from qiskit.circuit.library import QFT\n", "pi = np.pi\n", "def qpe(nqubits):\n", " t=4\n", " qpe_0 = QuantumCircuit(nqubits+t,nqubits)\n", " for i in range(nqubits):\n", " qpe_0.h(i)\n", " repetitions = 1\n", " for counting_qubit in range(nqubits):\n", " for i in range(repetitions):\n", " qpe_0.append(gate,[counting_qubit,nqubits+counting_qubit,nqubits+counting_qubit+1]); # This is C-U\n", " repetitions *= 2\n", " qpe_1 = QFT(nqubits, 20, True, True)\n", " l = [*range(nqubits)]\n", " qpe = qpe_0.compose(qpe_1, l)\n", " qpe.measure(l,l)\n", " return qpe\n", " \n", "qpe = qpe(3)" ] }, { "cell_type": "code", "execution_count": 96, "id": "7661ab3d", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 504x360 with 1 Axes>" ] }, "execution_count": 96, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from qiskit import execute\n", "simulator = Aer.get_backend('qasm_simulator')\n", "result = execute(qpe, backend = simulator, shots = 1000).result()\n", "plot_histogram(result.get_counts(qpe))" ] }, { "cell_type": "code", "execution_count": null, "id": "573fd211", "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.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }