
This course introduces quantum computing through a three-pronged approach of concept explanation, math, and coding, enriched by vivid animations and practical Python and linear algebra practice.
Install Anaconda on macOS, launch the server to access Jupyter notebooks, and install essential packages via pip, including numpy, for quantum optics and machine learning.
Install Anaconda on windows, launch Anaconda Navigator, create a new Jupyter notebook, and install pennylane in the conda environment using the terminal with pip; the same packages as Mac OS.
Explore DiVincenzo's criteria for a quantum computer, including a scalable physical system with logical qubits, arbitrary state initialization, long decoherence time, a universal set of quantum gates, and qubit measurement.
Explore vectors in two-dimensional and complex spaces, decompose with a basis into x and y components, and use complex conjugates to normalize qubits in C^2 to the Euclidean norm.
Compute inner and outer products in a complex space, using bra vectors and the adjoint (dagger) through transpose and complex conjugation to form the Hermitian matrix.
Explore linear independence, span, and orthogonality in vector spaces, visualize basis decomposition in 3D, and apply Gram-Schmidt to build orthogonal bases with a coding exercise checking matrix independence and orthogonality.
Explore the first postulate of quantum mechanics by expressing a qubit as a sum of basis vectors with complex coefficients in a Hilbert space, defined via an inner product.
Learn to combine two qubits into a four-dimensional Hilbert space using tensor (Kronecker) products, and verify unitary matrices and quantum gates.
Explore the second postulate, representing a qubit's state after gates with unitary matrices, and introduce the super operator from multiple gates, using Euler's formula for complex amplitudes and phase shifts.
Explore how the Hadamard gate, Pauli matrices, and phase shift transform qubits, visualize basis vectors, and implement these gates in Qiskit to analyze state vectors.
Visualize a qubit on the Bloch sphere, rotate with Hadamard, Pauli, and phase-shift gates, and simulate these transformations in Qiskit to understand state vectors and rotations.
Build a quantum circuit with six classical bits, measure to produce random outcomes, histogram counts, convert binary results to decimal, and generate a random number from 1 to 64.
Discover eigenvectors and eigenvalues, derive them by solving det(a minus lambda times identity) equals zero, and diagonalize matrices using p, d, and p inverse to simplify matrix powers.
Examine projection techniques, the concept of expectation value, and the singular value decomposition, revealing how projections use matrices, bra-ket forms, and a rotation–stretch–rotation interpretation.
Master the third postulate of quantum mechanics, the measurement process, and the born rule, exploring measurement operators m0 and m1, eigenvalues, and qubit state probabilities.
Explore Schmidt decomposition, bell states, and entanglement by expressing two qubits with tensor products of basis vectors, build a bell-state circuit with a Hadamard gate and CNOT to measure entanglement.
Explore how the cnot gate flips the second qubit when the first is one, represent the two-qubit state with a matrix, and create a bell state with a hadamard gate.
explores linear operators and density matrices, comparing pure and mixed states, and demonstrates density matrix calculations, traces, and how quantum gates act via matrix adjoint on density operators.
Learn how to obtain reduced density matrices via partial trace from multi-qubit states, extract Bloch vector components, and visualize mixed states inside the Bloch sphere.
Explore the Toffoli (cc arcade), swap, and control phase gates, including how two controls flip a target qubit, swap qubit values, and apply phase shifts with e^{i theta}.
Explore the Fredkin gate, a controlled swap built from three CNOT gates and a Toffoli gate, and demonstrate building quantum gates from scratch.
Explore parallel gates and serial gates, using tensor products of Hadamard gates to form parallel gate constructions and count Hadamard gates in circuits.
Explore the no cloning theorem and its implications for forking quantum states, showing universal cloning is impossible for arbitrary states and only orthogonal states can be cloned in quantum circuits.
Explore the Peres gate and the V gate (square root X), show adjoint operations, and build a quantum or gate by combining these gates into scalable circuits.
Explore boolean algebra with base two and truth tables for 0s and 1s. See how gates like OR, AND, XOR, CNOT, and Toffoli gate operate on qubits in quantum circuits.
Explore the kbsc and mqc circuits, showing how a third qubit encodes y greater than x and how a fredkin gate enables conditional swaps.
Explore quantum half adders and full adders, using Perez and Toffoli gates to compute sum and carry, and build a ladder adder with CNOT, V, and V† gates.
Explore quantum half subtractors and full subtractors by implementing subtraction with quantum gates and circuits, showing difference and borrow for various input cases.
Explore how a quantum multiplexer and demultiplexer route qubit inputs using Fredkin gates, including 2-to-1 and 1-to-4 configurations, with circuit implementations and measurements.
Design and simulate a quantum adder circuit by chaining full adders to perform two-bit and four-bit addition, reverse input bit order, and measure results for verification.
Explore quantum multiplication circuits using partial products and Toffoli gates, and implement a two-by-two quantum multiplier in Qiskit with adders. Verify results via measurements and carry handling.
Demonstrate building and testing a quantum bcd encoder and decoder, including a 4-to-2 encoder and a 2-to-4 decoder, with circuit construction, measurement, and integration.
Explore quantum latches and quantum counters, and observe how the enable pin and T value flip qubit states in an asynchronous storage circuit. Consider implementing the design in Qiskit (optional).
Explore the quantum barrel shifter and rotator, showing right and left shifts with Fredkin gates and implementing parametric shifter and rotator circuits that use no wasted qubits.
Explore how quantum increment and decrement circuits operate on n-qubit registers, show wraparound behavior from all ones to zero, and implement these circuits in cascade with controlled rotation gates.
Explore quantum RAM and how memory addresses convert binary numbers through a decoder to retrieve information, while noting that no quantum circuit is required.
Explore a quantum arithmetic logic unit that uses inputs A and B with an opcode to perform sum, minus, and xor, via a lookup table in a Python circuit.
Explain the quantum Fourier transform, its relation to the discrete Fourier transform, Nyquist frequency and root-of-unity concepts, and a practical quantum circuit with hadamard and phase gates, plus applications.
Explore amplitude amplification, period finding via the quantum Fourier transform, and quantum walks, and show how classical and quantum algorithms can be integrated.
Explore the Deutsch-Jozsa algorithm to distinguish constant from balanced functions with a single query using phase kickback. Understand how the oracle, Hadamard gates, and measurement reveal the function type.
Explore Simon's algorithm to reveal the secret string s using string dot products modulo two, the generalized Born rule, Hadamard circuits, and Gaussian elimination on orthogonal states.
Learn superdense coding by using entangled qubits and four Bell states to encode two bits of information; Alice encodes on her qubit and Bob decodes by disentangling and measuring.
Explore quantum phase estimation as a method to find eigenvalues of unitary gates, using phase kickback, controlled phase shifts, and the inverse quantum Fourier transform, with a Qiskit implementation.
Optimizes the search by boosting the target state's amplitude with Grover's algorithm through inversion along the mean, using oracles and a diffusion operator to reach high probability with sqrt(N) iterations.
Explore Shor's algorithm for factoring N with a quantum computer, using gcd and modular arithmetic, the quantum Fourier transform, and phase kickback, and discuss RSA implications.
Explore quantum teleportation using entanglement to transfer a qubit from Alice to Bob, including CNOT and Hadamard gates, classical bits, and conditional X and Z corrections; implemented with Qiskit.
explore quantum counting through the Grover iterator, inversion along the mean, and phase estimation, revealing how to encode the number of solutions in qubits and implement in Qiskit.
Explore Hamiltonian simulation on a quantum computer, encoding energy with a hermitian Hamiltonian and implementing the time evolution operator e^{-iHt} via the Trotter Suzuki algorithm, diagonalization, and quantum circuits.
Examine quantum walks using a coin operator with a Hadamard coin and a conditional shift to create superpositions and interference, producing a spiky quantum distribution versus a classical walk.
Learn how the HHL algorithm solves x = A^{-1} B by encoding A in its eigenbasis, applying Hamiltonian simulation and quantum phase estimation, and using controlled rotations for 1/lambda_j scaling.
Apply the variational quantum eigensolver to map the hydrogen hamiltonian to qubits, build a circuit ansatz, and measure energy via quantum phase estimation while applying gradient descent.
Explain how QAOA tackles max-cut on graphs by encoding edges into a cost function and using a quantum circuit with Hadamard gates to sample near-optimal colorings.
Explore quantum least squares fitting and its reduction to a classical least squares problem using a basis matrix and pseudo inverse; compute slope and intercept from data.
Introduce quantum photonics and Q modes, visualize phase space of position and momentum, and demonstrate vacuum state manipulations with squeeze, displacement, rotation, cubic phase, and Kerr gates in strawberry fields.
Study continuous variable quantum information theory by using annihilation and creation operators to represent position and momentum, and explore displacement, squeeze, rotation, cubic phase operations, and Gaussian states.
Explore Fock states and occupation number representations, then construct the Wigner function via Weyl displacement and discuss homodyne, heterodyne, and photon-counting measurements.
Explore quantum teleportation with photonics using 50/50 beam splitters to entangle Q modes and apply the standard algorithm, then examine Gaussian cloning and why no cloning theorem prevents exact replication.
Explore boson sampling in photonic circuits, using permanents and creation operators, and learn Gaussian boson sampling with squeezed states, beamsplitters, and Python code via Strawberry Fields.
Explore how time domain photonic circuits entangle multiple q modes with a beam splitter, rotation gate, and squeeze gate in a compact, scalable system.
Explore instantaneous quantum polynomial by using squeeze gates in q-mode circuits and homodyne measurements on momentum, with momentum, controlled momentum, and cubic phase gates.
Learn quantum machine learning with the Pennylane library, applying classical ML techniques like supervised and unsupervised learning using quantum functions, and explore gates, measurements, tensor operations, and noisy backends.
Explore quantum embedding, representing data with qubits through angle, Spacy's, and amplitude embeddings, using rotations and basis representations for datasets like redness versus probability of being eaten.
Explore variational circuits, compute quantum gradients via the parameter shift rule, and evaluate multi-variable gradients by shifting parameters and comparing observable expectations.
Explore quantum feature maps as the precursor to support vector machines, using a kernel and qubit states to separate data by class through a mapped third dimension.
Explore barren plateaus and the narrow gorge in quantum learning. Global cost functions produce flat gradients; local costs per qubit restore trainable gradients.
Explore the relevance of quantum machine learning by refreshing quantum algorithm concepts and applying new material like quantum embedding and Fisher information matrix.
Explore quantum machine learning with TensorFlow and Strawberry Fields, using parameterized circuits and gradient tape to map variables and optimize displacement toward Fock states.
Learn quantum state learning by training a quantum circuit with rotation, displacement, and squeeze gates to reproduce target states, such as Fock states, using machine learning and TensorFlow.
Explore quantum machine learning with Pennylane by implementing a variational quantum eigensolver using a molecular h2 Hamiltonian mapped via Jordan-Wigner.
Learn about quantum support vector machines with a partial quantum kernel approach. Embed data, compute a quantum kernel from quantum inner products, and train a hybrid model in Python.
Explore principal component analysis for dimensionality reduction and variance explained by principal components. Learn quantum principal component analysis with density embedding, quantum walk, and phase estimation to obtain eigenvalues.
Explore variational quantum classifiers (VQC) for classification, using amplitude embedding with two qubits and a variational ansatz to classify iris data, driven by cost functions and optimizers.
Explore quantum k-means clustering using the swap test to classify a point by its distance to cluster means, with amplitude or angle embedding in Pennylane.
Explore the quantum convolutional neural network, using a four-qubit quantum filter on two-by-two patches with pennylane to compare quantum and classical models on the emnist dataset.
Discover quantum optical neural networks that use photonic qubits and Strawberry Fields devices with PennyLane, encoding with quantum embedding and optimizing a cnot-like gate through optical displacement and gates.
Explore quantum generative adversarial networks, where a generator creates fake data and a discriminator distinguishes real from fake, in an exercise you can try on your own.
Explain how decoherence causes quantum error and noise, summarize bit flip, phase flip, and bit-noise flip errors, and show how a hadamard sandwich corrects NF errors.
Learn how physical qubits become a logical qubit through Shor code, using nine qubits to correct bit flip and phase errors via error syndromes and ancilla-assisted measurements.
Explore stabilizer codes and ancillas to map and correct error syndromes, then build a quantum noise model in Qiskit with gate and measurement errors.
Explore the XZZX surface code for efficient quantum error correction, using stabilizers and neighboring qubits to detect and distinguish bit and phase errors with fewer qubits.
Explore entropy and mutual information in classical and quantum contexts. Learn to compute entropy from density matrices and partial trace with Bell states illustrating entanglement.
Explore Kullback-Leibler divergence and quantum relative entropy to measure differences between probability distributions and quantum states, including relative entropy of entanglement and its non-negativity.
Explore Holevo's theorem and how accessible information bounds mutual information in quantum states, showing that entanglement and density matrices cap information to n qubits, with superdense coding illustrating the limit.
Explore how heat arises from information loss via Landauer's principle, contrast irreversible versus reversible quantum gates, and apply Margolus-Levitin and Boltzmann entropy to bound computation energy and speed.
Using a rho and sigma example, apply trace distance to quantify how different the states, with the result 1/48; relate fidelity to the trace of sqrt(rho) sqrt(sigma).
Derive the quantum uncertainty principle from variance and expectation values, using the commutator and Schwarz inequality, with position and momentum as a concrete example.
Demonstrate how Solovay-Kitaev's theorem lets you approximate any unitary gate with a universal gate set, using Pauli matrices, Hadamard, phase, and CNOT to form a dense subset.
Explore Wehrl entropy alongside von Neumann entropy, examine Husimi (Q) functions, and use Lieb’s theorem to prove strong subadditivity of quantum entropy via concavity and partial trace.
Explain Gottesman–Knill theorem enabling efficient classical simulation of state preparation, Clifford gates (Hadamard gate, phase shift gate, and cnot gate), and measurement, and outline Eastin–Knill theorem limiting fault-tolerant universal gates.
Explore Bennett's laws and the relation between qubits, bits, and phenomena like superdense coding and quantum teleportation. Learn the partial transpose, Peres-Horodecki criterion, and entanglement measures, focusing on logarithmic negativity.
The lecture explains the no broadcasting theorem as an extension of no cloning: pure states cannot be copied, but multiple partially entangled qubits can broadcast non-commuting mixed states.
Explore the no-hiding theorem and no-communication theorem, which describe quantum information conservation and the limits of communicating with entangled qubits, while noting superdense coding uses qubits plus classical bits.
Explore the no teleportation and no deleting theorems, showing quantum states cannot be determined from a single measurement or erased by a unitary, because quantum information is preserved.
Explore local operations and classical communication (LOCC) and entanglement swapping, including a Bell-state teleportation example and a Qiskit demonstration of swapping entanglement with CNOT and Hadamard.
Study quantum channels as processing of quantum information, including storage and transfer, using density matrices and cross operators. Compare classical, quantum, and entanglement-assisted capacities in channel communication.
Explore how quantum repeaters extend long-distance quantum communication by swapping qubit states to rejuvenate information, and apply entanglement distillation with entanglement swapping to boost entanglement quality.
Explore quantum key distribution with the Bb84 protocol, where Alice sends qubits in random bases to Bob, who measures and returns results; the correct-basis measurements form the secret key.
Welcome to Quantum Computing A-Z! In this course you are going to be introduced to almost the whole field of Quantum Computing all within 10 hours of material! While the material was lot of breath, there is still some depth to quite a bit of the material, so it won't be easy! The entire course was created using ManimGL math animation software, so it will be easy on the eyes and a pleasure to watch!
-------Why did I make this course?----------
I was learning Quantum Computing on my own as well as ManimGL. I didn't see a resources online that used both these skills together so I figured I would make such a course. It took 4 months but was worth the effort!
--------Why is this course Unique?-----------
This is one of the few resources where we have video dialogue, concepts explained with good animations, strong math emphasis, and coding in 1 course! This course covers a wide array of topics and does so elegantly. Hope you think so too!
----------Who is this course for?-------------
- High School/University Graduates
- Have Experience in Programming
- Knowledge in Linear Algebra and Quantum Mechanics
---------Tips on Taking this course?----------
- Take Notes and write down all concepts + math equations
- Try to Write the code on your own!
- Enjoy the course! There is no stress and no rush
----Are you grateful for this opportunity?-----
Yes absolutely! To have the opportunity to teach in front of lots of bright young minds is an honor! On top of that, I am grateful to all the resources (online, textbook, and research papers) that contributed to the creation of this course. I would like to specifically thank IBM's Qiskit Team, Xanadu's Pennylane Team, 3Blue1Brown's ManimGL amazing software, and lastly all of you, the ones interested in taking this course!
And Remember, most importantly, have fun taking the course!