Worldwide consortium for the advancement of topological quantum computation

Reversible Logic Synthesis and Quantum Computing Benchmarks

Contents

  1. Quantum Floating Point Library
  2. EPFL Arithmetic Benchmarks
  3. Optimal Single-target Gates
  4. Contact

Quantum Floating Point Library

The following table lists results obtained using LUT-based hierarchical reversible synthesis (LHRS), a synthesis algorithm that has been proposed in [M. Soeken, M. Roetteler, N. Wiebe, G. De Micheli: Hierarchical reversible logic synthesis using LUTs, in: Design Automation Conference 54, 2006]. Shown are 13 floating point components which are available in three different bit-widths: 16-bit (half-precision), 32-bit (single-precision), and 64-bit (double-precision). All designs are IEEE compliant and were optimized using academic and commercial logic synthesis tools before translated into Clifford+T quantum circuits using LHRS. LHRS is implemented in the open source toolkit RevKit as command lhrs.

Use the toolbar to select different bit-widths and to show the statistics of different realizations (best realization in terms of qubits, best realization in terms of T-count, and a specific realization based on the LUT size parameter that is given to LHRS (more details in the paper). By clicking on lhrs plot one can see the results of all synthesized benchmarks ordered by the LUT size parameter. The Pareto plot link opens a plot in which designs are compared against each other based on T-count and qubits.

EPFL Arithmetic Benchmarks

This section lists the currently best known quantum network realizations of the arithmetic instances taken from the EPFL combinational benchmark suite. We collect all Pareto-optimal solutions with respect to qubits and T-count. The extreme points (best qubits and best T-count) are directly shown in the table. Click on the link in the last column to display a Pareto plot containing all solutions. Clicking on the approach name or on a data point in a Pareto plot allows to download the circuit realization file.

Benchmark Best Qubits Best T-count All Pareto-optimal solutions
Name Inputs Outputs Qubits T gates Approach Qubits T gates Approach

If you have a new Pareto-optimal solution for one of the files, please send it to us using the following form. If it passes equivalence check, we'll add it to the table.

(will not be published)
(optional; in case you used RevKit)
(use zip file format)

Optimal Single-target Gates

The hybrid mapping method in LUT-based hierarchical reversible synthesis (LHRS) is based on replacing reversible single-target gates with up to 4-variable control functions into optimum or optimal Clifford+T networks. It has been shown that two functions which are equivalent up to affine transformations on the inputs and negation at the output have the same number of T gates in their optimum Clifford+T networks. Consequently, it is sufficient to find an optimum network for one function representative of each class. All such classes for 2-, 3-, and 4-variable functions (except the constant function) are listed here, together with the current best known Clifford+T network. A next the number of T gates achieves that the network is provably optimum. Each network can be downloaded as image, real file, QC file, and qcode file.

Function T gates Files
#1 7 image | real | qc | qcode
#3 0 image | real | qc | qcode
#01 15 image | real | qc | qcode
#03 7 image | real | qc | qcode
#07 16 image | real | qc | qcode
#0f 0 image | real | qc | qcode
#17 7 image | real | qc | qcode
#0001 40 image | real | qc | qcode
#0003 15 image | real | qc | qcode
#0007 47 image | real | qc | qcode
#000f 7 image | real | qc | qcode
#0017 23 image | real | qc | qcode
#001f 43 image | real | qc | qcode
#003f 16 image | real | qc | qcode
#007f 40 image | real | qc | qcode
#00ff 0 image | real | qc | qcode
#0117 79 image | real | qc | qcode
#011f 27 image | real | qc | qcode
#013f 48 image | real | qc | qcode
#017f 140 image | real | qc | qcode
#033f 7 image | real | qc | qcode
#0356 12 image | real | qc | qcode
#0357 61 image | real | qc | qcode
#035f 23 image | real | qc | qcode

In order to synthesize a reversible network as starting point from one of the functions given in the table, one can use the following command sequence in RevKit (here we used the function #0356 as an example).

revkit> tt 0x0356
revkit> tt > aig               # or alternatively: convert --tt_to_aig
revkit> esopbs -ae
revkit> print -c
revkit> write_real file.real

In order to obtain the current best known Clifford+T network for one of the listed functions, one can use the following command sequence in Revit (again using the same exaple; one needs to adjust the number of lines for smaller functions accordingly).

revkit> read_real -s "s[0356] a b c d e"
revkit> stg4
revkit> print -c
revkit> write_qc file.qc

If you have an improved solution for one of the files, please send it to us using the following form. If it passes equivalence check, we'll update the table.

(will not be published)
(optional; in case you used RevKit)
(use zip file format)

Contact

This benchmark page is maintained by

© 2017 Microsoft    Privacy & Cookies | Terms Of Use | Trademarks