The GAP package for calculating the distance of a
The GAP package QDistRnd implements a probabilistic algorithm for
finding the distance of a
In addition, a format for storing matrices associated with
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.
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.
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 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.
-
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)withqnot 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. -
Write sample read/write routines for
MTXEfiles inMathematicaand/orC. -
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 asp-ary integers. The only apparent advantage would be a unification with the currently used format for prime field elements using the equivalence withZ(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.