Actions
Export to: EndNote | Zotero | Mendeley
Collections
This file is not currently in any collections.
CPC code creation software as presented at Coherent Parity Check Construction for Quantum Error Correction [software] Open Access
Descriptions
- Resource type
- Software
- Contributors
- Creator:
Nicholas Chancellor
1
Contact person: Nicholas Chancellor 1
Contact person: Dominic Horsman 1
1 Durham University, UK
- Funder
-
EPSRC grant EP/L022303/1
Engineering and Physical Sciences Research Council
- Research methods
- Other description
-
This folder contains code based on the methods of arXiv:1611.08012 by N. Chancellor, A. Kissenger, J. Roffe, S. Zohren, and D. Horsman feel free to reuse/modify but please attribute the source and cite our paper in any published work All code in this folder was written by Nicholas Chancellor We have created two versions of the code, one in GNU Octave, and one in Python 3, both sets of code provide the same functionality and which to use comes down to user preference. The Python code additionally includes a Jupyter notebook explaining how to use the code, at the time this code was written Jupyter could be obtained free of charge from http://jupyter.org/
. All results for arXiv:1611.08012 were obtained using the GNU Octave code, along with a wrapper script for parallelization which has not been included. The programs given here provides a utility to search for CPC codes of arbitrary code distance (in the form of CPC matrices) using random search, and to process the resulting codes both by turning the matrices into latex arrays and by converting them into stabilizer tables. We make no claim that random search is the optimal way to find these codes, in fact we strongly suspect that huge gains could be made by using more sophisticated numerical searching algorithms. This code is meant to provide proof-of-principle of the CPC idea, and allows a utility for others to experiment with simple codes found using the CPC formalism without having to understand our paper and produce the code themselves*. * Note that this statement of intended purpose does NOT imply that we provide any kind of warranty on our code, which we do not.
This folder contains the following Python code, Jupyter notebook, and example output for the Jupyter notebook: CPC_examples.ipynb - a Jupyter notebook which demonstrates how to use the module defined in python_CPC_functions.py. At the time of writing, Jupyter could be freely obtained from http://jupyter.org/
. The following files are output from the Jupyter example: MbCell.npy MpCell.npy McCell.npy MbCellY.npy MpCellY.npy McCellY.npy Mb_latex_example.txt stab_test.txt python_CPC_functions.py - A python module for finding and manipulating CPC codes, the functions are: find_codes - a function for searching for CPC codes of any distance by random search, takes number of physical qubits (n), number of logical qubits (k) and minimum number of errors which code should correct as required arguments, as well as number of codes to check and number to keep as optional arguments also has optional argument which causes it to save the codes. Outputs codes as tuple of arrays, (MbCell,MpCell,McCell) find_codes_includeY - same as find_codes, but uses an error model which includes Pauli Y errors CPC_mats_2_stabilizers - a function for creating stablizer tables from CPC codes, and displaying to screen or saving in latex array format. Takes the three CPC matrices as required arguments, and the name of file which results should be saved to as an optional argument, if no file name is specified, results are not saved. convert_to_latex_array - converts the CPC matricies to latex arrays and saves them. Takes a CPC matrix and a filename as a required argument. CPC_randSearch_allDists_simple.py - a script which reproduces the functionality of the 'find_codes' function in the Python module
This folder contains the following GNU Octave code: CPC_randSearch_simple.m - an octave script which searches for and stores the CPC matrices for distance 3 codes. Matrices are stored in cellular arrays MbCell, MpCell, and McCell. This program is directly referenced in the paper. CPC_randSearch_allDists_simple.m - an octave script which searches for and stores the CPC matrices for codes of arbitrary user specified distance (expressed in terms of the number of errors the code can correct). Matrices are stored in cellular arrays MbCell, MpCell, and McCell. This program is directly referenced in the paper. CPC_randSearch_allDists_includeY.m - same as CPC_randSearch_allDists_simple.m, but using an error model which includes Pauli Y errors CPC_mats_2_stabalizers.m - an octave function which takes CPC matrices and a filename as input, and saves the stabalizer table to the user specified filename in latex format convert_to_latex_array.m - an octave function which takes a numerical array and filename as input, and saves the array in latex format to the user specified filename.
- Keyword
- Quantum Error Correction
Quantum Information
CSS codes
- Subject
- Location
- Language
- Cited in
- arxiv:1611.08012
- Identifier
- ark:/32150/r1bn999672k
doi:10.15128/r1bn999672k
- Rights
- Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA)
- Publisher
-
Durham University
- Date Created
File Details
- Depositor
- N.G. Chancellor
- Date Uploaded
- 7 December 2017, 21:12:02
- Date Modified
- 5 October 2018, 15:10:27
- Audit Status
- Audits have not yet been run on this file.
- Characterization
-
File format: zip (ZIP Format)
Mime type: application/zip
File size: 29244
Last modified: 2017:12:13 15:42:21+00:00
Filename: CPC-r1bn999672k.zip
Original checksum: 17d94fb6ea70f1b9007865d7abf52f3a
User Activity | Date |
---|---|
User N. Syrotiuk has updated CPC code creation software as presented at Coherent Parity Check Construction for Quantum Error Correction [software] | about 6 years ago |
User N. Syrotiuk has updated CPC code creation software as presented at Coherent Parity Check Construction for Quantum Error Correction [software] | about 6 years ago |
User S. Palucha has updated CPC code creation software as presented at Coherent Parity Check Construction for Quantum Error Correction | almost 7 years ago |
User S. Palucha has added a new version of CPC code creation software as presented at Coherent Parity Check Construction for Quantum Error Correction | almost 7 years ago |
User S. Palucha has updated CPC code creation software as presented at Coherent Parity Check Construction for Quantum Error Correction | almost 7 years ago |
User S. Palucha has updated CPC_maker_Python.zip | almost 7 years ago |