Programming with qat.lang¶

This folder contains various tutorials describing the usage of the qat.lang module.

To begin:

  • this first notebook shows how to write a simple circuit and display it
  • pyAQASM offers classical control and measure operations. This notebook presents these features.
  • All the basic features are summed up in a single notebook.
  • This notebook. presents how to construct custom gates in pyAQASM.
  • this notebook presents an example of a QRoutine implementing a QFT
  • The gate set of pyAQASM is described in this notebook.

Some algorithms:

  • this notebook introduce a basic Quantum Search algorithm to look for clean coloration of a graph
  • this directory contains other basic quantum algorithms pre-coded in the QLM

More advanced usage:

  • this notebook shows how to declare and use a custom gate set in pyAQASM.
  • this notebook explains the inlining process that is happening when extracting a circuit
  • the ancillae management feature is presented here.
  • the compute/uncompute scheme using with statements is described here
  • this notebook presents how to write and link circuit libraries in pyAQASM
  • while this notebook goes even further and show how to link gate implementation under controlled operators
  • this notebook introduces the notion of quantum types and show how to generate powerful quantum oracles
  • and this notebook presents two methods to compute the derivative of a job with a cost function $E(\vec{\theta})$ for gradient-based optimization

Text format:

  • this notebook presents the AQASM text format