QDistRnd

QDistRnd: A GAP package for computing the distance of quantum error-correcting codes - Published in JOSS (2022)

https://github.com/qec-pages/qdistrnd

Science Score: 100.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org
  • Committers with academic emails
    1 of 5 committers (20.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

quantum-computing
Last synced: 6 months ago · JSON representation ·

Repository

Basic Info
Statistics
  • Stars: 23
  • Watchers: 3
  • Forks: 2
  • Open Issues: 2
  • Releases: 12
Topics
quantum-computing
Created over 4 years ago · Last pushed about 1 year ago
Metadata Files
Readme Contributing License Citation Zenodo

README.md

GAP package QDistRnd

The GAP package for calculating the distance of a $q$-ary quantum stabilizer code

DOI

Overview

The GAP package QDistRnd implements a probabilistic algorithm for finding the distance of a $q$-ary quantum low-density parity-check code linear over a finite field GF($q$). An empirical convergence criterion is provided to estimate the probability that a minimum weight codeword has actually been found. Versions of the routines for CSS and regular stabilizer codes are given.

In addition, a format for storing matrices associated with $q$-ary quantum codes is introduced and implemented via provided import/export routines. The format is based on the well established MaTrix market eXchange (MTX) Coordinate format developed at NIST, and is designed for full backward compatibility with this format. Thus, the files are readable by any software package which supports MTX.

Requirements

The package QDistRnd requires the Guava package to run; GAPDoc and AutoDoc are required to generate the documentation (see the file PackageInfo.g for versions required). All of these packages are included with GAP version 4.11; this or later version of GAP is strongly recommended.

Installation

Starting with GAP 4.13.0, the QDistRnd package is distributed with a standard installation of GAP.

To install the package permanently, download the latest released version from releases and unpack it in the pkg directory of one of your GAP root directories. After installation, the package can be loaded at the GAP prompt by typing

gap> LoadPackage("QDistRnd");

Alternatively, if you just want to try it, you can unpack the package anywhere and type at the GAP prompt

gap> SetPackagePath("QDistRnd","absolute_path_to_the_package_QDistRnd" );

After that you can load the package as you would do normally.

Testing

After installation, basic tests of the package (most of the examples listed in the package manual) can by performed by running

gap> TestPackage("qdistrnd");

at the GAP command prompt. Note that the package name must be in lowercase.

The same tests are run as a part of documentation processing script which is also executed as a GitHub Action every time changes are commited.

Documentation

Documentation for the package can be found in the doc subdirectory in HTML form as chap0.html and PDF form as manual.pdf. Documentation can also be accessed on the package website and through the standard GAP help system. Documentation can be recompiled by running

gap makedoc.g

in the package directory.

Plans for the future

  1. The package only deals with Galois-qubit q-ary codes. It would be nice to develop and implement similar methods for quantum codes over a finite ring, e.g., Z(q) with q not necessarily a power of a prime. This could be done with the help of Smith normal form decomposition. The required complexity may be higher, however.

  2. Write sample read/write routines for MTXE files in Mathematica and/or C.

  3. If there is need (or interest), add routines for the alternate integer format to represent elements from extension fields, where polynomials over a prime field GF(p) will be encoded as p-ary integers. The only apparent advantage would be a unification with the currently used format for prime field elements using the equivalence with Z(p). On the other hand, it would not improve readability: the corresponding decimal integers would be as difficult to interpret as the currently used integer powers of a primitive field element.

Owner

  • Name: QEC-pages
  • Login: QEC-pages
  • Kind: organization

JOSS Publication

QDistRnd: A GAP package for computing the distance of quantum error-correcting codes
Published
March 22, 2022
Volume 7, Issue 71, Page 4120
Authors
Leonid P. Pryadko ORCID
Department of Physics & Astronomy, University of California, Riverside, California, 92521 USA, The Department of Physics & Engineering, ITMO University, St. Petersburg, 197101 Russia
Vadim A. Shabashov
The Department of Physics & Engineering, ITMO University, St. Petersburg, 197101 Russia
Valerii K. Kozin
Department of Physics, University of Basel, Klingelbergstrasse 82, CH-4056 Basel, Switzerland, The Department of Physics & Engineering, ITMO University, St. Petersburg, 197101 Russia
Editor
Daniel S. Katz ORCID
Tags
Quantum Error Correction QECC Quantum Error-Correcting Code Qudit code quantum stabilizer code CSS code

Citation (CITATION.cff)

cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: Pryadko
    given-names: "Leonid P."
    orcid: https://orcid.org/0000-0002-4990-0259
  - family-names: Shabashov
    given-names: "V. A."
  - family-names: Kozin
    given-names: "V. K."
title: "QDistRnd: Calculate the distance of a q-ary quantum stabilizer code"
version: v0.9.5
date-released: 2024-11-20
repository-code: "https://github.com/QEC-pages/QDistRnd"
url: "https://QEC-pages.github.io/QDistRnd/"
keywords:
  - QECC
  - "quantum code"
  - "stabilizer code"
  - "quantum error correcting code"
  - "minimal distance"
  - "GAP package"
license:
  - GPL-2.0-or-later
 

GitHub Events

Total
  • Create event: 2
  • Release event: 2
  • Issues event: 7
  • Watch event: 7
  • Issue comment event: 13
  • Push event: 7
  • Pull request review event: 1
  • Pull request event: 4
Last Year
  • Create event: 2
  • Release event: 2
  • Issues event: 7
  • Watch event: 7
  • Issue comment event: 13
  • Push event: 7
  • Pull request review event: 1
  • Pull request event: 4

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 151
  • Total Committers: 5
  • Avg Commits per committer: 30.2
  • Development Distribution Score (DDS): 0.338
Past Year
  • Commits: 2
  • Committers: 2
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.5
Top Committers
Name Email Commits
LeonidPryadko 6****o 100
valkozin k****a@g****m 32
Max Horn m****x@q****e 14
VadimShabashov 5****v 3
Daniel S. Katz d****z@i****g 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 27
  • Total pull requests: 23
  • Average time to close issues: 3 months
  • Average time to close pull requests: 13 days
  • Total issue authors: 5
  • Total pull request authors: 4
  • Average comments per issue: 1.78
  • Average comments per pull request: 0.26
  • Merged pull requests: 22
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 4
  • Pull requests: 3
  • Average time to close issues: 11 days
  • Average time to close pull requests: 21 days
  • Issue authors: 3
  • Pull request authors: 2
  • Average comments per issue: 2.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • fingolfin (9)
  • oscarhiggott (8)
  • LeonidPryadko (5)
  • pan-pavel (4)
  • qodesign (1)
Pull Request Authors
  • fingolfin (15)
  • LeonidPryadko (11)
  • danielskatz (2)
  • valkozin (2)
Top Labels
Issue Labels
bug (1)
Pull Request Labels

Dependencies

.github/workflows/CI.yml actions
  • actions/checkout v4 composite
  • actions/upload-artifact v3 composite
  • codecov/codecov-action v3 composite
  • gap-actions/build-pkg v1 composite
  • gap-actions/build-pkg-docs v1 composite
  • gap-actions/process-coverage v2 composite
  • gap-actions/run-pkg-tests v2 composite
  • gap-actions/setup-gap v2 composite
.github/workflows/draft-pdf.yml actions
  • actions/checkout v2 composite
  • actions/upload-artifact v1 composite
  • openjournals/openjournals-draft-action master composite