How are qubits physically represented?

Why "0 and 1 at the same time" is not a good explanation

An introduction to the world of quantum computing

by Dr. Tomás Silveira Salles

Quantum Computing is fascinating, counter-intuitive, more than 30 years old, and yet somehow futuristic. What it is not is sorcery.

The general public articles on quantum computers have almost all headlines from sensational reports that I find very misleading. They make people think "this is only for scientists, I'll be enough if maybe one day I can use it". But quantum computers don't have to be somehow mystified with controversial, provocative statements. Even if you look at them soberly they are very impressive.

Sure, the topic of quantum computing is really not for the average person or Lieschen Müller, but an interested reader can understand more than some media seem to believe and get a good impression of what the thing is actually about.

If you've never heard of quantum computers before, this article probably isn't the best place to start. On the flip side, I haven't found a good introduction anywhere, so you can give it a try right here and now, too.

The absolute basics in a nutshell

To understand quantum computers, we need to separate the concept of “computer” from the machine we use every day

To think about a whole new type of computer we must first separate the general concept of "computer" from the actual machines we use every day. The same goes for the term "bit". From now on we will refer to the machines we are familiar with as “classic computers” and their bits as “classic bits” and use a somewhat more abstract definition for the two original terms:

One bit is an entity that can be subjected to an operation called "reading" (or "measuring"). The output of the read operation is binary, which means it has exactly two possible values ​​(mostly 0 and 1).

A logic gate is an operator that can be applied to one or more bits to change and combine their internal properties. What internal properties are available depends on what kind of bits are used.

A computer is a machine that uses bits and logic gates to run algorithms. That is, once a computer has been programmed for a particular algorithm, it receives a binary sequence (a series of 0 and 1) as input and uses it to prepare a set of bits that then pass through a series of logic gates where they are can be changed and combined. At the end the bits are read and the resulting binary sequence is returned by the computer as the output of the algorithm. Now that does reduce the computer to its processor, but that's exactly the interesting part here.

Now imagine if we were to now use the nucleus of an atom as a "bit" and measure the direction of the nucleus spin to "read" the bit (which we use as either "spin-up" or "spin-down" as Output received).

That would be an example of what is called a qubit (or "Qbit", "QBit", "Q-Bit" etc.). The "bit" in "Qubit" is still the abbreviation for "binary digit", which refers to the type of output of the measurement (two possible values), while the "Qu" in "Qubit" is an abbreviation for "quantum "is what indicates that the concept is based on the behavior of certain quantum systems (like the atomic nucleus). A computer that uses qubits as bits willQuantum computer called.

More than just new hardware

The mathematics behind it is completely different from the classic computer and allows completely new approaches to problem solving

Every time new materials and technologies make classic computers faster and more powerful, the math to design and control them gets a little more complicated. But deep down, the mathematical foundation that drives computer algorithms today is essentially still the theory developed by Alan Turing in the 1930s and 1940s.

Quantum Computing, on the other hand, is completely changing the game. The concept itself says nothing about the speed of the calculations or the size of the machines. In fact, the experimental quantum computers we have today are gigantic monsters that can only dream of becoming as fast as your smart toaster in the traditional sense. However, the mathematics behind the quantum computer is completely different from the classic computer and allows completely new approaches to solving problems instead of just accelerating the old approaches.

Well, down to business!

(Not quite so) classic computers

So far we have been spoiled by the fact that the computers we use today allow us to view the bit in the machine and that in an algorithm as the same thing. In other words, the physical implementation and the theoretical concept are so similar that the separation of the two rarely matters. The same goes for the Status of a bit (i.e. the values ​​of its internal properties) and the output of the read operation. We think of a bit as something that is 0 or 1 is, and reading it just means "looking" at it to find out which of the two values ​​it has. As we shall see, qubits and their strangeness force us to look at this very concept from a new perspective.

In the processor in your laptop, smartphone, tablet, etc., bits are implemented as voltage differences on electrical lines. We can get a “high” voltage on a line by connecting one of its ends to a voltage source and a “low” voltage by disconnecting it again.

