diff --git a/NOTICE b/NOTICE index c6e74b8..7dc703b 100644 --- a/NOTICE +++ b/NOTICE @@ -28,7 +28,7 @@ such as `data/tier0/`. **Stem naming in this repository:** `{family}_{n}_{k}_{d}` where `n` is code length, `k` is the number of logical qubits (from precomputed logical operators), and `d` is the certified minimum distance when known. If `d` is not certified, the stem carries the -current proven bounds, `{lb}to{ub}` or `ge{lb}` (e.g. `TN_360_4_ge17`); +current proven bounds, `{lb}to{ub}` or `ge{lb}` (e.g. `TN_360_4_17to24`); earlier stems used `unknown`. Matrix data rows are unchanged; only filenames were aligned with benchmark metadata. @@ -44,7 +44,7 @@ Upstream example IDs are shown where this repository renamed files: LP_1768_224_22 (AJ_52; was LP_1768_224_ge17) - **LP_*** (from upstream **xu_***): LP_544_80_12 (xu_16), LP_714_100_16 (xu_21; was LP_714_100_unknown) - **TN_*** (shipped in this repo) — TN_36_8_3, TN_36_8_4, TN_54_11_4, TN_72_8_8, - TN_72_14_4, TN_108_2_12, TN_144_2_13, TN_200_10_10, TN_250_10_15, TN_360_4_ge17 + TN_72_14_4, TN_108_2_12, TN_144_2_13, TN_200_10_10, TN_250_10_15, TN_360_4_17to24 (was TN_360_4_ge17) Redistribution of these files must retain the upstream MIT copyright and permission notice from the codeDistancePYPI repository. @@ -59,7 +59,9 @@ BB_144_14_14 (was BB_144_14_0), BB_288_12_18 (was BB_288_12_18, then BB_288_12_u BB_360_12_24 (was BB_360_12_24, then BB_360_12_17to24 until d = 24 was confirmed), GB_144_12_8 (was GB_144_12_24), GB_144_12_12 (was GB_144_12_37), TN_36_8_3 (was QT_36_8_3), TN_54_11_4 (was QT_54_11_4), TN_72_14_4 (was QT_72_14_4), -TN_200_10_10 (was QT_200_10_10), TN_250_10_15 (was QT_250_10_15). +TN_200_10_10 (was QT_200_10_10), TN_250_10_15 (was QT_250_10_15), +TN_360_4_17to24 (was TN_360_4_ge17; upper bound 24 from a weight-24 logical found by DistQLDPC's +GH-146 finder and independently GF(2)-verified, renamed 2026-10-23 to mirror DistQLDPC). For the canonical attribution text and preprocessing notes, see DistQLDPC [NOTICE](https://github.com/guluchen/DistQLDPC/blob/main/NOTICE). A vendored @@ -84,7 +86,7 @@ Mapping of former directory -> tier: LP_1768_224_22 -> tier5 - data/QT/: TN_36_8_3, TN_36_8_4, TN_54_11_4, TN_72_8_8, TN_72_14_4, TN_108_2_12, TN_200_10_10 -> tier0; TN_250_10_15 -> tier4 -- data/QT2/: TN_144_2_13 -> tier3; TN_360_4_ge17 -> tier5 +- data/QT2/: TN_144_2_13 -> tier3; TN_360_4_17to24 -> tier5 3. External MaxSAT binaries (`bin/maxsat/`) ------------------------------------------- diff --git a/data/README.md b/data/README.md index 3921303..d035433 100644 --- a/data/README.md +++ b/data/README.md @@ -12,7 +12,7 @@ Each line is a binary row (`0` / `1`, space-separated). **Stem names** use `{family}_{n}_{k}_{d}` with family in `BB`, `GB`, `LP`, `TN`: `n` = code length (columns of `Hx`), `k` = number of logical qubits (rows of `Gx`), `d` = certified minimum distance; when it is not certified, the current proven bounds -`{lb}to{ub}` or `ge{lb}` (e.g. `TN_360_4_ge17`), updated as bounds +`{lb}to{ub}` or `ge{lb}` (e.g. `TN_360_4_17to24`), updated as bounds improve (DistQLDPC/PI decision 2026-10-11). These spellings stay portable to Windows. `GB_*` keeps its own prefix (not merged into `BB_*`); former `QT_*` stems and the former `QT`/`QT2` directories are now `TN`. See [NOTICE](../NOTICE) for upstream IDs (e.g. codeDistancePYPI `AJ_*` / `xu_*` renamed to `LP_*`). @@ -32,10 +32,12 @@ Tier assignment (PI 2026-10-12, mirrored from DistQLDPC): by DistQLDPC main's ti | `tier2` | main 10–100 s | BB_144_14_14, BB_288_12_18, GB_144_12_12, LP_544_80_12, TN_108_2_12, TN_200_10_10 | | `tier3` | main 100–2000 s | LP_714_100_16, TN_144_2_13 | | `tier4` | main 2000–5000 s; timeout **2000 s** Mac / **5000 s** yfclab2 | TN_250_10_15 | -| `tier5` | main > 5000 s or unsolved; timeout **21600 s** (6 h) | BB_360_12_24, LP_1768_224_22, TN_360_4_ge17 | +| `tier5` | main > 5000 s or unsolved; timeout **21600 s** (6 h) | BB_360_12_24, LP_1768_224_22, TN_360_4_17to24 | -Note: DistQLDPC lists the tier5 code `TN_360_4_ge17` as `TN_360_4_24`; the -difference is unresolved and the QDistSAT name is kept until it is cross-checked. +Note: `TN_360_4_17to24` (was `TN_360_4_ge17`, renamed 2026-10-23 to mirror DistQLDPC): the upper bound 24 +comes from a weight-24 logical found by DistQLDPC's GH-146 finder and independently GF(2)-verified +(DistQLDPC `optimization/experiments/GH-146/witnesses/`); the lower bound 17 is unchanged and the +same stem is used in both repositories. Previous layout (before the tiers): `data/BB`, `data/BB2`, `data/LP`, `data/LP2`, `data/QT`, `data/QT2`. File stems are unchanged by the move; only directories changed. diff --git a/data/tier5/TN_360_4_ge17_Gx.txt b/data/tier5/TN_360_4_17to24_Gx.txt similarity index 97% rename from data/tier5/TN_360_4_ge17_Gx.txt rename to data/tier5/TN_360_4_17to24_Gx.txt index c917afd..3236b93 100644 --- a/data/tier5/TN_360_4_ge17_Gx.txt +++ b/data/tier5/TN_360_4_17to24_Gx.txt @@ -1,4 +1,4 @@ -# n=360 Z-type logical rows ker(Hx)/row(Hz) parity TN_360_4_ge17_Hx.txt +# n=360 Z-type logical rows ker(Hx)/row(Hz) parity TN_360_4_17to24_Hx.txt 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 1 0 1 1 1 1 0 0 1 0 0 1 0 0 0 1 0 1 1 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 0 1 0 1 1 0 0 1 0 1 0 1 1 1 0 1 1 0 1 1 0 1 0 0 1 0 1 0 1 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 1 1 0 1 0 1 0 1 1 0 0 1 1 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/data/tier5/TN_360_4_ge17_Gz.txt b/data/tier5/TN_360_4_17to24_Gz.txt similarity index 97% rename from data/tier5/TN_360_4_ge17_Gz.txt rename to data/tier5/TN_360_4_17to24_Gz.txt index 7a81db6..d3c71a9 100644 --- a/data/tier5/TN_360_4_ge17_Gz.txt +++ b/data/tier5/TN_360_4_17to24_Gz.txt @@ -1,4 +1,4 @@ -# n=360 X-type logical rows ker(Hz)/row(Hx) parity TN_360_4_ge17_Hz.txt +# n=360 X-type logical rows ker(Hz)/row(Hx) parity TN_360_4_17to24_Hz.txt 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 1 1 1 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 0 1 0 1 0 1 1 0 1 1 1 0 0 1 1 0 0 0 0 1 0 0 1 1 0 1 1 0 1 1 1 1 1 1 1 0 0 0 1 0 1 1 0 0 1 1 1 0 1 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 0 1 1 0 1 1 0 0 0 1 1 1 0 0 1 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/data/tier5/TN_360_4_ge17_Hx.txt b/data/tier5/TN_360_4_17to24_Hx.txt similarity index 100% rename from data/tier5/TN_360_4_ge17_Hx.txt rename to data/tier5/TN_360_4_17to24_Hx.txt diff --git a/data/tier5/TN_360_4_ge17_Hz.txt b/data/tier5/TN_360_4_17to24_Hz.txt similarity index 100% rename from data/tier5/TN_360_4_ge17_Hz.txt rename to data/tier5/TN_360_4_17to24_Hz.txt diff --git a/tables/TN_360_4_ge17.tex b/tables/TN_360_4_17to24.tex similarity index 95% rename from tables/TN_360_4_ge17.tex rename to tables/TN_360_4_17to24.tex index 559679d..7fb9207 100644 --- a/tables/TN_360_4_ge17.tex +++ b/tables/TN_360_4_17to24.tex @@ -1,6 +1,6 @@ % Requires: \usepackage{booktabs, longtable} \begin{longtable}{llrrrl p{0.22\textwidth}} -\caption{Benchmark solver results for \texttt{TN\_360\_4\_ge17} ($n=360$, scan $d \leq 20$, timeout 7200\,s per configuration).} \label{tab:bench-TN_360_4_ge17} \\ +\caption{Benchmark solver results for \texttt{TN\_360\_4\_17to24} ($n=360$, scan $d \leq 20$, timeout 7200\,s per configuration).} \label{tab:bench-TN_360_4_17to24} \\ \toprule Solver & Strategy & Time (s) & Vars & Clauses & Result & Status \\ \midrule diff --git a/tables/appendix_benchmark_tables.tex b/tables/appendix_benchmark_tables.tex index 5ae5fe4..69d43b4 100644 --- a/tables/appendix_benchmark_tables.tex +++ b/tables/appendix_benchmark_tables.tex @@ -68,7 +68,7 @@ \input{tables/TN_250_10_15.tex} \clearpage -\input{tables/TN_360_4_ge17.tex} +\input{tables/TN_360_4_17to24.tex} \clearpage \input{tables/TN_36_8_3.tex} diff --git a/tests/test_repository_paths.py b/tests/test_repository_paths.py index c9f8055..2bb39e5 100644 --- a/tests/test_repository_paths.py +++ b/tests/test_repository_paths.py @@ -20,7 +20,7 @@ "tier2": ("BB_144_14_14", "BB_288_12_18", "GB_144_12_12", "LP_544_80_12", "TN_108_2_12", "TN_200_10_10"), "tier3": ("LP_714_100_16", "TN_144_2_13"), "tier4": ("TN_250_10_15",), - "tier5": ("BB_360_12_24", "LP_1768_224_22", "TN_360_4_ge17"), + "tier5": ("BB_360_12_24", "LP_1768_224_22", "TN_360_4_17to24"), } FORMER_BATCH_DIRS = ("BB", "BB2", "LP", "LP2", "QT", "QT2") @@ -84,7 +84,7 @@ def _load_compare_harness(): @pytest.mark.parametrize( "stem,tier", - [("LP_136_32_4", "tier0"), ("LP_340_56_8", "tier1"), ("TN_360_4_ge17", "tier5")], + [("LP_136_32_4", "tier0"), ("LP_340_56_8", "tier1"), ("TN_360_4_17to24", "tier5")], ) def test_distqldpc_compare_harness_finds_stems_in_tiers(stem, tier): # DistQLDPC's cross-repo CI calls the harness with --data-root /data.