In 1981, the Nobel laureate Richard Feynman asked, “What kind of computer are we going to use to simulate physics?”
Nature isn’t classical, dammit, and if you want to make a simulation of Nature, you’d better make it quantum mechanical, and by golly it’s a wonderful problem, because it doesn’t look so easy.
Richard Feynman speech can be used to see how powerful quantum computing can be into letting us understand more about our universe, since quantum physics tries to explain and interpret how our universe is built from the deepest subatomic dimensions to huge macroscopic phenomena. This can lead us to ask ourselves if our classical computers are going to be able to deal with problems that nature by its essence shows us to be a quantum complex behavior, where most of them are exponential problems, which are unfeasible for classical computers to solve nowadays at a scalable time.
So the question is, how quantum computers could solve these kinds of problems someday? Within a nw perspective on treating information, closer with how our universe and nature behave, from the deepest levels and beyond.
This repository is focused on giving some knowledge about Quantum Computing and Quantum Information Theory, from the understanding of Quantum Computing and Quantum Information Theory, where we'll discuss Quantum Algorithms, Cryptography Protocols, and Quantum Information Behavior on graphs using Quantum Walks and Algebraic Combinatorics concepts, from the theoretical aspects till Quantum Programming with the IBM Qiskit.
These first notebooks give us a brief introduction about the basics of Linear Algebra, and Graph Theory that will be needed to a deeper understanding of the more advanced notebooks.
- Linear Algebra
- Graph Theory
In the following notebooks we will see detailed Quantum Computing concepts, from well-known aspects so as like Quantum Superposition and Entanglement, too simple and more complex Quantum Algorithms and its implementations in Qiskit.
- Introduction
- Qubit and Quantum States
- Single Qubit Gates
- Multi Qubit Gates
- Fun stuff
- Algorithms
- Deutsch-Josza Algorithm
- Grover Algorithm
- Quantum Fourier Transform
- Quantum Phase Estimation
- Shor's Algorithm
- Quantum Criptography
- BB84 Protocol
- Circuits
This last section is focused on Quantum Information and Algebraic Combinatorics
Further, you'll also be able to find my code from Quantum Programming Competitions hosted by Microsoft here