Virtual Lab by Quantum Flytrap is a no-code online laboratory of an optical table, presenting quantum phenomena interactively and intuitively. It supports a real-time simulation of up to three entangled photons. Users can place typical optical elements (such as beam splitters, polarizers, Faraday rotators, and detectors) with a drag-and-drop graphical interface. Virtual Lab operates in two modes. The sandbox mode allows users to compose arbitrary setups. Quantum Game serves as an introduction to Virtual Lab features, approachable for users with no prior exposure to quantum mechanics. We introduce visual representation of entangled states and entanglement measures. It includes interactive visualizations of the ket notation and a heatmap-like visualization of quantum operators. These quantum visualizations can be applied to any discrete quantum system, including quantum circuits with qubits and spin chains. These tools are available as open-source TypeScript packages – Quantum Tensors and BraKetVue. Virtual Lab makes it possible to explore the nature of quantum physics (state evolution, entanglement, and measurement), to simulate quantum computing (e.g., the Deutsch-Jozsa algorithm), to use quantum cryptography (e.g., the Ekert protocol), to explore counterintuitive quantum phenomena (e.g., quantum teleportation and the Bell inequality violation), and to recreate historical experiments (e.g., the Michelson–Morley interferometer).
Quantum mechanics is commonly considered an arcane subject, counterintuitive not only to a general audience but even to its own creators. Niels Bohr claimed that “those who are not shocked when they first come across quantum theory cannot possibly have understood it.”1 Albert Einstein, perplexed by a curious correlation between particles, called it “a spooky action at a distance”2 – a property now called entanglement. Quantum mechanics sparks the imagination in popular culture3 and spirituality,4 but is rarely presented in a factual, digestible way. A handful of accessible books are available,5–9 but they still require knowledge of complex vector calculus.
Recently, motivations to learn quantum mechanics went beyond physics education and pure curiosity. Quantum technologies are gaining importance at a rapid pace,10 with estimates of more than $1 trillion value potential by the mid-2030s.11 Quantum cryptography is already in proof-of-concept use, although quantum computing will likely add business value in the next few years.12 Consequently, quantum literacy13 is becoming more important to keep up with technological possibilities and career opportunities. Therefore, providing practical tools for a wider audience is crucial.14 A similar process occurred for image processing with deep learning, which is now accessible to regular software engineers.15
Part of this need is being bridged by a rapidly growing family of quantum software frameworks,16,17 e.g., QuTiP,18 Qiskit by IBM,19 Penny Lane,20 and Strawberry Fields21 by Xanadu and Pulser22 by Pasqal. These packages have various balances of general quantum information, quantum circuits, quantum optimization, plotting capabilities, access to physical implementations of algorithms, and capabilities of running on quantum devices. These frameworks use the Python interface, thus allowing usage via the interactive environment of Jupyter Notebook. However, recent studies show that programs written in these frameworks are error-prone, with a high percentage of errors in the code being directly related to quantum mechanics.23,24
One way of introducing quantum mechanics is through interactive simulations and explorable explanations. For a recent introduction to this approach, see the survey article “Quantum Games and Interactive Tools for Quantum Technologies Outreach and Education” by Seskir et al.25 in which photons are presented as one of the most straightforward introductions to quantum mechanics. One of the earliest simulations is an interactive visualization of a one-dimensional wavefunction in a potential well26 from 2002. Newer ones include simulations of quantum computing circuits (Quirk27 and IBM Quantum Experience28) and an optical table, The Virtual Quantum Optics Laboratory (VQOL), developed at the University of Texas at Austin.29 The VQOL’s capabilities and interface focus on realistic laser physics, including the lasers’ wavelengths, intensities, and decoherence. Although it supports entangled pairs, it does not aim to simulate the delicate properties of a few photons, including interactions (e.g., CNOT gates), nondemolition measurements, or detection-dependent operations. VQOL is a complementary tool for simulating and explaining macroscopic systems of light.
Some educational, interactive simulations take the form of games.25 Preskill30 wrote that “perhaps kids who grow up playing quantum games will acquire a visceral understanding of quantum phenomena that our generation lacks”, and studies confirm that this type of open-ended experience promotes exploration.31 Children learn Newtonian physics by interacting with their environment32,33 rather than starting with differential calculus. We can provide a similar environment for quantum mechanics. Examples include a citizen science game Quantum Moves 234 and a visual quantum circuit puzzle Quantum Odyssey.35
Virtual Lab by Quantum Flytrap is a successor to Quantum Game with Photons (2014–2016),36 an open-source puzzle game with 34 levels and a sandbox. It had over 100k gameplays and was selected as the top pick in gamifying quantum theory in The Quantum Times.37 We apply a similar drag-and-drop interface with step-by-step dynamics. Quantum Game with Photons is restricted to a single photon. Adding more particles required creating a different simulation engine and both numerics and visualizations for entanglement. The graphical user interface of Virtual Lab is a complete redesign – a completely new project, with many ways to interact with and explore quantum experiments. Quantum Game with Photons was later developed as Quantum Game with Photons 2 at the Centre for Quantum Technologies, National University of Singapore.38
This paper is organized as follows. In Sec. 2, we present an overview of Virtual Lab. In Sec. 3, we show the core elements of the graphical user interface. Most of these components provide novel ways to interact with quantum states and can be readily used in other quantum interfaces. Specifically, we devise a new way to visualize arbitrary entangled states and another to show entanglement measures. In Sec. 4, we describe the physics of simulation, evolution, and measurement of quantum states. We spell out our assumptions and provide equations for the performed operations. In Sec. 5, we show a set of optical experiments that can be directly simulated in Virtual Lab. We aim to showcase our interface and simulation capabilities, as well as to provide a set of examples for students, educators, teachers, and lecturers. In Sec. 6, we provide examples of usage and indicators of popularity. In Sec. 7, we conclude the paper and explore possible directions for future development.
Virtual Lab by Quantum Flytrap (available in Ref. 39, see Fig. 1) is a free-to-use, browser-based laboratory with a real-time simulation of quantum states of photons, the elementary particles of light. Virtual Lab is an open-ended experience that can be used as an educational or research tool, a puzzle challenge, and a means for creative expression. For beginners, we aim to lower barriers to entry and serve as their first step to quantum literacy. For educators, Virtual Lab is an interactive and intuitive teaching aid. For physicists and quantum software engineers, it offers a way to efficiently investigate advanced quantum-information phenomena and prototype experiments.
Virtual Lab is aligned with Quantum Flytrap’s goals to bridge the gap between quantum computing and end-users by providing no-code quantum programming interfaces. We designed Virtual Lab to be a highly composable environment (such as LEGO bricks or Minecraft) yet powerful enough to simulate major wave optics and quantum information phenomena. “Leave computing to computers” served as our motto.
Virtual Lab is based on a numerics engine developed by Quantum Flytrap. Unlike prevalent qubit-only abstraction, we focus on concrete hardware implementations – our engine can be used to simulate all of the leading physical realizations including optically-trapped neutral atoms and ions, superconductors, and photons. Because we are now in the Noisy Intermediate Scale Quantum era30 of early-stage quantum devices, it is crucial to understand the capabilities of concrete physical implementations.
Design & User Interface
We created Virtual Lab as a web-based app to make it accessible to a broad audience. Virtual Lab’s install-free nature allows users to instantly get started and facilitates sharing of user-created experiments. It can be used on desktop computers and mobile devices with modern browsers, regardless of the operating system.
The board is the main component of Virtual Lab. It is a grid-based canvas where users can place optical elements and watch the simulation. Elements can be placed with a drag-and-drop interface and rotated with a click. Users can run experiments in three modes, all simulating precisely the same physics. The high-intensity mode shows the whole photon path and displays absorption probabilities in real-time, as demonstrated for classical interferometers in Fig. 15. The wave mode displays amplitudes of photons and offers a way to explore quantum states. This mode can be accessed as a continuous simulation or as a way to examine quantum states at selected time steps; see Fig. 2. The detection mode shows a realistic experimental scenario in which we cannot “view” photon amplitudes, but we only receive a discrete signal when a photon arrives at a detector – as in quantum mechanics such measurement would affect the state. We use this mode to demonstrate the Bell inequality violation; see Ref. 17.
Virtual Lab offers a way to save and share experimental setups. Saving experiments requires creating an account. Each experimental setup can be given a name, set to public or unlisted, and shared with a link. Viewing does not require setting up an account – this choice was made to facilitate easier access and distribution. For a list of publicly shared experiments, see Ref. 40.
Elements in Virtual Lab are based on idealized versions of optical devices that can be used on an optical table in a laboratory. We provide visual icons as symbolic representations of these elements along with logical operators; see Fig. 3. Many elements have additional physical properties that can be modified in a tooltip that opens after a right-click; see Fig. 4.
The Bell pair generator is based on an abstracted version of the spontaneous parametric down-conversion in a beta barium oxide crystal,43 hence the gem icon. We do not display the incident laser beam and focus only on the generated state. The detector is represented by a venus flytrap to add playfulness with a recognizable image of the piranha plant from the Mario game series. Similarly, we represent a fully-absorbing element as a sentient rock. A photo-sensitive bomb icon takes its inspiration from another popular game, Minesweeper. We have found that this approach makes Virtual Lab a more welcoming introduction to quantum physics and adds recognizability – to the point that we named the company after this plant. Each classical logic operation is depicted by a Venn diagram, while a quantum gate is given as a letter on its matrix visualization; see Sec. 3.4.
In optics, phase delays are typically modified by a slight change of optical path, which is challenging to present with a grid-based system. Therefore, we delay the phase with a glass slab (becauseit has a higher refraction index than air) and a vacuum chamber (because it has a lower refraction index than air). This representation serves as a further introduction to optical phenomena. Similarly, in our mirrors, both sides are reflective. Linear polarizers and phase plates are represented in the board plane, rather than perpendicularly, for visual clarity. At the same time, we made sure that all elements are expressed with physically-correct operators.
Photon Amplitude Visualization
We represent a photon as a wavepacket – oscillations within a Gaussian envelope; see Fig. 5. We draw an electric field, according to its polarization, in a pseudo-3D way. We show the phase by shifting the oscillation. The amplitude is shown as opacity, rather than more traditionally as the height of the electric field amplitude. We wanted to ensure that small amplitudes are visible and use an intuitive, visual language that is suitable for a general audience. In our visualizations of vectors and matrices, we use hue to indicate phase. We refrained from the same approach for photons approach because it would be confusing to use color where it could be confused with the wavelength.
Quantum State Visualization
Users can check the exact quantum state at a given simulation step in the typical form of kets.44 We provide a few improvements for readability and interactivity to create a clear and minimalistic visual data representation;45,46 see Fig. 6. We employ color-coding to match the formula with its description.47–49 Users can choose between various representations of complex numbers – polar, polar using full rotations (), Cartesian, and a color circle (amplitude as radius and phase as hue). Users can change between these representations according to their preferences or what is most suitable for a given phenomenon.
Similarly, we provide a way to dynamically change between bases – horizontal (, ), diagonal (, ), and circular (, ). This feature can be used to set a basis that works best for a given phenomenon or to toggle between bases to explore the same phenomena in a few different ways. For example, the Faraday rotator, when expressed in and , acts as a rotation. But for the circular basis of and , it is just a phase change between polarizations. Likewise, for a mirror in the horizontal basis, due to changing the coordinate system, horizontal polarization gets a sign flip, which might look unremarkable. Yet, in the circular basis, we see that this sign flip swaps left with right circular polarization.
One typical way to visualize quantum operators involves showing them in a braket notation, or as any other matrix – displaying them as a table with numerical values. This approach is insufficient for a clear presentation.
In data visualization, arrays can be visualized with heatmaps – two-dimensional tile plots, with tile color representing the numerical value. For an interactive example, see Clustergrammer.51 However, typical plotting packages (such as Python Matplotlib or R ggplot2) do not support complex numbers.
We present a quantum operator matrix as an array of colored disks, with basis state labels and with further interaction options for label rearrangement and selection of basis; see Figs. 8 and 9. We follow a similar visualization scheme to a recursive pattern of Qubism,52,53 applied to operators (matrices) instead of wavefunctions (complex vectors). For a complex amplitude , we represent its length as a disk radius and its phase as hue. The color scheme follows a domain coloring technique.54 Instead of the common choice to map to brightness or opacity, we use disc radius for a few reasons. First, it is easier to read regardless of screen settings, even for low amplitudes. Second, the disk area is proportional to another vital property – probability. We show the amplitude and phase values on mouseover, with three applications in mind: as a chart legend, for access to the exact values, and to provide accessibility for people with color blindness (regardless of its type).
Visualizing Entangled Amplitudes
To visualize entanglement, we invent a new method because we did not find any procedural way of visualizing arbitrary entangled states. Visually, we represent entanglement by coordinated blinking of the entangled particles; see Fig. 10. For two particles in state , we use the following procedure:
In other words, we sample the state of the first particle if the other particle is randomly measured. Then we get the corresponding state of the second particle . We get two states, and , which display separately the same way. For an easy example, take Bell state , also known as the singlet state. In this state, two particles are always orthogonal. We check that
We can easily generalize this operation for particles. First, we generate random vectors . Taking a random unit vector for -dimensional space is simple and does not require parameterization. We generate random numbers with Gaussian distribution55 (for the real and imaginary parts of each coordinate) and then normalize the vector. We do not need to generate all random vectors (i.e., around 1000 per photon) – it suffices to generate a subset for which photon probabilities are nonzero. Then, we follow an iterative procedure:
An alternative approach that we considered is the Schmidt decomposition of an entangled state:
Both approaches (ours and the Schmidt decomposition) can be applied simply to the visualization of any quantum state, including qubits, electrons, and other systems. In general, it is impossible to present entangled quantum states as probabilistic representations. Consequently, this coordinated blinking should be understood as a quantum correlation rather than a statistical mixture.
Entanglement Between Particles
Although the blinking of the waves is an indicator of entanglement, it might be hard to see the degree of entanglement between parts of the system. Because we did not find an existing way to represent the degree of entanglement between particles, we created our own. Working with pure states simplifies the task, as all measures of correlations are related to entanglement.
A quantum physics novice might expect to see values of entanglement between each particle pair, that is, for three particles A, B, and C, one would expect to have some measures of entanglement for A–B, B–C, and C–A. However, it is not possible. The only meaningful measure is the entanglement of a particle with the rest of the system: A–BC, B–AC, and C–AB. We use Rényi-2 entanglement entropy, due to its computational simplicity.
Next, we turn this measure into a digestible visualization; see Fig. 11. We place particles in a circle and represent them as dots. We draw a string connecting them and set the respective entanglement entropy (of a particle with the rest of the system) as the force constant. If all strings are equally stiff, their connecting points land in the middle. If only two particles are entangled with each other, then the connecting point lands between them. Next, we turn the strings into amoeba-blobs (force constants become connection widths), so we can clearly see which particles are entangled with each other. The same approach can be employed to visualize entanglement in any other system of quantum particles.
We represent the evolution of quantum states as a tree rather than a sequence of steps; see Fig. 12. Each measurement event splits evolution into as many branches as there are outcomes with nonzero probability. The multiverse tree serves as a summary of all possible outcomes and as a way to explore the experiment. The user can click to select each timestep of each branch.
There are several interpretations of quantum mechanics, including the indeterministic Copenhagen interpretation and the deterministic Everettian many-worlds interpretation.56 Even among physicists, the choice of interpretation is a matter of philosophical belief rather than a scientific hypothesis.57,58 The multiverse tree works the same regardless of the interpretation, just with a difference in what the nodes mean – separate probabilistic branching events or components of the global wavefunction.
Classical Randomness, Table of Measurements, and Correlators
In addition to quantum states, Virtual Lab supports classical states based on the initial setup and detection events. They are transferred through wires, with logic operations, and used for modifying elements on the board, measuring output correlations, and logging the results for arbitrary analysis; see Fig. 13. The data are downloadable as a comma-separated values (CSV) file. For a full example, see the Bell inequality violation in Fig. 17.
Input variables can be deterministic (so they work as switches) or randomized (so on each run, they are randomly set to on/off). Both have their application in setups – especially in quantum key distribution protocols and other correlation-based experiments. Because elements are affected by detection events, it is possible to create conditional setups, e.g., quantum teleportation.
All wires carry their signals instantly, without the speed-of-light delay, to simplify the interface.
Correlators measure correlation between -valued variables , conditional on the control variables . For a practical example, see the Bell inequality in Fig. 17.
The sandbox mode offers a way for the user to create arbitrary setups. However, the sandbox mode by design lacks any objectives and can be intimidating as it provides all functionalities at once. It is entirely up to the user to decide how to interact with Virtual Lab.
Based on the earlier success of Quantum Game with Photons, we created a similar experience; see Fig. 14. Rather than releasing a separate product, we made Quantum Game a part of Virtual Lab. Although our focus was to provide an enjoyable experience for beginners and advanced users alike, we wanted it to serve as a step-by-step tutorial on both quantum physics and the Virtual Lab interface. We aimed to make it clear that Quantum Game is an advanced simulation of quantum mechanics, rather than a visual gimmick loosely based on actual physics.
For each level, the gameplay consists of creating a setup, running it many times, and collecting the results – a typical pattern for programming games,59 e.g., SpaceChem and Shenzhen I/O by Zachtronics. The probabilistic nature of quantum mechanics makes it challenging to design clear goals. We opted for setting detection percentage thresholds (e.g., a given detector needs to absorb a photon with the probability ). Although we show a finite number of experimental runs (e.g., 20), the win condition is based on probabilities in the infinite limit.
Virtual Lab simulates quantum systems using the pure state of a fixed number of particles, a discrete basis, grid-based positions, discrete-time evolution, and exploration of all measurement outcomes. We selected these constraints to create a fast, robust simulation of typical quantum experiments, without adding extra complexity (both numerical and related to the user experience). We found a sweet spot – suitable for a LEGO bricks-like interface, general enough to simulate major quantum information experiments, viable numerically, and directly applicable to simulating quantum devices.
The whole simulation is stored as a tree of classical and quantum states, explorable with the multiverse tree interface. Each node contains its probability, the quantum state, and the classical state. We open-sourced our first numeric engine written in TypeScript, Quantum Tensors.60 It serves as a reference for the simulation steps and is ready for use both in Virtual Lab and for arbitrary quantum systems with discrete states – e.g., quantum circuits, spin, and qudits. We put care into creating a semantic tensor structure61 for the clarity and safety of advanced operations on complex vectors and matrices.
The state of a single photon is characterized by four components: position (along the and axes), direction, and polarization. A photon has two polarization states. Because we use grid mechanics, light travels along four cardinal directions, rather than at an arbitrary angle. Grid size is a parameter that can be adjusted according to needs, and we use the default of , which we find suitable for most applications. It gives rise to around 1000 dimensions per single particle.
Virtual Lab simulation supports primarily distinguishable particles. However, photons are indistinguishable bosons, but they can be made distinguishable by assigning them a wavelength. A nonentangled product state is represented as a tensor product of single-particle states:62) via symmetrization:
This approach is equivalent to the typical description of bosons with creation and annihilation operators for states with a fixed number of photons.53,63 However, from a numerical point of view, it is easier to work with vectors than polynomials. One significant drawback of our choice is the restriction to Fock states – the current framework does not support coherent or squeezed states.
In each step, we perform three operations: free propagation, measurement, and the action of unitary operation. The propagation step involves shifting the photon’s position according to its direction:
We use a limited number of two-photon interactions. This choice is motivated by optical setups in which photon-photon interactions are challenging to implement. We apply the following operation:
We allow measurements at any step, including destructive measurements (absorbing a photon) and nondemolition measurements64 (not absorbing a photon). In each measurement phase and for each photon, there are three exclusive outcomes:
Note that, after a measurement event, the state remains a state with a fixed number of photons.
All measurements happen within the elements on the board. Destructive measurements happen when a photon hits a fully absorptive element (e.g., a rock, a detector, the side of certain elements), a partially absorptive element (e.g., a neutral density filter), or a polarization-dependent element (e.g., linear polarizer) or falls out of the board. Nondemolition measurements happen when a photon passes through a nondemolition detector or when none of the other detection events occur.
Destructive measurements are represented with a non-normalized (bra) vector, . For example, for a single direction , these vectors for polarization are
After a measurement of the ’th photon, the remaining state is
To deal with the general case of destructive and nondemolition measurements, we need to use a general scheme of positive operator-valued measures (POVMs). A general POVM requires a set of positive semidefinite matrices that sum to identity.41 The resulting non-normalized state for three photons is
To create a smooth experience, we need to have fast response times. As a rule of thumb, up to a 100 ms response time feels like a system reacts instantaneously, while up to a 1 s response time interupts the user’s flow of thoughts.65–67 This sets the upper bound for the simulation time of up to three photons. For comparison, 60 frames per second required for a smooth video game experience68 corresponds to 17 ms. None of the off-the-shelf libraries (NumPy, SciPy, TensorFlow, and PyTorch) were able to support this kind of operation with these constraints, in addition to working in a browser.
Note that, even for a three-photons state with a typical (dense) representation, complex numbers are required. A single unitary operator would require . Yet, in typical experimental cases, we use only a few nonzero amplitudes – prompting us to use sparse vectors. This task goes far beyond typical interactive simulators of quantum circuits. For eight qubits, it is dimensions, which can be easily simulated with dense vector and matrix operations.
However, even with sparse vectors for three particles, an identity matrix would still have nonzero elements (i.e., the ones on the diagonal). Hence, we need to apply operations to take advantage of the structure of the tensor, for speedup of operators acting only on a subset of dimensions.
The initial approaches are in an open-source TypeScript library Quantum Tensors. To improve performance even further, we developed a high-performance sparse array simulation in Rust, a low-level programming language. The typical timescale of simulating experiments is . To use the engine in the browser, we compiled Rust code to WebAssembly.69 The execution time measured in the browser is only slower than that in native code.
Virtual Lab lets users simulate the physics of quantum information, quantum computing, and quantum cryptography,70 as well as classical fields of wave optics (including polarization and interference) and electrodynamics.
We group the experiments by the number of photons involved. A fair share of the single-photon experiments is directly related to the behavior of classical light71 – even though a laser emits coherent states, rather than a series of single photons. Hence, we make a distinction between classical and quantum one-photon experiments. The list that we provide is not exhaustive due to the open-ended nature of the experiments. All of the following experiments can be simulated in Virtual Lab; see Ref. 72.
We suggest this list as a starting point of didactic material for courses, as an interactive lab used together or in place of physics experiments, or for a more scalable experience available to a larger number of participants.
One Photon, Classical
Interference is a wave phenomenon in which waves add by their amplitudes and amplify or cancel each other out depending on their relative shift. This behavior might be counterintuitive to people accustomed to geometric optics, in which light adds by its intensity.
In optics, interferometers are applied for sensitive measurements of distance. The famous experiment of Michelson and Morley73 in 1887 showed that light velocity is independent of the frame of reference, thus setting the footing for the special relativity theory. For an accessible introduction to special relativity, we suggest Unusually Special Relativity by Dragan.74 For an interactive version of the experiment, see Ref. 75.
The Mach–Zehnder interferometer76 is applied in precise measurements of tiny changes of the refraction index and for a wide range of quantum experiments. In the interactive version, the user can modify the relative delay between paths and see the result in real-time; see Fig. 15.
Another set of phenomena involves the polarization of light. Understanding polarization is important for learning the nature of light and its application in numerous fields including photography, LCD displays, and telecommunications. The three polarizer paradox79 is an experiment in which two perpendicular polarizers block light, but inserting a third allows some of the light to pass. This represents a classical version of the quantum Zeno experiment.
Optical activity is a phenomenon in which chiral molecules (e.g., D-glucose, a naturally occurring enantiomer) rotate the polarization of light. Although in quantum optical laboratories this effect is not being applied to rotate polarization, it is being utilized to measure the concentration of sugar. The Faraday effect is a magneto-optic effect in which the polarization of light rotates in the presence of a magnetic field in a transparent material. Although this rotation may seem to be the same as the one caused by optical activity, it has different symmetries, that is, the rotation is opposite depending on if the light propagates in the same or opposite direction of the magnetic field. The effect is used in virtually all other optical elements that are not symmetric in time, such as optical circulators and optical diodes; see Ref. 80.
One Photon, Quantum
There is a common misunderstanding that at least two entangled particles are required to get distinctively quantum phenomena. Even some parts of quantum computing are possible without entanglement.81,82 First and foremost, in quantum mechanics, light is absorbed in discrete portions (or quanta), with energy each. Although at classical intensities of light we can measure the power of a light beam (or the energy of a pulse), for low intensities, the detection phenomenon has a discrete nature.
Even the detection of a single particle serves as a way to explore the fundamentals of quantum mechanics, such as the shot noise (randomness of detection events), Born’s rule (the probability of measurement is ), and the nature of measurement. Shot noise can be seen on photographic film and digital sensors. Consumer smartphone cameras can be used to extract pure quantum randomness.83 We can simulate more advanced detection schemes, such as an optical implementation of optimal nonorthogonal state discrimination;84 see Ref. 85.
The Elitzur-Vaidman bomb tester86,87 is a combination of interference and the nature of measurement. In the classical physics world, it is a tautology that a photo-sensitive bomb cannot be detected with light without setting it off. In the quantum world, there is room for “interaction-free measurement” by observing the changes in the interference pattern. A bomb can be placed in one arm of the Mach–Zehnder interferometer. Some detector clicks testify that there is something blocking one path and therefore breaking the interference; see Fig. 16.88
Quantum measurement affects the measured quantum systems, even when no absorption is involved. It is impossible to measure two noncommuting observables without affecting them. Discovering where a particle is located destroys the interference pattern, which is called quantum erasure;89 see Ref. 90. Within Virtual Lab it is possible not only to place a nondemolition measurement on one path but also to define its efficiency, thus showing a continuous transition between fully breaking quantum interference and not touching the system at all; see Ref. 91.
The Quantum Zeno effect92 is another phenomenon in which a nonmeasurement affects the result. The state evolution is inhibited completely by the limit of infinitely frequent projective measurements.
Due to the fundamental rules of quantum mechanics, it is impossible to copy an arbitrary quantum state, also known as the “no-cloning theorem.”93 This property is a direct consequence of the linearity of quantum mechanics and is necessary for forbidding superluminal communication. This is a substantial challenge for quantum computing that provides an opportunity to use quantum states for cryptography. The BB84 quantum key distribution protocol94 sends photons with random bits encoded quantum in different quantum bases – any eavesdropping would be both imperfect (no-cloning) and discoverable (as measurement affects the system); see Ref. 95.
The Deutsch-Jozsa algorithm96–98 is an algorithm showing exponential speedup of a quantum algorithm over a classical one. It can be shown even within a single qubit that one needs a single measurement rather than two; see Fig. 16.
Photon polarization serves as a carrier of quantum information. This dimension alone encodes a qubit. In Virtual Lab, on top of optical operations, we provide abstract quantum gates. Last but not least, it is possible to encode two classical qubits within a single photon, using polarization for one dimension and direction for the other.99
It takes two particles to show one of the most striking quantum properties – entanglement.
Bell pairs are a set of four quantum states forming a basis for two fully-entangled qubits. In Virtual Lab, we provide an idealized nonlinear crystal (based on spontaneous parametric down-conversion), which generates Bell pairs. Bell pair detection, necessary for some protocols (such as quantum teleportation), can be performed with a CNOT gate that we provide. Experimental setups within Virtual Lab can be applied to transform Bell states, explore correlation patterns, and create cryptography setups such as the Ekert quantum key distribution protocol;100 see Ref. 101.
The Bell inequality102 is a correlation that should hold for any probabilistic correlations between subsystems. It was created to turn a philosophical debate on hidden variables into an experimentally testable hypothesis. Quantum mechanics violate it with a Bell pair and a set of measurements. In Virtual Lab, there is a correlator between results, which is set so that it can measure the Bell inequality in the Clauser–Horne–Shimony–Holt (CHSH) form.103 It can be used in two main ways – as an exact result and as a quantity based on the number of detections (involving shot noise); see Fig. 17.104
In quantum teleportation,105 a quantum state is transferred to another particle, regardless of how far away it is. It requires three particles: one to be teleported and an entangled pair, with one particle being close to the source and the other in the target location. See Fig. 1 and the interactive version.106
In Virtual Lab, we simulate quantum teleportation with a photon source (in which photon polarization is set to an arbitrary state), with the nonlinear crystal generating a Bell pair. The Bell state measurement is implemented with a CNOT Gate, and two classical bits are sent to the remote location.
For two qubits, there is only one type of entanglement, that is, each entangled state can be turned into another by applying only local operations and classical communication (LOCC). For three and more qubits, this is no longer the case.107 There are two distinct states that cannot be changed locally – the W and Greenberger–Horne–Zeilinger (GHZ) states,108 which can be used to test nonlocality as109
University professors and educators use Virtual Lab as a teaching tool. It has been used during quantum information courses at the University of Oxford9 and Stanford University. We learned from one professor, whose experimental lab was closed during the COVID pandemic, that “even when it becomes possible to teach my class in person again, your website could help me scale to a larger class size than is possible when I require equipment for hands-on demonstrations.” Another educator told us that “we used Quantum Flytrap in labs over the past week and our students loved it! They really enjoyed the opportunity to play around with different optical elements. It also helped them visualize superposition, interference, wave-particle duality, and measurements.”
Virtual Lab has been used during several hackathons and other informal educational events and by individual users. As an easily embeddable tool, it has been used by external educational portals for quests and tutorials introducing quantum mechanics and quantum computing, including Qubit by Qubit, QPlayLearn,110 and Quantencomputer für Schüler_innen.111 We have unique users per day, growing to 700 during events. There are over 450 user-created experiments, which can be shared. We have created a Discord channel to gather valuable feedback, cultivate a discussion, and develop a new quantum community.
Virtual Lab was shortlisted for D&AD Pencils, one of the most prominent awards in design,112 and was presented as a demo at a prestigious human-computer interaction conference, ACM CHI 2022.113 It is also listed in the Quantum Flagship outreach resources section. 114
Virtual Lab, as well as its predecessors, Quantum Game with Photons and Quantum Game with Photons 2, have been mentioned in numerous peer-reviewed publications on games in quantum mechanics,115–117 teaching quantum literacy,110 general serious games,118,119 and preprints on computational complexity of puzzles120 and on the quantum workforce.121
Virtual Lab by Quantum Flytrap is a browser-based simulation of quantum mechanics of up to three photons. It provides ways of interacting with systems and setups in quantum optics.
We designed visualizations of vectors and matrices, the entanglement of arbitrary pure states, and measures of entanglement between particles. These tools are ready-to-use for arbitrary quantum systems, as we provide the open-source packages Quantum Tensors and BraKetVue.
Virtual Lab can be further developed by being extended to more photons and adding other degrees of freedom (e.g., Laguerre-Gaussian modes for angular optical momentum122), three spatial dimensions (for entertainment and interactive educational experiences with Virtual Reality), other carriers of quantum information (e.g., fermions such as electrons, electron states of ions and neutral atoms), and mixed states (represented by a density matrix, or measured via sampling).
Moreover, we can use the Quantum Flytrap simulation engine to create no-code user interfaces to interact with quantum devices. The real-time simulation allows for testing and debugging quantum software in a way that is similar to a typical programming integrated development system (IDE). We believe that these end-user tools are necessary to make quantum computing accessible to a broad technical workforce of software engineers, data scientists, and analysts.
We acknowledge the support of the Centre for Quantum Technologies, the National University of Singapore in 2019 – the project started there as Quantum Game with Photons 2, thanks to an invitation by Artur Ekert. We are particularly grateful to Evon Tan for all her administrative and organizational help and support. PM acknowledges the support of eNgage - III/2014 grant by the Foundation for Polish Science, for Quantum Game with Photons (2016), as well as fruitful discussions with its other creators, Patryk Hes and Michał Krupiński. Developing BraKetVue as a standalone, open-source matrix visualizer was supported by the Unitary Fund microgrant. A number of other people contributed to other than quantum aspects of Virtual Lab, including a procedural soundtrack by Paweł Janicki and software engineering support, especially from Jakub Strebeyko. The project benefited immensely from multiple discussions with people from the explorable explanations community, especially Andy Hall, Eryk Kopczyński, Dorota Celińska, Laur Nita, and Nicky Case. We were encouraged by public and private feedback from Scott Aaronson, Paul G. Kwiat, Monika Schleier-Smith, and James Wootton. We are grateful to Sarah Martin and Carrie Weidner for their valuable feedback and extensive editorial support. And last but not least, we would like to thank all users, players, students, and educators. It is you who continuously motivated us to keep developing Virtual Lab.
https://slate.com/technology/2017/07/rick-and-morty-gets-multiverse-theory-wrong-thats-ok.html Google Scholar
https://www.bcg.com/publications/2021/building-quantum-advantage Google Scholar
https://www.mckinsey.com/fr/our-insights/the-next-tech-revolution-quantum-computing Google Scholar
https://www.ft.com/content/bbff5dfd-caa3-4481-a111-c79f0d38d486 Google Scholar
https://digitalcommons.chapman.edu/scs_articles/541 Google Scholar
https://quantumflytrap.com/blog/2021/qubit-interactively/ Google Scholar
https://github.com/Quantum-Flytrap/quantum-tensors Google Scholar
https://www.nngroup.com/articles/response-times-3-important-limits/ Google Scholar
https://lab.quantumflytrap.com/lab/michelson-morley Google Scholar
https://lab.quantumflytrap.com/lab/sagnac-interferometer Google Scholar
https://lab.quantumflytrap.com/lab/three-polarizer-paradox Google Scholar
https://lab.quantumflytrap.com/lab/nonorthogonal-state-discrimination Google Scholar
https://doi.org/10.1111/j.1749-6632.1995.tb38981.x ANYAA9 0077-8923 Google Scholar
https://lab.quantumflytrap.com/lab/elitzur-vaidman-bomb Google Scholar
https://lab.quantumflytrap.com/lab/measurement-destroys-interference Google Scholar
https://doi.org/10.1103/PhysicsPhysiqueFizika.1.195 Google Scholar
https://lab.quantumflytrap.com/lab/bell-inequality Google Scholar
https://lab.quantumflytrap.com/lab/quantum-teleportation Google Scholar
https://www.dandad.org/awards/professional/2021/234167/quantum-flytrap/ Google Scholar
Piotr Migdał is a quantum physicist and a cofounder of Quantum Flytrap. He received his MSc degree from the University of Warsaw in 2011. He received his PhD in quantum optics theory in 2014, working in Maciej Lewenstein’s group at ICFO – The Institute of Photonic Sciences. Subsequently, he worked in data visualization and deep learning consulting. He authored popular introductions to data science and deep learning, which are available at https://p.migdal.pl.
Klementyna Jankiewicz is a designer and a cofounder of Quantum Flytrap. She studied industrial design at the Academy of Fine Arts in Warsaw and the Bezalel Academy in Jerusalem. As a designer, she collaborated with the Hebrew University of Jerusalem, University of California Irvine, and the POLIN Museum. She was a visiting designer at the Centre for Quantum Technologies, National University of Singapore. She is a lecturer at the Creative Coding department at SWPS University.
Paweł Grabarz is a software developer passionate about physics simulations and real-time graphics. He is a contributor to the Amethyst engine and more recently to the Bevy engine.
Chiara Decaroli is a quantum physicist passionate about quantum education and outreach. She received her PhD in experimental quantum computing from ETH Zurich in August 2021 and is now the Outreach and Engagement Officer at the National Quantum Computing Centre based in Oxfordshire, UK.