Qrisp


Eclipse Qrisp is an open-source high-level quantum programming framework designed to simplify the implementation and development of quantum algorithms. Initially developed by Fraunhofer FOKUS , Qrisp enables programmers to write complex quantum circuits using familiar constructs while automating low-level tasks like gate assembly and qubit management. Its design shifts the emphasis from hardware-specific gate manipulation to modern software paradigms, making quantum code more accessible to classical developers. The framework is written in Python and integrates with standard scientific libraries.
Qrisp is released as open-source software under an Eclipse Foundation project, and was publicly funded by the German Federal Ministry for Economic Affairs and Climate Action for its initial development.

High-level quantum programming

A simple Qrisp example for the multiplication of two floating point numbers is given below. One can
observe the creation of two 3-Qubit floating point numbers, which are consequently assigned the values 3 and 4. Afterwards an overloaded operator is used to realize the multiplication, before eventually the printing of the result leads to a measurement on the QPU leading to the outcome of 12 with a probability of 1.0.

from qrisp import QuantumFloat
  1. Create Variables of type QuantumFloat
n = 3
a = QuantumFloat
b = QuantumFloat
  1. Assign Values
a = 3
b = 4
  1. Perform operations with QuantumVariables
res = a * b
  1. Simulate quantum program
print

Qrisp's core objectives are to bridge the gap between classical software engineering practices and quantum hardware requirements. The project aims to offer high-level abstractions so that developers can express quantum algorithms in familiar terms without managing individual qubits and gates. According to the original Qrisp paper, the design goals include providing “a programming interface which seamlessly connects multiple layers of abstraction” and enabling “hardware-specific compilation of hardware-agnostic code”. In practice, this means Qrisp should let a programmer write code that can be compiled efficiently for different quantum backends, while also serving as an educational tool for understanding quantum computation from first principles. By automating bookkeeping and by offering a resource manager for qubits, Qrisp seeks to reduce bugs and improve maintainability of quantum software.
Qrisp introduces several key technical features and abstractions to support high-level quantum programming:
  • Quantum Variables: The core abstraction is the QuantumVariable. Each QuantumVariable represents a quantum state and hides the details of qubit allocation and management from the user. Specialized subclasses include QuantumFloat.
  • QuantumModulus, QuantumBool, QuantumChar, and QuantumString, which support arithmetic and other operations in quantum circuits.
  • Sessions and Uncomputation: Each QuantumVariable is managed by a QuantumSession that tracks its lifecycle. When temporary quantum variables are no longer needed, Qrisp automatically “uncomputes” them to disentangle and free their qubits. This automatic uncomputation ensures efficient reuse of qubits without manual intervention.
  • Quantum Data Structures: Qrisp supports compound data structures: QuantumArray allows multiple quantum variables of the same type to be treated like a NumPy array. QuantumDictionary enables using quantum variables as keys, integrating classical-like data relationships into quantum algorithms.
  • Circuit Construction: A Circuit Construction module lets users build custom circuits. Qrisp's interfaces mirror common frameworks for operations like Hadamard and CNOT gates, controlled operations, and modular arithmetic. For example, Qrisp provides built-in functions for the Quantum Fourier Transform and other multi-qubit operations, facilitating algorithms like Shor's algorithm.
  • Control Flow and Environments: Qrisp implements classical control flow using “quantum environments.” Conditional execution of code blocks can be specified similarly to classical programs, and Qrisp handles the necessary conditional quantum operations behind the scenes.
  • Simulator: The framework includes a high-performance statevector simulator using sparse matrix techniques. This simulator can run circuits on the order of 100 qubits, allowing developers to test algorithms offline.
  • Hardware Compatibility: Qrisp compiles high-level code into quantum circuits in QASM format. These circuits can be executed on any QASM-capable backend. In particular, Qrisp provides integration with hardware providers such as IBM, IQM, AQT, and others. The seamless embedding in Python means Qrisp code can be combined with other scientific tools, and arbitrary classical pre- or post-processing via Python libraries.

    Algorithms and applications

Qrisp is intended for quantum algorithm development and research, and has been demonstrated on a variety of quantum computing tasks:
  • Quantum Search : Qrisp offers constructs for building Grover oracles and diffusion operators. Its high-level interface allows encoding search problems succinctly.
  • Factoring : Using Qrisp's arithmetic types and loop constructs, users have implemented Shor's factoring algorithm. Qrisp's model allows the quantum part of Shor's algorithm to be expressed in only a few lines of code, yielding circuits with significantly reduced resources compared to traditional implementations.
  • Optimization: Fraunhofer researchers demonstrated solving instances of the Traveling Salesman Problem using Qrisp. By leveraging quantum data structures and Qrisp's resource management, they achieved better qubit-scaling than known solutions, with the implementation requiring fewer than 100 lines of code.
  • Quantum Simulation and Chemistry: The library's support for complex arithmetic and controlled operations makes it suitable for simulation tasks such as quantum chemistry and other linear-algebra problems. For example, built-in QFT operations and modular arithmetic types can be used to simulate quantum systems and compute molecular spectra.
  • Machine Learning : While not yet fully demonstrated, Qrisp's integration with classical libraries suggests it could be used for quantum machine learning research, where quantum circuits interface with tensor libraries.
In general, Qrisp is positioned as a tool for scaling quantum computing programming for industry and academia: it has been used to benchmark quantum algorithms and to teach quantum programming concepts. Its abstraction level makes it useful for exploring new algorithmic ideas without dealing directly with hardware details.

Collaborators and community

Qrisp development was initiated by Fraunhofer FOKUS in Berlin. The project was publicly funded by the Federal Ministry for Economic Affairs and Climate Action and the European Union.
Qrisp is managed as an Eclipse Foundation project. The Eclipse community supports its open governance model. Several quantum computing companies have been involved in the Qrisp's developments: for example, the framework's remote execution interface has been tested with hardware from eleQtron, IQM, Alpine Quantum Technologies, and IBM. The German Aerospace Center and other institutions have also supported the project, as indicated by Qrisp's collaborators and logos.
A notable initiative is the Thinq Qrisp Community, which brings together industry and academia to work on Qrisp and related quantum software engineering ideas. This community offers resources, training events, and networking opportunities to promote the use and development of Qrisp. Qrisp's source code and documentation remain publicly accessible to support broad collaboration.

Industrial Interest

In July 2025, IQM announced that Qrisp will become the default SDK on the IQM Resonance platform. IQM explicitly said that Qrisp will be supported as the default interface for quantum developers and researchers — though other popular quantum frameworks will remain supported for flexibility.