From 28484a2c1dc543a21d084b99c6c60c6b9bee5b95 Mon Sep 17 00:00:00 2001 From: "Victor V. Albert" Date: Tue, 24 Oct 2023 16:22:05 -0400 Subject: [PATCH 1/3] bivariate bicycle + refs --- codes/classical/q-ary_digits/q-ary_linear.yml | 5 ++++- .../qubits/stabilizer/qldpc/algebraic/qcga.yml | 11 ++++++----- .../stabilizer/css/two_block_quantum.yml | 2 ++ 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/codes/classical/q-ary_digits/q-ary_linear.yml b/codes/classical/q-ary_digits/q-ary_linear.yml index 6fb29fc7d..baccd6b89 100644 --- a/codes/classical/q-ary_digits/q-ary_linear.yml +++ b/codes/classical/q-ary_digits/q-ary_linear.yml @@ -18,7 +18,10 @@ description: | The two extreme cases are the \([n,0,n]\) \textit{zero code} and its dual the \([n,n,1]\) \textit{universe code}. -protection: 'Distance \(d\) of a linear code is the number of nonzero entries in the (nonzero) codeword with the smallest such number. Corrects any error set such that the difference of any pair of distinct elements of the set is a codeword.' +protection: | + Distance \(d\) of a linear code is the number of nonzero entries in the (nonzero) codeword with the smallest such number. Corrects any error set such that the difference of any pair of distinct elements of the set is a codeword. + + Geometrically local \(q\)-ary codes are limited by the \textit{classical Bravyi-Poulin-Terhal (BPT) bound} \cite{arxiv:0909.5200}, known to be tight in any Euclidean dimension \cite{arxiv:2309.16411}. features: decoders: diff --git a/codes/quantum/qubits/stabilizer/qldpc/algebraic/qcga.yml b/codes/quantum/qubits/stabilizer/qldpc/algebraic/qcga.yml index 4d1a29c42..800196bcc 100644 --- a/codes/quantum/qubits/stabilizer/qldpc/algebraic/qcga.yml +++ b/codes/quantum/qubits/stabilizer/qldpc/algebraic/qcga.yml @@ -7,8 +7,8 @@ code_id: qcga physical: qubits logical: qubits -name: 'Bravyi-Cross-Gambetta-Maslov-Rall-Yoder (BCGMRY) code' -short_name: 'BCGMRY code' +# name: 'Bravyi-Cross-Gambetta-Maslov-Rall-Yoder (BCGMRY) code' +name: 'Bivariate bicycle code' introduced: '\cite{arxiv:2308.07915}' description: | @@ -21,7 +21,7 @@ description: | features: rate: 'When ancilla qubit overhead is included, the encoding rate surpasses that of the surface code. - A general \([[n,k,d]]\) BCGMRY code requires \(n\) ancilla qubits for encoding, meaning that its \textit{ancilla-added encoding rate} is \(k/2n\). + A general \([[n,k,d]]\) bivariate bicycle code requires \(n\) ancilla qubits for encoding, meaning that its \textit{ancilla-added encoding rate} is \(k/2n\). For example, the \([[144,12,12]]\) code has ancilla-added rate \(1/24\). In contrast, the distance-13 surface code has ancilla-added rate \(1/338\).' @@ -34,16 +34,17 @@ features: threshold: - '\(0.8\%\) pseudothreshold for circuit-level noise under BP-OSD decoder \cite{arxiv:2308.07915} (cf. \cite{arxiv:0803.0272}).' + # Parent is qubit_css because primary parent needs to be qubit relations: parents: - code_id: qubit_css - code_id: 2bga - detail: 'BCGMRY codes are Abelian 2BGA codes with stabilizer generators of weight 6.' + detail: 'Bivariate bicycle codes are Abelian 2BGA codes over groups of the form \(\mathbb{Z}_{r} \times \mathbb{Z}_{s}\).' - code_id: qldpc cousins: - code_id: surface - detail: 'BCGMRY codes are on par with the surface code in terms of threshold, but admit a much higher ancilla-added encoding rate at the expense of having non-geometrically local weight-six check operators.' + detail: 'Bivariate bicycle codes are on par with the surface code in terms of threshold, but admit a much higher ancilla-added encoding rate at the expense of having non-geometrically local weight-six check operators.' # Begin Entry Meta Information diff --git a/codes/quantum/qudits_galois/stabilizer/css/two_block_quantum.yml b/codes/quantum/qudits_galois/stabilizer/css/two_block_quantum.yml index 9c33850c7..5812c5648 100644 --- a/codes/quantum/qudits_galois/stabilizer/css/two_block_quantum.yml +++ b/codes/quantum/qudits_galois/stabilizer/css/two_block_quantum.yml @@ -16,6 +16,8 @@ alternative_names: description: | Galois-qudit CSS code whose stabilizer generator matrices \(H_X=(A,B)\) and \(H_Z=(B^T,-A^T)\), are constructed from a pair of square commuting matrices \(A\) and \(B\). + Generalized constructions utilizing more than two blocks have also been considered \cite{arxiv:2310.15092}. + protection: | Code parameters are generally unknown, although they can be formally expressed in terms of ranks of some matrices related to \(A\) and \(B\). The corresponding expressions, as well as some upper and lower bounds on parameters are given in \cite{arXiv:2306.16400}. From e0fd73ab338ed4539d29d93fdbafe46157043dda Mon Sep 17 00:00:00 2001 From: "Victor V. Albert" Date: Wed, 25 Oct 2023 09:14:52 -0400 Subject: [PATCH 2/3] Rhombic dodecahedron surface --- .../fock_state/rotation/binomial.yml | 1 + .../oscillators/stabilizer/lattice/gkp.yml | 2 +- .../two_dim/rhombic_dodecahedron_surface.yml | 30 +++++++++++++++++++ .../two_dim/stellated_dodecahedron_css.yml | 7 +++-- 4 files changed, 37 insertions(+), 3 deletions(-) create mode 100644 codes/quantum/qubits/stabilizer/topological/surface/two_dim/rhombic_dodecahedron_surface.yml diff --git a/codes/quantum/oscillators/fock_state/rotation/binomial.yml b/codes/quantum/oscillators/fock_state/rotation/binomial.yml index 9e89eaf27..4a900611c 100644 --- a/codes/quantum/oscillators/fock_state/rotation/binomial.yml +++ b/codes/quantum/oscillators/fock_state/rotation/binomial.yml @@ -44,6 +44,7 @@ features: realizations: - 'Microwave cavities coupled to superconducting circuits: state transfer between a binomial codeword to another system \cite{arxiv:1712.05832}, error-correction protocol nearly reaching break-even \cite{arxiv:1805.09072}, and a teleported CNOT gate \cite{arxiv:1810.04690}. A realization of the "0-2-4" encoding is the first to go beyond break-even error-correction and yields a logical lifetime that exceeds the cavity lifetime by \(16\%\) \cite{arxiv:2211.09319} (see also \cite{arxiv:2211.09116}).' + - 'Motional degree of freedom of a trapped ion: binomial state preparation for \(S=2\) realized by Tan group \cite{arxiv:2310.15546}.' notes: - 'The mean occupation number, or average Fock-state number in maximally-mixed state of the code, is \((N+1)(S+1)(q-1)/2 \), where \(q\) is the qudit dimension.' diff --git a/codes/quantum/oscillators/stabilizer/lattice/gkp.yml b/codes/quantum/oscillators/stabilizer/lattice/gkp.yml index 0ede7ce14..fac441888 100644 --- a/codes/quantum/oscillators/stabilizer/lattice/gkp.yml +++ b/codes/quantum/oscillators/stabilizer/lattice/gkp.yml @@ -51,7 +51,7 @@ notes: - 'Reviews on GKP codes presented in Refs. \cite{arxiv:2002.11008,arXiv:2106.12989}.' realizations: - - 'Motional degree of freedom of a trapped ion: square-lattice GKP encoding realized with the help of post-selection \cite{arxiv:1807.01033,arXiv:1907.06478}, followed by realization of reduced form of GKP error correction, where displacement error syndromes are measured to one bit of precision using an ion electronic state \cite{arxiv:2010.09681}.' + - 'Motional degree of freedom of a trapped ion: square-lattice GKP encoding realized with the help of post-selection by Home group \cite{arxiv:1807.01033,arXiv:1907.06478}, followed by realization of reduced form of GKP error correction, where displacement error syndromes are measured to one bit of precision using an ion electronic state \cite{arxiv:2010.09681}. State preparation also realized by Tan group \cite{arxiv:2310.15546}.' - 'Microwave cavity coupled to superconducting circuits: reduced form of square-lattice GKP error correction, where displacement error syndromes are measured to one bit of precision using an ancillary transmon \cite{arxiv:1907.12487}. Subsequent paper by Devoret group \cite{arxiv:2211.09116} (see also \cite{arxiv:2310.11400}) uses reinforcement learning for error-correction cycle design and is the first to go beyond break-even error-correction, with the lifetime of a logical qubit exceeding the cavity lifetime by about a factor of two (see also \cite{arxiv:2211.09319}).' - 'GKP states and homodyne measurements have been realized in propagating telecom light by the Furusawa group \cite{arxiv:2309.02306}.' - 'Single-qubit \(Z\)-gate has been demonstrated in the single-photon subspace of an infinite-mode space \cite{arxiv:1904.01351}, in which time and frequency become bosonic conjugate variables of a single effective bosonic mode.' diff --git a/codes/quantum/qubits/stabilizer/topological/surface/two_dim/rhombic_dodecahedron_surface.yml b/codes/quantum/qubits/stabilizer/topological/surface/two_dim/rhombic_dodecahedron_surface.yml new file mode 100644 index 000000000..a987c790d --- /dev/null +++ b/codes/quantum/qubits/stabilizer/topological/surface/two_dim/rhombic_dodecahedron_surface.yml @@ -0,0 +1,30 @@ +####################################################### +## This is a code entry in the error correction zoo. ## +## https://github.com/errorcorrectionzoo ## +####################################################### + +code_id: rhombic_dodecahedron_surface +physical: qubits +logical: qubits + +name: 'Rhombic dodecahedron surface code' +introduced: '\cite{arXiv:2010.06628}' + +description: | + A \([[14,3,3]]\) non-CSS surface code whose qubits lie on the vertices of a rhombic dodecahedron. Its non-CSS nature is due to twist defects \cite{arxiv:1004.1838} stemming from the geomtetry of the polytope. + +relations: + parents: + - code_id: clifford-deformed_surface + - code_id: small_distance + cousins: + - code_id: polytope + detail: 'The rhombic dodecahedron surface code arranges qubits and stabilizer generators on polytopes.' + + +# Begin Entry Meta Information +_meta: + # Change log - most recent first + changelog: + - user_id: VictorVAlbert + date: '2023-10-25' diff --git a/codes/quantum/qubits/stabilizer/topological/surface/two_dim/stellated_dodecahedron_css.yml b/codes/quantum/qubits/stabilizer/topological/surface/two_dim/stellated_dodecahedron_css.yml index d1af0bc92..af491bc64 100644 --- a/codes/quantum/qubits/stabilizer/topological/surface/two_dim/stellated_dodecahedron_css.yml +++ b/codes/quantum/qubits/stabilizer/topological/surface/two_dim/stellated_dodecahedron_css.yml @@ -10,8 +10,11 @@ logical: qubits name: 'Bring''s code' introduced: '\cite{arXiv:1712.07666}' +alternative_names: + - 'Small stellated dodecahedron code' + description: | - Also called a \textit{small stellated dodecahedron code}. A \([[30,8,3]]\) hyperbolic surface code on a quotient of the \(\{5,5\}\) hyperbolic tiling called Bring's curve. + A \([[30,8,3]]\) hyperbolic surface code on a quotient of the \(\{5,5\}\) hyperbolic tiling called Bring's curve. Its qubits and stabilizer generators lie on the vertices of the small stellated dodecahedron. Admits a set of weight-five stabilizer generators. relations: @@ -20,7 +23,7 @@ relations: - code_id: small_distance cousins: - code_id: polytope - detail: 'The stellated dodecahedron quantum code and related codes listed in \cite[Table 1]{arXiv:1712.07666} arranges qubits and stabilizer generators on polytopes.' + detail: 'Bring''s code and related codes listed in \cite[Table 1]{arXiv:1712.07666} arrange qubits and stabilizer generators on polytopes.' # Begin Entry Meta Information From 9f2a72778a6861526e003000c82096c4713aaa60 Mon Sep 17 00:00:00 2001 From: "Victor V. Albert" Date: Wed, 25 Oct 2023 11:18:00 -0400 Subject: [PATCH 3/3] ~ --- codes/quantum/properties/hamiltonian/qltc.yml | 4 ++-- .../clifford-deformed_surface/clifford-deformed_surface.svg | 0 .../clifford-deformed_surface/clifford-deformed_surface.yml | 0 .../{two_dim => non-css}/rhombic_dodecahedron_surface.yml | 0 .../topological/surface/{two_dim => non-css}/xysurface.yml | 0 .../topological/surface/{two_dim => non-css}/xzzx.yml | 0 6 files changed, 2 insertions(+), 2 deletions(-) rename codes/quantum/qubits/stabilizer/topological/surface/{ => non-css}/clifford-deformed_surface/clifford-deformed_surface.svg (100%) rename codes/quantum/qubits/stabilizer/topological/surface/{ => non-css}/clifford-deformed_surface/clifford-deformed_surface.yml (100%) rename codes/quantum/qubits/stabilizer/topological/surface/{two_dim => non-css}/rhombic_dodecahedron_surface.yml (100%) rename codes/quantum/qubits/stabilizer/topological/surface/{two_dim => non-css}/xysurface.yml (100%) rename codes/quantum/qubits/stabilizer/topological/surface/{two_dim => non-css}/xzzx.yml (100%) diff --git a/codes/quantum/properties/hamiltonian/qltc.yml b/codes/quantum/properties/hamiltonian/qltc.yml index 651dc0202..8e41f43ab 100644 --- a/codes/quantum/properties/hamiltonian/qltc.yml +++ b/codes/quantum/properties/hamiltonian/qltc.yml @@ -10,11 +10,11 @@ short_name: 'QLTC' introduced: '\cite{arxiv:1310.5664}' description: | - A local commuting-projector Hamiltonian-based block quantum code which has a nonzero average-energy penalty for creating large errors. Informally, QLTC error states that are far away from the codespace have to be excited states of many of the code's local projectors. + A local commuting-projector Hamiltonian-based block quantum code which has a nonzero average-energy penalty for creating large errors. Informally, QLTC error states that are far away from the codespace have to be excited states by a number of the code's local projectors that scales linearly with \(n\). The average-energy penalty is quantified by the code's \textit{soundness} \(R\). Typically, one looks at how \(R\) scales with increasing code size for infinite families of codes, defining QLTC families as those for which the soundness is asymptotically constant. QLTC families that also have asymptotically constant distance, rate, and weight of local projectors are called \(c^3\)\textit{-QLTCs}; none have been found so far. - More technically, a QLTC is a code \(\mathsf{C}\) defined as the ground-state space of a commuting-projector Hamiltonian \(H\) consisting of a sum of \(r\) local projectors, each of which acts on exactly \(u\) qubits (for some constant \(u\)). Such a code is a \((u,R)\)-QLTC with soundness function \(R(\delta)\in[0,1]\) if + More technically, a QLTC is a code \(\mathsf{C}\) defined as the ground-state space of a commuting-projector Hamiltonian \(H\) consisting of a sum of \(r\) local projectors (where \(r\) typically scales linearly with \(n\)), each of which acts on exactly \(u\) qubits (for some constant \(u\)). Such a code is a \((u,R)\)-QLTC with soundness function \(R(\delta)\in[0,1]\) if \begin{align} \label{eq:qltc} \forall \delta > 0,|\psi\rangle~:~\text{dist}(|\psi\rangle,C) \geq \delta n \Rightarrow \frac{1}{r}\langle\psi|H|\psi\rangle\geq R(\delta)~, diff --git a/codes/quantum/qubits/stabilizer/topological/surface/clifford-deformed_surface/clifford-deformed_surface.svg b/codes/quantum/qubits/stabilizer/topological/surface/non-css/clifford-deformed_surface/clifford-deformed_surface.svg similarity index 100% rename from codes/quantum/qubits/stabilizer/topological/surface/clifford-deformed_surface/clifford-deformed_surface.svg rename to codes/quantum/qubits/stabilizer/topological/surface/non-css/clifford-deformed_surface/clifford-deformed_surface.svg diff --git a/codes/quantum/qubits/stabilizer/topological/surface/clifford-deformed_surface/clifford-deformed_surface.yml b/codes/quantum/qubits/stabilizer/topological/surface/non-css/clifford-deformed_surface/clifford-deformed_surface.yml similarity index 100% rename from codes/quantum/qubits/stabilizer/topological/surface/clifford-deformed_surface/clifford-deformed_surface.yml rename to codes/quantum/qubits/stabilizer/topological/surface/non-css/clifford-deformed_surface/clifford-deformed_surface.yml diff --git a/codes/quantum/qubits/stabilizer/topological/surface/two_dim/rhombic_dodecahedron_surface.yml b/codes/quantum/qubits/stabilizer/topological/surface/non-css/rhombic_dodecahedron_surface.yml similarity index 100% rename from codes/quantum/qubits/stabilizer/topological/surface/two_dim/rhombic_dodecahedron_surface.yml rename to codes/quantum/qubits/stabilizer/topological/surface/non-css/rhombic_dodecahedron_surface.yml diff --git a/codes/quantum/qubits/stabilizer/topological/surface/two_dim/xysurface.yml b/codes/quantum/qubits/stabilizer/topological/surface/non-css/xysurface.yml similarity index 100% rename from codes/quantum/qubits/stabilizer/topological/surface/two_dim/xysurface.yml rename to codes/quantum/qubits/stabilizer/topological/surface/non-css/xysurface.yml diff --git a/codes/quantum/qubits/stabilizer/topological/surface/two_dim/xzzx.yml b/codes/quantum/qubits/stabilizer/topological/surface/non-css/xzzx.yml similarity index 100% rename from codes/quantum/qubits/stabilizer/topological/surface/two_dim/xzzx.yml rename to codes/quantum/qubits/stabilizer/topological/surface/non-css/xzzx.yml