diff --git a/Quantum Realm/Tools/Computer choices/IBM/Qiskit Concepts Review/Concepts0_UsingQiskitLibraries.ipynb b/Quantum Realm/Tools/Computer choices/IBM/Qiskit Concepts Review/Concepts0_UsingQiskitLibraries.ipynb
new file mode 100644
index 0000000..7bfaa1a
--- /dev/null
+++ b/Quantum Realm/Tools/Computer choices/IBM/Qiskit Concepts Review/Concepts0_UsingQiskitLibraries.ipynb
@@ -0,0 +1,366 @@
+{
+ "nbformat": 4,
+ "nbformat_minor": 0,
+ "metadata": {
+ "colab": {
+ "provenance": []
+ },
+ "kernelspec": {
+ "name": "python3",
+ "display_name": "Python 3"
+ },
+ "language_info": {
+ "name": "python"
+ }
+ },
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "source": [
+ "# Concepts Review #0: Using Qiskit\n",
+ "---\n",
+ "This concept review notebook will go over the main quantum programming Python Library we will be using: Qiskit. This is IBM's quantum programming platform to manipulate **qubits**, the basic unit of quantum information. In order to get set up, let's talk about how to install qiskit in your notebook! If you are using IQX with qiskit already installed, this may not be necessary. But in case qiskit isn't yet installed, this is good to double check just in case! \n",
+ "\n",
+ "
\n",
+ "\n",
+ "You can find the syntax cheat sheet [here](https://).\n",
+ "\n",
+ "---"
+ ],
+ "metadata": {
+ "id": "SmV9FUHiCg3j"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #1:** Can you install qiskit? \n",
+ "\n",
+ "Since we are using Python notebooks to install we will be using the `!pip install` command for this. \n"
+ ],
+ "metadata": {
+ "id": "STRkwVjoC_j5"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "#install qiskit with the !pip command\n",
+ "!pip install qiskit\n"
+ ],
+ "metadata": {
+ "id": "4Lpe_-16ErL3"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #2:** Can you load your IBM account? \n",
+ "\n",
+ "If you are already using qiskit inside your IBM account, the next step is to load your IBM account to prepare for quantum computation. \n"
+ ],
+ "metadata": {
+ "id": "jyjFG23wJvaJ"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Loading your IBM Quantum account(s)\n",
+ "provider = IBMQ.load_account()"
+ ],
+ "metadata": {
+ "id": "APzAM3x8JwJO"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #3:** Can you install the `QuantumCircuit` library? \n",
+ "\n",
+ "Use the `import` command for this. \n"
+ ],
+ "metadata": {
+ "id": "W5GRMAltDPll"
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "ZYZqw3BkDPll",
+ "outputId": "ef89121b-a3ab-4936-c2db-a5d7169f8979"
+ },
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Libraries imported successfully!\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Importing standard Qiskit libraries\n",
+ "from qiskit import QuantumCircuit, ClassicalRegister #Importing the QuantumCircuit function from Qiskit. We will use this to create our quantum circuits!\n",
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #4:** Can you install the `QuantumRegister` library? \n",
+ "\n",
+ "Use the `import` command for this. \n"
+ ],
+ "metadata": {
+ "id": "iGr1o4F7EgJz"
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "outputId": "ef89121b-a3ab-4936-c2db-a5d7169f8979",
+ "id": "T73-4ua6EgKE"
+ },
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Libraries imported successfully!\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Importing standard Qiskit libraries\n",
+ "from qiskit import QuantumRegister, ClassicalRegister \n",
+ "\n",
+ "#Importing the QuantumCircuit function from Qiskit. We will use this to create our quantum circuits!\n",
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #5:** Can you install the Qiskit Aer backend? \n",
+ "\n",
+ "This is what we will be `execute`-ing the task on! \n"
+ ],
+ "metadata": {
+ "id": "bgGROEF3DSlq"
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "2DbhHjsbDSlr",
+ "outputId": "984b4a78-f76b-4856-a6c4-fff6bb8908e5"
+ },
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Libraries imported successfully!\n"
+ ]
+ }
+ ],
+ "source": [
+ "# We will use these functions to run our circuit and visualize its final state\n",
+ "from qiskit import Aer, execute \n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #6:** Can you install the `visualization` library? \n",
+ "\n",
+ "Use the `import` command for this. \n"
+ ],
+ "metadata": {
+ "id": "8Bj3LmxmDTdl"
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "mUNjvFsRDTdl",
+ "outputId": "743cc188-0d12-4637-fc37-d5aa1bfec34e"
+ },
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Libraries imported successfully!\n"
+ ]
+ }
+ ],
+ "source": [
+ "from qiskit.visualization import *\n",
+ "\n",
+ "print(\"Libraries imported successfully!\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #7:** Can you put it all together? \n",
+ "\n",
+ "Since we are using Python notebooks to install we will be using the `!pip install` command for this. \n"
+ ],
+ "metadata": {
+ "id": "CV9QMSD2DUIY"
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "id": "yHXWNXjwDUIZ"
+ },
+ "outputs": [],
+ "source": [
+ "!pip install qiskit\n",
+ "# Importing standard Qiskit libraries\n",
+ "from qiskit import QuantumCircuit #Importing the QuantumCircuit function from Qiskit. We will use this to create our quantum circuits!\n",
+ "\n",
+ "# We will use these functions to run our circuit and visualize its final state\n",
+ "from qiskit import Aer, execute \n",
+ "from qiskit.visualization import *\n",
+ "\n",
+ "import warnings # We are using this library to suppress some warning messages\n",
+ "warnings.filterwarnings(\"ignore\")\n",
+ "\n",
+ "print(\"Libraries imported successfully!\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #8:** Can you install qiskit? \n",
+ "\n",
+ "Since we are using Python notebooks to install we will be using the `!pip install` command for this. \n"
+ ],
+ "metadata": {
+ "id": "oVSD0FXbDUzq"
+ }
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "id": "aN4QhjT7DUzq"
+ },
+ "outputs": [],
+ "source": [
+ "!pip install qiskit\n",
+ "# Importing standard Qiskit libraries\n",
+ "from qiskit import QuantumCircuit #Importing the QuantumCircuit function from Qiskit. We will use this to create our quantum circuits!\n",
+ "\n",
+ "# We will use these functions to run our circuit and visualize its final state\n",
+ "from qiskit import Aer, execute \n",
+ "from qiskit.visualization import *\n",
+ "\n",
+ "import warnings # We are using this library to suppress some warning messages\n",
+ "warnings.filterwarnings(\"ignore\")\n",
+ "\n",
+ "print(\"Libraries imported successfully!\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### **Exercise #9:** Can you install qiskit `algorithms`? \n",
+ "\n",
+ "\n",
+ "Use the `import` command for this. \n"
+ ],
+ "metadata": {
+ "id": "xB-mBmyYHF7I"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "\n",
+ "from qiskit import algorithms \n",
+ "from qiskit.algorithms import AmplificationProblem\n",
+ "from qiskit.algorithms import Grover"
+ ],
+ "metadata": {
+ "id": "jw4_VFWpG-Ze"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "\n",
+ "\n",
+ "#### **Exercise #10:** Can you install the `algorithms` library for VQE? \n",
+ "\n",
+ "Use the `import` command for this. \n"
+ ],
+ "metadata": {
+ "id": "YLaKWaFMHu0a"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "from qiskit.algorithms import VQE, QAOA, NumPyMinimumEigensolver\n",
+ "from qiskit.algorithms.optimizers import COBYLA, L_BFGS_B, SLSQP, SPSA"
+ ],
+ "metadata": {
+ "id": "HAwjb6q9Hs73"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "---\n",
+ "#### **Conclusion**: \n",
+ "This marks the end of the Qiskit Libraries Review. "
+ ],
+ "metadata": {
+ "id": "609JYDhAHvjD"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "---\n",
+ "© 2023 Qubit by Qubit, The Coding School. All rights reserved. \n",
+ "
\n",
+ "Author: Shwetha Jayaraj"
+ ],
+ "metadata": {
+ "id": "XFXpzH8OE0_K"
+ }
+ }
+ ]
+}
\ No newline at end of file