Overview of Q# Libraries

The Quantum Development Kit (QDK) is provided with several libraries to make it easier to develop quantum applications in Q#. In this section of the documentation, we describe these libraries and how to use them in your programs.

  • Standard libraries: This section describes the prelude, which defines the interface between Q# programs and target machines, and the canon, a Q# library that provides general-purpose operations and functions for use in writing Q# programs.
  • Quantum chemistry library: This section describes the quantum chemistry library, which provides a data model for loading representations of fermionic Hamiltonians and quantum simulation operations and functions which act on these representations.
  • Quantum numerics library: This section describes the quantum numerics library, which provides implementations for a host of mathematical functions. It supports integer (signed & unsigned) and fixed-point representations.
  • Quantum machine learning library: This section describes the quantum machine learning library, which provides an implementation of the sequential classifiers that take advantage of quantum computing to understand data.

Sources of the libraries as well as code samples can be obtained from GitHub. See Licensing for further information. Note that package references ("binaries") are available also for the libraries and offer another way of including the libraries in projects. A convenient way of obtaining them is via NuGet.