Quantum Logic Q&A for Engineers

This is an active QC simulator, which provides a programming interface, as well as a programmer's visual model, for QC operations. It's not finished yet, but you're welcome to browse. Please give feedback to qc@machinelevel.com!

©2000-2016 All rights reserved. For more information, please send email to qc@machinelevel.com


As actual physical quantum logic devices begin to emerge, part of my professional role these days is to bridge the gap between software engineers and the practical quantum world, specifically quantum logic and information. Occasionally, good friends of mine (Nick, Vik, Ruslan, Sergey, Dad) ask about related topics. Sometimes they send email, sometimes they post articles on Facebook and tag me in them. This page is my way of keeping the answers all in one place.

The following is a collection of answers, in pop-up book form, so that the quantum logic behind them can be played with. For example, try clicking on the "QCEngine" logo in the upper-left.

Caution: These answers reflect my current understanding, but sometimes they'll be wrong. They might be correct at the time I wrote them and then be come wrong later, or they might have been wrong to begin with. I'm okay with that if you are.

Q: What's the meaning of this article about loopholes in Bell's Theorem?

(from Vik and Ruslan, 8 Dec 2016)

Quick Answer

These experiments are designed to show whether quantum-entangled states and "spooky action at a distance" can be explained any other way.

Here's a good high-level example using a coin toss: Suppose I take two coins, and entangle them (using my pocket coin-entangling machine), so that the next time you flip them, they are absulutely guaranteed to produce the same value as each other. That value is not pre-determined; it's still completely random.

It doesn't matter when or where you flip the coins. You can give one to a friend far away, and even if you flip them at the same time, their values will match, with no speed-of-light delay to worry about. You can even flip them in any order. You can flip one now, and then leave the other for your great-granddaughter in a box with a note that says "Guard this carefully. The first time you flip it, it will come up 'tails'. Use it wisely."

Note: These magic coins aren't exactly fictional, they're just (as of 2016) a little ahead of our tech level. To make them, you'd need two physical qubits (maybe photons trapped inside tiny silicon wafers like very angry bumblebees), a quantum logic device to operate on them (probably built into the same chip), and then a spiffy digital coin which can take a regular digital 0/1 bit and control which face it lands on. I'm tempted to believe someone has built one of those already.

...so about the loophole

Let's say you give someone a pair of these quantum-spiffy coins, and they say "Aha! I know how that works, and it's not quantum entanglement at all! There's no such thing!" You ask for his explanation, and he says one of these:
  • "There's a radio transmitter in the coins, so when you flip one, the other one knows what the answer was."
  • "The values were pre-determined when you entangled them, and stored inside the coins."
Your job is to show that his explanations can't possibly be right, and the effect can only be explained by quantum entanglement. That's what these experiments are all about.

...about FTL

Given that these coins work, and the heads/tails correlation happens without regard to the speed of light, can you think of a way to use this to actually send information faster than light? So far, no one has.

Hands-on Fun

If you're curious or technical, and want more detail, here are some things to play with.
1.1 Quantum Coins
Here's a program which flips any number of (non-entangled) quantum coins, and prints the result.

(When you run the program, a set of quantum logic gates should be constructed, along with a circle-chart which shows the probability of different states in the quantum system. It's more important to play with these than to understand them at this point.)

Things to try:
  • Run the program several times (just bang on the Run button like a monkey), and watch the output.
    (You can either click "Run this", or else just shift-enter in the code box.)
  • Notice that the little 1's and 0's at the end of the gates match the heads/tails in the result printout, and also matche the 2-bit number in the circle chart.
  • Click the quantum gate diagram to step through the program, both forward and backward.
(You can also just use shift-enter in the code window)
(You can also just use shift-enter in the code window)
More things to try:
  • Change the number of coins in the first line of the code.
  • Comment out the qc.read(), and run the program. This will show you the state just before the collapse (the coin toss).
  • Replace the qc.read() with qc.read(1) or qc.read(2), to collapse only one of the states.
  • Insert a qc.peek() instruction to peek at the probabilities at any time in the program.

1.2 Quantum Entangled Coins
Here's a program which demonstrates entanglement of two qubits.

Try this:
  • Run the program several times, and watch the output. Notice that the values of the two bits are always random, but always match.
  • Click the gates to watch the entanglement happen.


Here's the same thing, but where the qubits are read at different times.


1.4 Physical implementation using quantum photonics
In modern (2016) quantum photonics systems, this can be implemented using photons in a path-separated silicon waveguide on a microchip, or a glass plate. The actual waveguide circuit ends up looking something like this.

Things to do:
  • Notice that this program does exactly what the non-entangled coin toss above does.
  • Change the number of qubits (must be a multiple of 2).
  • Single-step over a beam-splitter to see how it's similar to the Hadamard gate we saw earlier. A beam-splitter is the same as a half-silvered mirror in regular ('bulk') optics, but the silicon equivalent is achieved by bringing two waveguides very close together. This diagram is not to scale.


The actual waveguide circuit ends up looking something like this (referred to as a 'probabilistic postselected CNOT gate'). These devices actually work today, in the real world.

Critical note:


More Reading:

1.5 Pre-selecting Basis
In the paper this question is originally about, my understanding is that one of the things they're trying is pre-selecting the measurement basis.

Coins won't actually help understand this, but polarized photons will. I should insert a discussion here about photon polarization, but am about out of time, so here's the scrappy version: Choosing the 'basis' in this case refers to whether or not you hold the polarizing filter by 45 degrees. If I send you a vertically-polarized photon, and put it through a vertical filter, it'll get through. If you rotate your filter by 45 degrees, you'll get a random bit, because it'll have a 50/50 chance of getting through.

...so unlike a coin toss where we can only ask one question, real quantum states give us the ability to choose which question we ask.

By randomly pre-selecting the basis (before outside of the entanglement's light cone), the experiment attempts to show that then entangling event couldn't have encoded enough information to produce the entangled results classically.

Note: This is just my rough quick-sketch interpretation of the general gist of this experiment. It's not exhaustive, or even correct. Still, it's fun.

Try this:
  • Run the program several times, and watch the output.


That's it for this one. If you've got more questions or feedback, please send them on to me at qc@machinelevel.com.
- ej