@lattice-surgery/liblsqecc
TypeScript icon, indicating that this package has built-in type declarations

0.3.1 • Public • Published

NPM distribution of the the Lattice Surgery Compiler's C++ edition

arXiv Unitary Fund

Lattice Surgery Compiler-fin-01

This package allows calling the Lattice Surgery Compiler's C++ edition, aka Liblsqecc from Javascript.

Background on liblsqecc

The Liblsqecc package is part of the Lattice Surgery compiler project. It's a tool for quantum error correction, that translates an arbitrary quantum circuit into surface code operations based on lattice surgery. These instruction are expressed as a 3D array in JSON format. A viewer is available here.

Read more about the project in its paper and on https://latticesurgery.com, or contribute on github.

How to use this package

This package provides an interface to the Liblsqecc's executable target lsqecc_slicer though the Slicer class. The type interface describes which options are available.

import { Slicer } from "@lattice-surgery/liblsqecc";

const slicer = await Slicer.load();

const result = slicer.run(YOUR_CIRCUIT_AS_STRING, 'qasm');

For an overview of what the options do, please consult executable's readme.

Package Sidebar

Install

npm i @lattice-surgery/liblsqecc

Weekly Downloads

0

Version

0.3.1

License

GPL-3.0-only

Unpacked Size

816 kB

Total Files

8

Last publish

Collaborators

  • alexnguyenn