However, the process of connecting and disconnecting does not take place immediately and the voltage difference on the line does not simply jump between minimum and maximum. As the line is connected, the voltage will gradually increase from a low value over a continuous range to a high value. The low value is not always the same, but there is a range of low values ​​that we accept as 0. The high value is also not always the same, but there is a range of high values ​​that we accept as 1. However, between the ranges of acceptable voltages for 0 and for 1 there is a gray area in which measurements would not be accurate enough.

Now we could invent a type of bit that is more similar to the behavior of these lines and call it Wibit (for “wire bit”).

A wibit would have a state that corresponds to a number in the interval. In order to "read" or "measure" a Wibit, we set two special values ​​and for which applies and then we map all values ​​in to 0, all values ​​in to 1 and all values ​​in would be mapped randomly to 0 or 1, higher values ​​are more likely to result in 1, lower values ​​more likely to result in 0.

Wibit measured values ​​in the course of the voltage over time

But as if that wasn't complicated enough, the fact that we place two lines very close to one another on a chip now comes into play, and they start to influence each other.

A current through one line creates an electromagnetic field, which in turn can create a current in the other line. To account for this in our wibits, we would conceptually have to add the possibility that two or more wibits are somehow connected to each other.

Unfortunately, in reality we have never found any use in Wibits and instead even viewed their complexity as our enemy. For this reason, countless resources are invested so that the electrical cables behave less like Wibits and more like classic bits. We carefully control the spacing between lines to reduce "crosstalk" and carefully choose the moments at which the voltage is measured to ensure that it is not in the gray area.

With qubits it turned out that we can use their peculiarities to our advantage, which is why we have willingly accepted them.

Neither 0 nor 1 nor both at the same time ...

It is difficult to find an introduction to the subject of quantum computers that does not contain a variation of the following sentence: "In contrast to a classical bit, which can only be 0 or 1, a qubit can be 0 or 1 or both at the same time!" . As you can see, there is now a version even in this text.

What's it all about? Under certain conditions, a qubit has a property that is called its “state”. This state is ... well, a point on the unit sphere of a two-dimensional complex Hilbert space.

Okay, the space and the unit sphere are both pretty difficult to imagine and even impossible to draw (hence no graphic here). And don't let the word "ball" fool you: this ball doesn't look like an ordinary ball at all. So we have to actually simplify the concept for non-mathematicians, but there is still no reason to go as far as "0 and 1 at the same time"!

For a less radical simplification, let's just replace the word "complex" with "real" above. The unit sphere of a two-dimensional real Namely, Hilbert space is just an ordinary circle, so we can make an analogy between our simplified qubit and a compass by comparing the state of the qubit with the direction the needle is pointing.

We now choose two special states, let's say "East" and "South" (they only have to be 90 degrees apart), which are mapped to 0 and 1, respectively, by the measurement operation. The result of the measurement operation is coincidentally, but the state of the qubit determines how to measure probability 0 and probability 1.

In other words, when we measure the qubit, we are basically tossing a coin, but one that doesn't necessarily land on each side the same number of times. The needle of the compass decides which side is preferred and how uneven the probabilities are. If the needle points to the east, the next measurement will definitely return a 0. If it faces almost to the east, but not quite (as in the picture above), it will with a high probability Output a 0 but possibly a 1. If the needle is pointing straight southeast, the output will be 0 half the time and 1 half the time.

Two aspects in particular have to be considered: First, sentences like "the state of the qubit is 0" or "the state of the qubit is 1" make no sense at all. The state of a qubit is a "cardinal point" and not a binary digit. Second, since states are vectors (with 2 coordinates in our simplified analogy), they can be combined, among other things, by addition, so that all possible states can be represented as combinations of the two selected directions east and south. We write, for example:

If you want, you are welcome to start a thread now to discuss whether southeast is "south and east at the same time" or "neither south nor east". However, this discussion is less about computer science than about language. The important thing to understand is that the state of a qubit is a point on a circle (just not a circle that you can draw).

Annotation:If you've read anything about quantum computing, you'll notice that I got the floor Superposition so far avoided. In this context, superposition is just an alternative term for "combination". More precisely, "linear combination". For example, we have just shown northwest as a linear combination (i.e., as a superposition) of east and south. This word is very likely a source of confusion for quantum physics. Even worse is the use of the word "measurement" when it comes to quantum states. One should always be careful with the physical terminology and not connect the concepts too strongly with the meanings that the corresponding words assume in everyday language.

