Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion codes/quantum/qubits/small_distance/small/8/stab_8_3_3.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ relations:
_meta:
# Change log - most recent first
changelog:
- user_id: FerozAhmad
- user_id: FerozAhmedMian
date: '2024-03-14'
- user_id: VictorVAlbert
date: '2023-11-28'
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#######################################################
## This is a code entry in the error correction zoo. ##
## https://github.com/errorcorrectionzoo ##
#######################################################

code_id: double_homological_product
physical: qubits
logical: qubits

name: 'Double homological product code'
introduced: '\cite{arxiv:1805.09271}'

description: |
The double homological product code is derived from two applications of the homological product to a classical code, resulting in a length-\(4\) chain complex:
\[
\breve{C}_{-2} \xrightarrow{\breve{\delta}_{-2}} \breve{C}_{-1} \xrightarrow{\breve{\delta}_{-1}} \breve{C}_0 \xrightarrow{\breve{\delta}_0} \breve{C}_1 \xrightarrow{\breve{\delta}_1} \breve{C}_2.
\]

The boundary maps \(\breve{\delta}_j\) are constructed using tensor products of the original boundary maps, ensuring the chain condition \(\breve{\delta}_{j+1} \breve{\delta}_j = 0\).

The construction method allows for the use of two different classical codes as inputs. However, \cite{arxiv:1805.09271} assumes identical input codes for simplicity.

The code supports metachecks to detect measurement errors, enabling single-shot error correction.

protection: |
- Given a classical \([n, k, d]\) code, the double homological product yields a quantum code with parameters:
\[
[[n_Q = n^4 + 4n^2(n-k)^2 + (n-k)^4, k_Q = k^4, d_Q \geq d, d_{ss} = \infty]].
\]
- The code is \((d, f)\)-sound with \(f(x) = x^3/4\), meaning small syndromes can be corrected by small errors.
- The check redundancy is bounded (\(\breve{\upsilon} < 2\)), and the construction preserves LDPC properties if the original code is LDPC.

relations:
parents:
- code_id: homological_product
cousins:
- code_id: higher_dimensional_toric
detail: While topological codes like the \(2D\) or \(2D\) toric codes offer intuitive geometric structures, they face fundamental trade-offs in code parameters (e.g., rate vs. distance). The double homological product code, though more abstract, shares key advantages with high-dimensional topological codes—such as single-shot error correction—while circumventing these limitation.
- code_id: hypergraph_product
detail: Notational conventions for chain complexes permit some flexibility. \cite{arxiv:1805.09271} select conventions ensuring that the multi-sector homological product construction directly corresponds to the hypergraph product of \cite{arxiv:0903.0566}.

features:
fault_tolerance:
- Corrects errors using only one round of noisy measurements, with residual errors bounded by the soundness function.
- Metachecks enable detection of measurement errors, improving fault tolerance.

decoders:
- 'The meta-check-based decoder operates through a two-stage process: first, it identifies a minimal correction \( s_{\text{rec}} \) to the syndrome \( s \) such that the repaired syndrome \( s + s_{\text{rec}} \) satisfies all metachecks (\( H(s + s_{\text{rec}}) = 0 \)). Second, it computes a minimal-weight physical error \( E_{\text{rec}} \) consistent with the repaired syndrome. This approach uniquely tolerates up to \( \lfloor (d_{ss} - 1)/2 \rfloor \) measurement errors in a single round, eliminating the need for repeated syndrome measurements—a hallmark of single-shot error correction.'
- 'The minimum-weight decoder optimizes the recovery operation \( E_{\text{rec}} \) to minimize the residual error \( E_{\text{rec}} \cdot E \) given a noisy syndrome \( s = \sigma(E) + u \). The decoder’s performance is intrinsically tied to the code’s soundness: when the code is \((t, f)\)-sound, the minimum-weight decoder guarantees that the residual error’s min-weight scales as \( f(2|u|) \) for measurement errors \( |u| < t/2 \) \cite{arxiv:1805.09271}. This property is particularly robust in double homological codes, where soundness follows a cubic scaling (\( f(x) \sim x^3 \)).'

# Begin Entry Meta Information
_meta:
# Change log - most recent first
changelog:
- user_id: FerozAhmedMian
date: '2025-07-28'

4 changes: 2 additions & 2 deletions users/users_db.yml
Original file line number Diff line number Diff line change
Expand Up @@ -556,8 +556,8 @@
name: 'Purva Thakre'
githubusername: purva-thakre

- user_id: FerozAhmad
name: 'Feroz Ahmad'
- user_id: FerozAhmedMian
name: 'Feroz Ahmed Mian'
githubusername: Fe-r-oz

- user_id: vtomole
Expand Down