Path: blob/main/notebooks/summer-school/2021/lec2.1.ipynb
3855 views
Simple Quantum Algorithms (part 1)
Elisa covers the basics of qubits, Dirac notations, basic gate operations (e.g. Hadamard gate, NOT gate, Controlled-NOT gate, etc.), and the Bloch sphere representation of a qubit. Elisa then introduces few basic quantum algorithms to show how quantum computers work, and to show certain advantages over the classical system.
Elisa introduces oracle operators, and we want to work out their properties using the fewest queries possible. We can build a phase oracle from a classical oracle for use in the Deutsch-Jozsa algorithm. Deutsch-Jozsa algorithm determines whether a given function is constant (i.e. output will be always 0 or always 1) or balanced (i.e output is 0 for half the inputs and 1 for the rest). Elisa gives the intuition of this algorithm and follows through the mathematics step-by-step.
Suggested links
Download the lecturer's notes here
Read Microsoft on Quantum Computing for Computer Scientists
Read Classical Computation on a Quantum Computer Description: Understanding reversible in computer science (and also quantum computing being reversible is usefull).
Read about Quantum Oracle Functions Description: Understanding of Quantum Oracle Function and implementation of an Oracle function in Qiskit
Read about the Deutsch-Jozsa Algorithm Description: Understanding of Quantum Oracle Function
FAQ
In other words, an oracle is like a 'black box'. It gets an input and creates an output that one can measure but actually cannot see inside the black box, which means one doesn't know its property (in this case, one doesn't know if the function is constant or balanced). The goal is to find the property of the oracle.
In another way, we can mention that a function ‘f’ is called balanced if it is equal to 1 for exactly half of all the possible x, and 0 for the other half.
Other resources
Read by Isaac Chuang and Michael Nielsen on Quantum Computation and Quantum Information Textbook
Read IBM on Qiskit textbook