What makes the quantum computer so powerful?

The state of a qubit is much more than just a "bit" of information. It takes 4 real numbers,,, and (which together represent 2 complex numbers) to describe it. These can have any value as long as they meet the following condition:

Is that why quantum computers are so powerful? No, sorry that I have to disappoint you here. First and foremost, there is the problem that the measurement process still only outputs a 0 or 1 at the end, so that we lose a lot of information.

Second, even if we could somehow get the full state of a qubit (which we can't), 4 real numbers per qubit really isn't much. We now represent real numbers with 64 classic bits and that is usually more than enough for our needs. Furthermore, the normalization condition implies that we only need to know the value of 3 of the 4 numbers plus the sign of the last one, so we would only need classic bits to encode each qubit.

This may be a large number, but it is a constant and would therefore linearly relate the number of classical bits needed to simulate a quantum computer to the qubits used. Not enough to turn the world upside down.

What about the fact that the measurement process is random while reading a classic bit is not? Is that something special? No, unfortunately not either. Simulating randomness is not difficult with classic computers. Of course it's not a real coincidence, but it's close enough for our needs again.

What is really unique about the quantum computer is the concept of entanglement.

Do you remember how I wrote that qubits don't always have a state? If they always had that, quantum computers would have long since been discarded as expensive, slower versions of classic computers.

If you build a quantum computer and isolate the qubits in the register from the rest of the world, the collection of qubits in the register always has a state. But subsets (including individual qubits) only have states if they are not "entangled" with the others. Now, in case you are waiting for me to define what entanglement means, you have just missed it.

The definition says that a number of qubits are entangled if no subset of them has its own state. In practice, this means that measuring each individual qubit one after the other is not a sequence of independent operations. Each measurement has an influence on the output of all further measurements.

Why is that so interesting? Because the states of an entangled collection of qubits have a much higher number of degrees of freedom than the states of an unentangled collection with the same number of qubits.

The number of parameters required to describe the state of several qubits is not proportional to the number of qubits but to the number of possible measurement results. For a single qubit the possible outcomes are 0 and 1, so we need 2 complex numbers to describe its state (remember the two-dimensional complex Hilbert space?). For 3 qubits the possible outputs are 000, 001, 010, 011, 100, 101, 110 and 111. So you need 8 complex numbers to describe the state. For qubits we need complex numbers to describe the state of the collection.

If, on the other hand, a collection of qubits is completely unentangled (that is, each of the qubits has its own state), the state of the collection can be represented as a combination of these individual states, so that only complex numbers are needed. Even with low values ​​such as, the difference between and is enormous.

Furthermore, the additional freedom does not only come from the number of parameters. Entanglement can even enable (so) new states: Imagine you have 2 qubits and and these are not entangled, so each have their own state. Qubit has a probability of measuring a 0 and for a 1. Likewise, we define and.

Now what is the probability of each possible outcome of the pair? Easy:

Note that if is, is at least or also 0, regardless of how you choose the states for and.

If now and are entangled, the state of the pair of 4 independent complex numbers is described, one for each possible output, and can thus easily be set such that:

In other words, we can interlock and in such a way that for each of them the measurement result has an equal probability of being 0 or 1. But if we measure both, we are guaranteed to get two different values. This shows how entanglement can expand the set of possible states for multiple qubits.

How not to compute values ​​of a function

Another very simplified explanation about quantum computers is usually:

"If you want to calculate the values ​​of a function with a classic computer, you have no choice but to calculate each value individually. A quantum computer can calculate all values ​​at once!"

It's a little harder to explain now, but I'll do my best. The whole thing has its origin in a routine that is often used as the first step in quantum computer algorithms. Let's call it the "All Values" trick. The following is a brief description of it without getting into mathematical theory:

Let's say a function takes 3 binary digits as input and outputs 2 binary digits. The first thing we need is a logic gate, which corresponds to but is applied to the states of qubits (and depending on the complexity it can be difficult to build such a gate, but we assume we have made it). We prepare the quantum computer with 5 qubits: 3 correspond to the input parameters of the function, the other 2 to the output parameters. First, the 3 input qubits run through what are known asHadamard-Gates, which ensure that all possible measurement results for these 3 qubits are exactly equally likely (in compass terminology: all 3 needles are pointed to the southeast). Then all 5 qubits run through the gate, which corresponds to what ensures that the input and output qubits are entangled. Finished.

The result is 5 entangled qubits with the following property: If all 5 qubits are measured and the measurement results in the binary sequence, we have the guarantee that it is true.

By the way, it doesn't matter in which order the qubits are measured. You can even measure the output qubits first (with the result) and then measure the input qubits (with the result), and again you have the guarantee that this is true.

This trick has the effect that the entire function is included in the entanglement of the qubits. Here, "entire function" actually means the complete mapping, that is, the collection of all pairs of input value and corresponding output value.

It shouldn't be too surprising that this is possible. After all, the state of the 5 qubits consists of several real numbers and a single real number would be sufficient to represent all input and output value pairs of. Remember that the decimal representation of a real number can contain any number of digits (even infinite), and we can use these digits to encode information, just as we encode files with binary digits on our hard drives.

It is very impressive that all of this information was encoded so quickly by sending the qubits through a single gate. Now this particular gate usually only exists in theory and in practice it is replaced by a series of smaller, simpler gates. As a result, the number of operations that are performed on the qubits ultimately depends on the complexity of the function.

Did we now compute each value of when we coded the function in the entanglement of the qubits? Or did we not calculate a value for at the moment, and did we calculate exactly one value later when we took the measurement? This is probably another question for a forum thread.

While the "calculated every value" view is technically not wrong, it is very misleading. It makes things seem like the purpose of the trick is to get values ​​from in the first place, and that's a very naive approach.

Computing values ​​of a function using this approach would be completely pointless, as it could easily be simulated using a classic computer and with much less effort:

To simulate the measurement of the first 3 qubits, create a random binary sequence. To simulate the measurement of the 2 remaining qubits, compute.

The "all values" trick only makes sense if no measurement follows immediately afterwards. At least no measurement all Qubits. I'll try to explain this below with an example.

Asking the right questions

Entanglement makes quantum computers powerful. But the best screwdriver is still a terrible hammer.

The famous algorithm that Peter Shor wrote in the 1990s (which breaks RSA encryption through quantum computing) is one of the best examples of how and what a quantum computer can be used for.

At the core of the problem we have another function, namely modular exponentiation. That is, we have a number (part of a secret message, encoded and encrypted) and a number (the RSA public key) and is through

Are defined. The algorithm starts with the "all values" trick, but we are not yet demonstrating a measurement of all qubits. A complete measurement would just give some value of, and we could have done that with a classic computer. Instead, we skillfully manipulate the state of the qubits (and thus the probabilities of the various measurement results).

The ultimate goal is thatperiod of to discover, i.e. the smallest positive number for which holds for any. With the period you can then decrypt the secret message without factoring the public key. (If you want to know how to do that, check out this article we wrote as an introduction to RSA encryption.)

After using the "all values" trick, we only measure the output qubits and thus get some value that actually doesn't interest us at all. Well as we described aboveif If we were to measure the remaining qubits now (but we won't yet), we would be guaranteed to get a value for which applies.

How many such values ​​are there? First of all, we count how many results for the measurement operation (of the remaining qubits) would be possible at all without the condition that they must be mapped to. That's just 2 to the power of "number of input qubits", and we'll call that number (like "input") from now on. Since exactly one value from each interval of input values ​​fulfills the condition, we find that there are overall values ​​that are still possible measurement results. In other words, the parameters in the state of the remaining qubits are exactly different from 0.

By using more logic gates, we bring the qubits to a new state where the new parameters are combinations of the old parameters and the measurement results that are most likely are those that are very close to multiples of. Now let's finally measure the input qubits.

We are still miles from the end - you still need a lot of difficult math to calculate the period from the measurement result - but the quantum computer has done its job. From here we can continue with a classic computer.

Like I said, quantum computing isn't for everyone. But in front of the fantastic, mysterious facade, one should say goodbye. Quantum computing is difficult enough, even if you look at it soberly.