How does Quantum Computing work?
How does Quantum Computing work?¶
Previously, we looked at how to represent the state of a qubit.
Now, we’d like to discuss how to actually do computation with quantum systems.
Some questions we’d like to look at are:
What does it mean to compute with quantum systems?
What exactly is a qubit?
Which physical systems that show quantum behaviour can be used for Quantum Computing?
Do Quantum Computers actually exist?
Before we jump into the following sections, let’s clear up once and for all the last one question. Yes! Quantum computers exist! Moreover, later on in this book we’ll cover how to access a quantum computer and program one through the “cloud”. But for now, let’s answer the essential questions.
The Ingredients for Quantum Computation & How It Works¶
Before we move on to more formal ideas, I’d like to break things down just a little by using an analogy. We’ll call this “Making Lasagne”.
In order to make lasagne, we’d first need lasagne pasta. We’d need other ingredients too but we wouldn’t be calling it lasagne without the pasta. Next, we’d need a recipe on how to make the lasagne. Once we’ve found a good one, we can follow the recipe and make the lasagne. When we’re done, we have to taste the lasagne to see that our technique worked well.
Believe it or not, Quantum Computation follows a similar pattern.
First, we need qubits as these are the building blocks of Quantum Computing.
Next, we need a set of instructions for a doing a particular task with our qubits. This set of instructions is called an algorithm.
We then need to actually ‘do things’ with our qubits by following the instructions of the quantum algorithm. This is what we call the design and execution of a quantum circuit.
Finally, it would not make any sense to do all the previous steps without finding out the results. This is the measurement of our quantum system.
Let’s pull this all together now with the ideas that what we’ve learnt in Quantum vs Classical.
The result upon measurement gives us a final state of the quantum system after the algorithm has been applied. This directly tells us the impact that the algorithm has had on the system. Our “answer” to a problem/task (for which we have formulated the algorithm) is the quantum information revealed by the measured state. In many cases, we need to repeat the measurement a few times in order to reconstruct an idea of the quantum wave-function prior to wave-function collapse caused by the measurement.
This is like our thought experiment with Schrodinger’s Cat. In order to know what the superposition was before measuring, we need to see how many times we get a particular result. If we get one state 25% of the time and the other state 75% of the time, then our wave-function could have been something like this…
Remember that \(\alpha\) and \(\beta\) can be complex numbers, so they will not actually be 25% and 75%. But, they will have values that reflect this ratio between them.
This is how Quantum Computing works. We apply an algorithm for a particular problem or task in the form of some circuit being done on a quantum system, and then we measure the quantum system to see how the algorithm/circuit has taken effect. The final state or states (when we measure multiple times) gives us the quantum information that we need to answer the problem/task.
Criteria for Making a Quantum Computer¶
The necessary criteria for a functional and effective quantum computer were proposed by theoretical Physicist David P. DiVincenzo. There are seven (7), but here we will briefly outline the main points.
Controllable Quantum Systems¶
We need to be able to control our qubits to a good extent without collapsing the system before we need to collapse the system. The only way we can know that the final measured state is a direct result of the applied circuit, is if we can be certain (or near certain) of the system’s initial state (without measuring). This is what is called initial state preparation. Being able to give the qubit an initial state is fundamental for a functional quantum computer. If the qubit states were initialized randomly, then we will never be able to tell for certain how the circuit affected it.
The second point is the ability and the extent to which we can influence the state of the quantum system with suitable operations. How easy is it to carry out any circuit on this quantum system?
Reliable Qubit Measurement¶
We must be able to accurately determine what the final state of the qubit is when the wave-function collapses. How accurate is our measurement approach for reading the state of the qubit in this system, and what are the chances of getting an error in the reading? Are our devices sensitive enough to distinguish between the two measurable qubit states? The answers to these questions are essential for deciding whether a proposed quantum computational method is reliable, and should be developed further.
Scalability refers to the ability of a proposed method to develop into a full-size computer, with enough operational qubits to be the capable and powerful devices that we envision quantum computers can be. If our qubits cannot be controlled or measured accurately, or if they cannot “stay quantum” for a long enough time, then there’s a very low chance of scalability. Overall, scalability depends on the nature of the qubit system and the level of engineering required to manipulate/control the qubits in a defined manner.
Try to answer the following questions on your own, then click to reveal.
Do you remember the steps of Quantum Computing?
Qubits - We need qubits! These are the ingredients!
Quantum algorithm - A set of instructions on what to do with the ingredients.
Quantum circuit - Actually doing things with our ingredients by following the instructions.
Measurement - Finding out how everything turned out!
Why do we make multiple measurements of a quantum circuit?
The final states that we observe when we measure a quantum system is probabilistic. In order to get a full picture of the quantum state prior to measurement, we need to evaluate the probabilities for each measurable state. These probabilities will give us an idea of the quantum wave-function prior to its collapse.
What makes a proposed method for Quantum Computation scalable?
Scalability is dependent on the nature (type) of the qubits, whether we can control/manipulate the qubits reliably, the ability to prepare an initial state of the qubit and to accurately measure its final state. Scalability also takes into consideration the level of difficulty in engineering the physical circuitry for doing anything with the qubits.