Lepton is an educational quantum simulator designed to run on small devices with two key objectives. Firstly, it aims to be didactic by providing complete access to all mathematical routines and simulation steps in its easy-to-read source code. Secondly, it is optimized to run efficiently on small devices, including 8-bit computers. Keeping a small device as a baseline can help ensure that the code remains simple and efficient.
Although it is not intended to replace existing quantum simulation libraries, such as Qiskit or Pennylane, Lepton offers a unique approach to quantum simulation that is both accessible and efficient.
Lepton is shown operating on an MSX1 computer with a Zilog Z80 CPU running at 3.58 MHz and 64 kilobytes of RAM, demonstrating its compatibility with low-resource computing systems (find out more at docs.).
demo.mp4
Paper "Elementary gates for quantum computation": https://journals.aps.org/pra/abstract/10.1103/PhysRevA.52.3457
Hotbit HB-8000 MSX computer: https://en.wikipedia.org/wiki/Hotbit
openMSX: https://openmsx.org/
Quantum computing simulators play a critical role in the development and implementation of practical quantum computing applications. These software programs simulate the behavior of quantum systems, providing researchers and engineers with a controlled environment to experiment with and validate quantum algorithms and circuits.
One of the key advantages of simulators is that they enable researchers to study the behavior of limited-sized quantum systems with high precision. This is particularly useful in the validation of quantum algorithms and protocols, where it is necessary to test and verify the behavior of complex quantum circuits in various scenarios and conditions. By enabling researchers to quickly iterate on their ideas and validate them efficiently, simulators accelerate the development of practical quantum computing applications.
Simulators are also valuable for training and educating students and researchers in quantum computing. They provide a virtual environment where students and researchers can experiment and learn practical skills without the need for physical and expensive resources. As such, simulators are essential tools for building the next generation of quantum computing experts.
However, it is important to note that quantum computing simulators have limitations and cannot completely replicate the behavior of real quantum systems. As such, it is crucial to validate the results obtained using simulators by conducting experiments on real quantum hardware. This is necessary to ensure the reliability and accuracy of the final results. The combination of simulators and real quantum systems will likely be used in tandem in the future, allowing researchers to efficiently validate and optimize quantum circuits while leveraging the unique capabilities of real quantum systems.
-
lepton: The source code of Lepton.
-
lib: Lepton library.
-
examples: Examples of how to program using the Lepton library.
-
simulators: Fully implemented quantum simulators using the Lepton library.
-
tools: Auxiliary tools.
-
-
make: Scripts for building Lepton.
-
docs: Documentation for both users and developers.
Lepton requires Linux to be built, although it may also work on macOS (though this hasn't been tested). For those using Windows 10 or 11, WSL can be used as an alternative.
To build Lepton, you will need the following tools:
make
andgcc
. On Debian-based systems, you can install them withapt-get install build-essential
.- SDCC v4.0.0 or newer. On Debian-based systems, you can install it with
apt-get install sdcc
. - z88dk v2.2 or newer. To install it on Linux systems, please follow the instructions provided in https://github.com/z88dk/z88dk/wiki/installation#linux--unix.
To build Lepton, you can use one of the two provided makefiles, depending on your target system. Once you have installed the required tools, simply navigate to the relevant directory and run make
. Here are the makefiles available:
make/linux
: builds all binaries for Linux usinggcc
and copies them to thebin/linux
directory.make/cpm
: builds all binaries for CP/M (z80) usingzcc
(z88dk) and copies them to thebin/cpm
directory.
Lepton's first version was developed in a collaboration between Quantum Data Science & AI lab (also known as q-DNA) at Yonsei University and Centro de Informática at UFPE.
If you are doing research using Lepton, please cite our project. We use a CITATION.cff file, so you can easily copy the citation information from the repository landing page.
Lepton is free and open source, released under the Apache License, Version 2.0.