the C library for quantum computing and quantum simulation
Mailing List
RSS Feed

Simulation of quantum mechanics


The latest news from libquantum
2013-01-29Release of libquantum 1.1.1
2010-03-20A Rydberg quantum simulator
2008-09-09Release of libquantum 1.1.0 and 1.0.0

libquantum is a C library for the simulation of quantum mechanics, with a special focus laid to quantum computing. It started as a pure quantum computer simulator, but support for general quantum simulation has been recently added.

Quantum computing

Based on the principles of quantum mechanics, libquantum provides an implementation of a quantum register. Basic operations for register manipulation such as the Hadamard gate or the Controlled-NOT gate are available through an easy-to-use interface. Measurements can be performed on either single qubits or the whole quantum register.

General quantum simulation

Besides quantum computing, libquantum is able to compute the time-evolution of arbitrary Hamiltonians, including time-dependent ones. This is done via numerical integration of the Schrödinger equation. Computing the time-evolution for time-independent Hamiltonians via exact diagonalization is also possible.


  • Simulation of arbitrary quantum algorithms is possible
  • High performance and low memory consumption
  • Optional time-evolution using fourth-order Runge-Kutta or exact diagonalization, including optimizations for sparse Hamiltonians
  • Decoherence support for realistic quantum computation
  • Interface for quantum error correction (QEC)
  • Supports the density operator formalism
  • Implementations of Shor's factoring algorithm and Grover's search algorithm are included
  • libquantum is available as Free Software under the terms of the GNU General Public License (GPL), version 3. See the file COPYING for further details.


libquantum requires a C compiler with complex number support. The simulator has been reported to work on the following platforms:

  • GNU/Linux (This is the main development platform)
  • FreeBSD
  • OpenBSD
  • NetBSD
  • Mac OS X
  • HP Tru64 UNIX
  • AIX


  • Official SPEC CPU2006 benchmark
  • Jugend forscht Baden-Württemberg 2003 runner-up


libquantum has been written by Björn Butscher and Hendrik Weimer. The authors can be contacted at