In this article we will briefly show the tool we built while learning quantum computing; alas, this article is not about teaching these concepts. We will be covering these in a series of articles soon.
At the start of our journey we were learning about qubits, and basic operations on them. A qubit (or Qbit) is a quantum bit. While a normal bit is represented as a simple one or zero, a Qbit is the state of a quantum particle, and thus has superposition. This means it can inhabit the space between one and zero. This complex state can be represented in lots of different ways. For example, a simple base “0” can be shown as as the sum of “Ks”. This says: “The state is made of one lot of zero, and no ones.” |φ> = 1•|0> + 0 • |1> Here it is as a single ket shorthand. This says: “It’s all made of the zero state.” |0>
Here it is as a vector. The first row is the amount of zero we have (one) and the second is the amount of one we have (zero). |1| |0| Here it is as a Bloch Sphere. This is probably the most common visualisation we use. The amount of of the zero state and the one state we have are both complex numbers. They have real and imaginary parts. Two numbers with two degrees of freedom means 4 degrees of freedom (or a 4D number if you will). However, because the squares of these numbers must add up to one, we lose a degree of freedom, and can cram this 4D number into “3D” space and draw it as points on the surface of a sphere.
The more we dove into this the harder and less intuitive it became for computer scientists like us. How, for example, do you get from the |φ> = α•|0> + β• |1> representation to working out the angles θ and φ in the bloch sphere? I won’t leave you hanging, because we had to work it out ourselves after not finding it anywhere we searched:
Θ = 2cos-1(α)
φ = log(β/sin(Θ/2))/i Then it comes time for Quantum Gates, which are linear maps that you apply to a Qbit. For example, the Pauli Gates:
The way these gates are applied is to multiply them by the Qbits’ vector. They are described at 180-degree rotations around the X,Y,Z axis of the Bloch sphere. Except that’s not exactly true. You see, the Bloch sphere is a really useful lie. It’s a way of cramming a number with degrees of freedom into 3D space, which means it does strange things. Let’s take the X,Y gates for example. If they were true 180-degree rotations as you were expecting, then |0> (shorthand for zero) would flip |1> (shorthand for one) and vice versa. The X gate does this; well done X gate. The Y gate, however, flips |0> to |i> (imaginary one). This is all really confusing, and we will be writing some articles about it in the near future to explain it. Right now however, we want show you the tool we built to help us understand it all. This was built in Unity3D at IBM’s Emerging Tech Labs. It represents the Qbit internally as two complex numbers, and then translates this into 3D animations so you can visualize what on earth is going on while at the same time viewing the maths though the UI.
If you want to download and play with it, the public github is here:
In Emerging Technology, we are constantly working on new research projects around security and biometrics. Since late last year, I spent some time researching age progression related problems using biometrics. One of the interesting problems with age progression was to create age progressed images with occlusions and in different age gaps for face subjects of […]
This year IBM Emerging Technologies UK submitted 10 out of 86 entries for TechConnect. TechConnect is a Europe wide internal IBM annual competition for individuals showcasing their work to senior technical leaders and decision makers. This years winning entry, “Showcasing our academic research”, was one of the entries from the UK Emerging Technology Team. It is a web application […]
The BBC Make It Digital tour is all about digital creativity and aims to inform and inspire people around the UK, both children and adults alike. When the tour visited Cardiff as part of the Harbour Festival I was delighted that Cardiff University would be showcasing “SHERLOCK”, a new kind of digital assistant that is […]