mode list [spoilers]

Rules

Here's a puzzle: Design a simple apparatus with the following properties:
  1. There is an emitter in the middle, a detector on the left, and another detector on the right. When you click the emitter, it sends a message to the left and a message to the right.
  2. Each detector has a three-position switch. When a message is received, the detector turns red or green, depending on the content of its message and on its switch-setting.
  3. Except as specified in item 1 above, there is no communication. No information is passed from either detector to the other, or to the emitter.
  4. Also there is no memory. Each detector is Markovian. At the time each message arrives, it turns red or blue depending only on that message and the switch-setting at the time, independent of prior state, independent of time and everything else. The emitter is Markovian also.
  5. No matter how the switches are set, the detectors turn red/red just as often as they turn green/green, on average. In other words, there is no built-in preference for either color.
  6. No matter how the switches are set, the detectors turn red/green just as often as they turn green/red, on average. In other words, we cannot create a left/right bias for either color.

    Optionally we can weaken this rule as follows: We temporarily assume that the switch-settings are random and equiprobable. Then we require only that there be no left/right bias on average, averaged over all switch-settings.

  7. Important property: If it so happens that the two detectors have matching switch setting, they always turn matching colors; in other words, red/red or green/green.
  8. Optional feature: The apparatus is uniform with respect to switch-settings. That is, you could relabel both switches (e.g. swapping the 2 and the 1 on both switches) and the statistical properties of the apparatus would be the same.
There are several basic ways of solving the puzzle that uphold the first 7 rules. Some of them also uphold the optional 8th rule. All of these solutions are simple, natural, and straightforward. One of them is presented above, implemented as a working interactive app. Click here to see some of the other solutions. The names provide strong hints as to how the solution works internally. These basic solutions do not exhaust the possibilities; one can form innumerable additional solutions by taking permutations and combinations of these basic solutions.

If you want to know exactly how these solutions work, you can read the code. The javascript is bundled in the source to this page. Ask your browser to "show page source" or some such.

Rule 3 is sometimes called the locality requirement, or the causality requirement. Both names allude to the notion that you cannot send information from here to there faster than the speed of light. This is a really deep, really fundamental principle of physics. It is, to a remarkable degree, independent of the other fundamental principles.

The three-bit abc mode is the classic solution, and is probably the most useful as a stepping stone leading to a deeper discussion of relativistic causality and quantum entanglement. Even so, the other solutions are perfectly legit. They uphold the rules as stated, and could perfectly well arise in nature. If you want the classic solution, you have to engineer things accordingly.