Course Details
Subject {L-T-P / C} : CS3097 : Basic Quantum Computing Programming { 0-0-2 / 1}
Subject Nature : Practical
Coordinator : Shyamapada Mukherjee
Syllabus
(I) Introduction to Quantum Programming: Installation and setup of Qiskit, Understanding Qubits and Bloch Sphere representation, Implementing Basic Quantum Gates (Hadamard, Pauli, CNOT, Toffoli, etc.)
(II) Quantum Circuits and Measurement: Building and simulating quantum circuits, Quantum Measurement and State Collapse, Bell States and Quantum Entanglement Experiments
(III) Basic Quantum Algorithms: Implementing the Deutsch-Jozsa Algorithm, Grover’s Search Algorithm and its applications, Quantum Fourier Transform (QFT), Simple demonstration of Shor’s Algorithm
(IV) Quantum Computing Applications: Implementing Quantum Key Distribution (BB84 Protocol), Quantum Random Number Generation, Quantum Teleportation Experiment, Superdense Coding Implementation
Course Objectives
- Introduce students to quantum computing concepts through practical implementation.
- Provide hands-on experience with quantum programming using Qiskit.
- Implement fundamental quantum gates and circuits.
- Explore basic quantum algorithms and their applications.
Course Outcomes
(I) Demonstrate proficiency in using Qiskit for quantum programming.
(II) Implement and simulate quantum circuits with fundamental gates.
(III) Analyze quantum measurement outcomes and entanglement properties.
(IV) Implement basic quantum algorithms.
Essential Reading
- Nielsen, M. A., & Chuang, I. L., Quantum Computation and Quantum Information, Cambridge University Press
- IBM Research, Qiskit Textbook: Learn Quantum Computing using Qiskit, Online Resource
Supplementary Reading
- IBM, Qiskit Tutorials, IBM , https://qiskit.org/learn/
- PennyLane, PennyLane Fundamentals, Online Resource , https://pennylane.ai/codebook/pennylane-fundamentals