{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "9fb07d3a-5975-4222-95bc-44bdf9d16e9f",
   "metadata": {},
   "outputs": [],
   "source": [
    "from qiskit import QuantumCircuit, QuantumRegister, transpile\n",
    "from qiskit_ibm_runtime import QiskitRuntimeService\n",
    "service = QiskitRuntimeService.save_account(channel=\"ibm_quantum\", token=\"HIER IHR TOKEN EINSETZEN\", set_as_default=True, overwrite=True)\n",
    "\n",
    "from qiskit.providers.basic_provider import BasicSimulator\n",
    "backend = BasicSimulator()\n",
    "\n",
    "from qiskit.quantum_info import Operator\n",
    "\n",
    "from qiskit.visualization import plot_histogram\n",
    "import random\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "4024bad1-00b6-4590-8e73-d98bbe45805f",
   "metadata": {},
   "outputs": [],
   "source": [
    "def oracle(qubits,secret):\n",
    "    # kein \"Phase-Kickback\" durch das Hilfsqubit: Orakel multipliziert direkt das gesuchte Element mit -1\n",
    "    # daher braucht man kein Hilfs-Qubit\n",
    "    d_matrix = np.identity(2**n)\n",
    "    d_matrix[secret,secret] = -1\n",
    "    qubits.unitary(Operator(d_matrix),range(n)) # erzeugt unitäre Transformation zur übergebenen Transformationsmatrix\n",
    "    return qubits"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "2be6a348-657a-42ac-9bd9-64c65c36f306",
   "metadata": {},
   "outputs": [],
   "source": [
    "def grover_iteration(circuit,secret):\n",
    "    # Aufruf des Quanten-Orakels (ohne Hilfsqubit, da das Orakel durch eine Matrix erzeugt wird)\n",
    "    oracle(circuit,secret)\n",
    "    circuit.barrier()  # nur für die Schaltkreis-Darstellung\n",
    "    # H-Gatter für alle x-Qubits\n",
    "    for i in range(n):\n",
    "        circuit.h(i)\n",
    "    circuit.barrier()  # nur für die Schaltkreis-Darstellung\n",
    "    # -D-Matrix erzeugen als minus-Einheitsmatrix und an der Stelle (0,0) eine 1\n",
    "    minusD = -np.identity(2**n)\n",
    "    minusD[0,0] = 1\n",
    "    circuit.unitary(Operator(minusD),range(n)) # erzeugt unitäre Transformation zur übergebenen Transformationsmatrix\n",
    "    circuit.barrier()  # nur für die Schaltkreis-Darstellung\n",
    "    # H-Gatter für alle x-Qubits\n",
    "    for i in range(n):\n",
    "        circuit.h(i)\n",
    "    circuit.barrier()  # nur für die Schaltkreis-Darstellung\n",
    "    return circuit"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "256594d5-380f-4db0-908b-fc5028d9c572",
   "metadata": {},
   "outputs": [],
   "source": [
    "n=5   # wieviel Qubits? N=2**n.\n",
    "secret=random.randint(0,2**n-1) # Auswahl des gesuchten Elements"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "1b13d50a-12a0-4ed9-ba77-9bd727028f48",
   "metadata": {},
   "outputs": [],
   "source": [
    "# n x-Qubits (kein Hilfs-Qubit, da das Orakel durch eine Matrix erzeugt wird)\n",
    "circuit = QuantumCircuit(n,n)\n",
    "# H-Gatter für alle x-Qubits (kein Hilfs-Qubit)\n",
    "for i in range(n):\n",
    "    circuit.h(i)\n",
    "circuit.barrier()  # nur für die Schaltkreis-Darstellung\n",
    "# Beginn der Grover-Iteration\n",
    "grover_iteration(circuit,secret)\n",
    "#grover_iteration(circuit,secret)\n",
    "#grover_iteration(circuit,secret)\n",
    "#grover_iteration(circuit,secret)\n",
    "# Ende der Grover-Iteration\n",
    "for i in range(n):\n",
    "    circuit.measure(i, i)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "35ec8072-2de9-4d44-bd5b-a7215b0b83ee",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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IiIiIsoCi4u8hw8fomfPnggMDEz3mXks8oiIiIhyn8VF3tixY3Hw4EG0atUKgwYNQokSJWBvr/nAIBERERFlA4urss2bN6NBgwbYvXs3R7UgIiIiymMsHvEiNjYWLVq0YIFHRERElAdZXOTVqlXL7GgXRERERGR9Fhd5n332GTZu3IgjR45kZz5ERERElA0sviYvIiICXbp0QcuWLfHKK6+gTp068PT0NDvva6+9ZnGCRERERJR1iqT3/JN06HQ6KIpi9PiU1NfniQgURTH7/DxbERUVBS8vL0RGRqZZ5BIRZcbQuem/vnh0bmRBRHldZmsPi4/kLV261NJQIiIiIsphHNaMiIiIyAZZfOMFEREREeVdFh/Ju3HjRqbnLVWqlKXNEBEREZEFLC7yypQpk6kHISuKgsTEREubISIiIiILWFzkvfbaa2aLvMjISJw5cwZXr15Fy5YtUaZMGS35EREREZEFLC7yli1bluZrIoLZs2djxowZ+Pnnny1tgoiIiIgslCM3XiiKgg8++ADVqlXDhx9+mBNNEBEREVE6cvTu2nr16mHPnj052QQRERERmZGjRd7ly5d50wURERGRFVh8TV5a9Ho9bt26hWXLlmHDhg1o06ZNdjdBRERERBmwuMgzjF2bFhFBwYIFMXv2bEubICIiIiILWVzktWjRwmyRp9PpULBgQdSvXx9DhgyBr6+vpgSJiIiIKOssLvL27duXjWkQERERUXbi2LVERERENihbbrwIDAxEUFAQoqKi4OnpiVq1aqFp06bZ8dZEREREZAFNRd6hQ4cwZMgQXLp0CUDyzRaG6/T8/f2xdOlSNG7cWHuWRERERJQlFhd5//77L9q3b4+nT5+iXbt2CAgIQNGiRREREYG9e/di586d6NChA44cOYKqVatmZ85ERERElAGLi7zPP/8c8fHx2Lp1Kzp27Gj02scff4zt27eje/fu+Pzzz7FmzRrNiRIRERFR5ll848W+ffvQp08fkwLPoGPHjujTpw/27t1rcXJEREREZBmLi7zIyEiULVs23XnKli2LyMhIS5sgIiIiIgtZXOQVK1YMR44cSXeeo0ePolixYpY2QUREREQWsrjI6969O/bt24dJkybh2bNnRq89e/YMn332Gfbu3YsePXpoTpKIiIiIskYREbEk8MGDB2jYsCGuXr0KHx8fNGjQAEWKFMGd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c+fUaYZn3DVr1gxvvvkmQkJC0KtXL8TFxaFVq1ZYvXq1yXuVKVPG6IaNihUrYvLkyfjkk09Qs2ZNo2HNAGDx4sWZHu2CiIiIKK/Kk0XewYMHsXz5cqNpgYGBCAwMVP/95ptvIiIiQr3T1VCkpdayZUuTu3InTpyIMmXKYO7cuViwYAEcHR3RvHlzfPHFF6hTp072doaIiIjICvL8I1TyOo5dS0TZhWPXElFm5Ouxa4mIiIhIGxZ5RERERDaIRR4RERGRDWKRR0RERGSDWOQRERER2SAWeUREREQ2iEUeERERkQ1ikUdERERkg1jkEREREdkgFnlERERENohFHhEREZENYpFHREREZINY5BERERHZIBZ5RERERDaIRR4RERGRDWKRR0RERGSDWOQRERER2SAWeUREREQ2iEUeERERkQ1ikUdERERkg1jkEREREdkgFnlERERENohFHhEREZENYpFHREREZINY5BERERHZIBZ5RERERDaIRR4RERGRDWKRR0RERGSDWOQRERER2SAWeUREREQ2iEUeERERkQ1ikUdERERkg1jkEREREdkgFnlERERENohFHhEREZENYpFHREREZINY5BERERHZIBZ5RERERDaIRR4RERGRDWKRR0RERGSDWOQRERER2SAWeUREREQ2iEUeERERkQ1ikUdERERkg1jkEREREdkgFnlERERENohFHhEREZENYpFHREREZINY5BERERHZIBZ5RERERDaIRR4RERGRDWKRR0RERGSDWOQRERER2SAWeUREREQ2iEUeERERkQ1ikUdERERkg1jkEREREdkgFnlERERENohFHhEREZENYpFHREREZINY5BERERHZIBZ5RERERDaIRR4RERGRDWKRR0RERGSDbKrIW79+Pdq1awcfHx84OzujbNmyGDBgAMLCwozmi4qKwtixY1G6dGk4OTmhTJky+PDDDxEdHW2lzImIiIiyl721E8gOIoK3334bP/74I8qXL4+XXnoJHh4euH37Nvbv34/r16+jZMmSAICYmBi0bNkSQUFBaN++PQYMGIDTp09j1qxZ2L9/Pw4cOABnZ2cr94iIiIhIG5so8ubNm4cff/wRI0aMwLx582BnZ2f0emJiovr/M2bMQFBQED7++GNMnz5dnT5u3Dh8/fXXmDNnDsaPH59ruRMRERHlBEVExNpJaBEbG4vi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V/noo4/Sbfv8+fPywQcfiKIo0rhxY3V53rp1SxRFEV9fX3F1dRVFUcTe3l6aNGkiU6ZMMSlaRUROnTolnp6e0qhRI7l27Zo4ODhI//79TXZSQUFBMm3aNGnYsKEoiiIuLi7y7bffGr3X9evXxc3NTVq2bCkfffSR/PXXX3Lt2jWTHb1er1e3G/fv35eQkBC5du2a2Nvby5AhQ0xyvHjxoixdulT69++vHml67733JDo6Wp3nxo0botPppHLlytKvXz+ZP3++nDt3zqTtpKQkdZlGRETI6dOnRUTk6tWrFrefHW3rdDoZNWqUSdu3bt2S7du3y8cffyxly5YVRVGkc+fOcvPmTaO+K4oiBQoUkPr168vEiRMlMDDQZEefmJionoUJCwuTQ4cO5YnlbmnftfQ7Lyx3nU4nH374oUnbjx8/lqCgIJk/f760bNlSFEWR6tWry5kzZ0zaNnzfBw8eLNu2bTM5mpey7evXr8v69evl/v37Jm1mFxZ5+dCVK1fEwcFBhg0blu58hi/1sWPHRFEUmTdvnqxcuVIURZE33nhDvvvuO2nfvr14e3uLTqcTf39/eeutt+S3336TkJAQtUD48ccfRVEUWbhwoezcuVNcXFxk2rRpImJaYKb8MkVFRUn37t1FURTZs2ePiIj89ttvoiiKvPPOO7J161Z5/fXX1S9soUKFpHPnzjJjxgw5cOCA3L17V0SSf5UqiiLvvvuu1dpesGCB7N+/Xzw9PWX8+PEiIkZHRsydFnj33XdFURRZt26d/PHHH6Ioinz00UcSEhIin376qdSqVUsURRGdTifVq1eXESNGyNq1a+X69esiIrJ8+XJRFEXmz59v1eU+duxYi/stIpr7bs3lfuzYMfH19ZURI0aobac8ep56x/nNN9+IoiiyePFiERHZsGGDKIoin332mSQkJMiiRYukVatW6s7Ay8tLOnfuLN9//72EhISIiMivv/4qiqLIDz/8INOnT5eCBQvK7t271c86dZEZHx8va9askRdeeEEURVF//ImITJ8+Xd3p6HQ6KViwoLRr106mTp0qe/bskTt37khqixcvluLFi8vQoUPFy8tLPTKZkJBgssNKSEiQHTt2SNOmTUVRFPn000/VZTNjxgz16Kbh1FvlypVl6NChsmrVKrl27ZpJ299//70oiiJr166V2bNnW9z+119/rantefPm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",
      "text/plain": [
       "<Figure size 700x500 with 1 Axes>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "circ = transpile(circuit, backend)\n",
    "erg = backend.run(circ, shots=1024).result()\n",
    "plot_histogram(erg.get_counts(circuit))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "7d7f7570-d4aa-4369-8be9-5359be74372f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "16\n"
     ]
    }
   ],
   "source": [
    "print(secret)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "c4ddc58a-4ff4-4ef1-bc9d-bc999cf718a8",
   "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.12.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
