Quantum Laboratory - Readme

Preface

To understand the mathematical notations in this document, you may want to have a look at the summary of mathematical notations and conventions before reading on.

Introduction

The Quantum Laboratory is an interactive quantum system simulator. It simulates the polarisation state of a set of photons. By default, a set of two photons is simulated, but you can change the number of photons in the range between 1 and 4.

The application is designed to make experiments with such quantum systems as easy and “realistic” as possible, hereby making quantum effects experienceable. By manipulating and measuring the photon polarisation, you can learn about the probabilistic nature of measurements, quantum entanglement, quantum computation, quantum teleportation and much more.

Feature overview

The user interface is designed to provide a “physical view” of the system, where you can experience how the system behaves when you do experiments. The photons are objects, which can be moved around via drag-and-drop and put into different measurement and manipulation devices.

In detail, the following devices are provided:

In addition to this “physical view”, the following features are provided to let you look "behind the scenes":

The Preparation Device

This device allows you to set the polarisation state of one or more photons to a specific angle. You can adjust the polarisation angle using the rotation control on the device, and then click the "prepare!" button to apply this state to all photons currently in the device's payload area. This is useful for initialising your quantum system in a known state.

You can choose the polarisation angle with a step size of 22.5°, i.e. possible values are 0°, 22.5°, 45°, 67.5°, 90°, 112.5°, 135°, and 157.5°.

Mathematically, when you choose the polarisation angle \(\alpha\), the resulting state of a single-photon system would be:

\[ {\ \color{blue} \ket{\psi}} = cos(\alpha) {\ \color{blue} \ket{H}} + sin(\alpha) {\ \color{blue} \ket{V}} \]

The Measurement Device

This device performs a polarisation measurement on a single photon. You can set the measurement angle using the rotation control, and when you click the "measure!" button, the device will perform a projective measurement and display the result (either 0 or 1).

If the measurement preview feature is enabled, the device will show the probability distribution of possible measurement outcomes before you actually perform the measurement. This allows you to see the quantum probabilities without collapsing the wave function.

Technically, the measurement process consists of the following steps:

  1. Determine the projection operators \(P_0\) and \(P_1\) for the measurement. These operators depend on the details of the measurement, e.g. which particle is measured and which polarisation angle is configured. When applied to a quantum state, a projection operator maps the state onto a subspace, which is “compatible” with the corresponding measurement outcome (in our case “0” or “1”).

  2. Apply the projection operators to the current state \(\psi\). For this, the following (unnormalized) result state candidates are computed: \[ \psi_0 = P_0 \, \psi \] \[ \psi_1 = P_1 \, \psi \]

  3. Determine the probabilities of the result state candidates by multiplying them with their conjugate transpose as follows: \[ p_0 = \psi_0^{*} \, \psi_0 \] \[ p_1 = \psi_1^{*} \, \psi_1 \]

  4. Use a random number generator to choose one of the result state candidates based on the probabilities computed in step three. The chosen measurement result will be called \(r\) and the chosen result state will be called \(\psi_r\).

  5. Normalize the chosen result state \(\psi_r\), update the current state accordingly and print the measurement result “\(r\)” in the display of the measurement device. Technically, the new state \(\psi'\) is computed as follows: \[ \psi' = \frac{1}{p_r} \, \psi_r \]

How are the projection operators determined? For example, in the case of a one-photon system where measured angle \(\beta\) is configured, the projection operator \(P_1\) is:

\[ P_1 = R_Y^{-1}(2 \beta) \, \begin{pmatrix} 1 & 0 \\ 0 & 0 \end{pmatrix} \, R_Y(2 \beta) \]

This can be understood as follows: First, the rotation operator \(R_Y\) converts the state vector into a basis suitable for the measurement projection. Next, the matrix “selects” only the first vector component, which corresponds to measurement result “1”. Finally, the inverse rotation operator \(R_Y^{-1}\) converts the state vector back to the standard basis.

The Entanglement Device

This device creates an entangled state between two photons. Place exactly two photons into the device's payload area and click the "entangle!" button. This will create a Bell state, which is a maximally entangled state where the measurement outcomes of the two photons are correlated. Once entangled, measuring one photon will instantaneously affect the state of the other, demonstrating the non-local nature of quantum entanglement.

You can choose between the settings “=” and “≠”.

The setting “=” creates a state, where both photons will have perfectly correlated measurement outcomes: when you measure one photon, the result of the other will always be the same.

Mathematically, the resulting state vector after applying “=” is:

\[ {\ \color{blue} \ket{\psi}} = \sqrt{50\%} {\ \color{blue} \ket{HH}} + \sqrt{50\%} {\ \color{blue} \ket{VV}} \]

The setting “≠” creates a state where both photons will have perfectly anti-correlated measurement outcomes: when you measure one photon, the result of the other will always be opposite.

Mathematically, the resulting state vector after applying “≠” is:

\[ {\ \color{blue} \ket{\psi}} = \sqrt{50\%} {\ \color{blue} \ket{HV}} - \sqrt{50\%} {\ \color{blue} \ket{VH}} \]

NOTE: The minus sign in the formula above is important!

The Single-qubit Transformation Device

This device can apply standard quantum operations to a single photon. Specifically, it can perform Bloch rotations around the following axes: X, Y, Z, and Hadamard. In all cases, you can choose one of the rotation angles 180° (full rotation), +90° (quarter rotation), -90° (negative quarter rotation), +45° (eighth rotation), or -45° (negative eighth rotation).

For more detailed information about the Bloch sphere and the corresponding transformations, please refer to the Bloch Sphere Readme.

The Two-qubit Transformation Device

This device applies operations that require two photons. You can choose between CNOT (controlled-NOT) and SWAP operations. Place one photon in each of the two payload areas and click "transform!" to apply the operation.

The CNOT gate performs a conditional bit-flip on the target photon if the control photon is in state 1. Its transformation matrix is as follows:

\[ \text{CNOT} = \begin{pmatrix} 1 & 0 & 0 & 0 \\\\ 0 & 1 & 0 & 0 \\\\ 0 & 0 & 0 & 1 \\\\ 0 & 0 & 1 & 0 \\ \end{pmatrix} \]

The SWAP gate exchanges the state of two qubits. Its transformation matrix is as follows:

\[ \text{SWAP} = \begin{pmatrix} 1 & 0 & 0 & 0 \\\\ 0 & 0 & 1 & 0 \\\\ 0 & 1 & 0 & 0 \\\\ 0 & 0 & 0 & 1 \\ \end{pmatrix} \]

The State visualization

The state visualization feature provides a visualization of the quantum state vector, allowing you to see the mathematical representation of the quantum system. To enable this feature, check the "state visualization" checkbox in the main control panel. The visualization updates in real-time as you manipulate the quantum state through measurements and transformations.

The state vector is represented as a linear combination of basis states, where each basis state corresponds to a specific configuration of the photon polarisations. For a system with N photons, there are 2^N basis states. For example, a two-photon state can be expressed as:

\[ {\ \color{blue} \ket{\psi}} = a_1 {\ \color{blue} \ket{HH}} + a_2 {\ \color{blue} \ket{HV}} + a_3 {\ \color{blue} \ket{VH}} + a_4 {\ \color{blue} \ket{VV}} \]

The values \(a_1\)\(a_4\) are called amplitudes. They are complex numbers describing the contribution of each basis state to the overall quantum state. In the state visualization, each amplitude is visualized as a circle. Above the circles, the absolute values and the phase angles are printed numerically.

There are some configuration options to influence the details of the state visualization: