Wanted · 开放问题总览Wanted · Open Problems Overview
QEC-Bank 开放问题导读 · Wanted 板QEC-Bank open-problem guides · the Wanted board

十个还没人答出来的问题,
以及我们为什么想要答案
Ten questions nobody has answered yet,
and why we want the answers

QEC-Bank 是本系列依托的纠错码知识库,每个码在里面是一个「条目」。QEC-Bank 对每个码都诚实记账:哪些数字是机器重算的,哪些只是文献声称,哪些干脆写着「不知道」。这些「不知道」不是疏忽:每一条都是 QEC-Bank 还没交付的东西,缺的可能是一个能跑的实现、一份机器能核对的证书,也可能是一个真正还没人会的方法。有些背后的数学早已知道,例如 5 × 7 的 Bacon–Shor 码码距是 5,缺的只是 QEC-Bank 自己能核对的认证;本页各卡片说的「缺」,都指 QEC-Bank 的交付物。QEC-Bank 把它们集中挂在一块 Wanted 板上:十三个条目,十个仍然完全开放。这一页是那十个问题的教程目录。每篇教程假定高中数学和《从高考数学到 Toric Code》(证书篇另外要先读大码码距篇),从一个能亲手算的小例子出发,讲清楚这个问题在问什么、QEC-Bank 现在怎么凑合、有了答案之后哪些「不知道」会变成「知道」。 The QEC-Bank is the knowledge base of codes this series is built on, with one “entry” per code. It keeps honest books for every code: which numbers a machine recomputed, which are only literature claims, and which simply say "unknown". Those unknowns are not oversights: each is something the QEC-Bank has not yet delivered, which may be a runnable implementation, a machine-checkable certificate, or a method nobody has yet. Some of the mathematics behind them is long known, e.g. the distance of the 5 × 7 Bacon–Shor code is 5, and what is missing is a certification the QEC-Bank can check itself; every “missing” on this page's cards means a QEC-Bank deliverable. The QEC-Bank pins them on one Wanted board: thirteen items, ten still fully open. This page is the table of contents for tutorials on those ten. Each assumes high-school mathematics and “From High-School Math to the Toric Code” (the certificate guide also assumes the large-code distance guide), starts from a small example you can compute by hand, and explains what the question asks, how the QEC-Bank copes today, and which "unknown" would turn into "known" once it is answered.

读之前:先读过 《从高考数学到 Toric Code》(矩阵、奇偶检查、稳定子、码距 d = L),这是每篇的前置;证书篇还要求先读大码码距篇。QEC-Bank 原始的 Wanted 板:在 QEC-Bank 中查看 → Before reading: “From High-School Math to the Toric Code” (matrices, parity checks, stabilizers, distance d = L) is the prerequisite of every guide; the certificate guide also assumes the large-code distance guide. The QEC-Bank's own Wanted board: Open in the QEC-Bank →
目录Contents
目录Contents

十个开放问题The ten open problems

顺序是建议的阅读顺序:前两个关于「码距怎么证明」,是其他好几个问题的地基;中间四个关于「同一个东西的不同写法」和「门从哪里来」;最后四个关于把纸上的码搬到会出错的真机上。每张卡的标签写着 QEC-Bank 给这个问题的难度词:open-research(没人知道怎么做)或 hard-engineering(知道怎么做,但要做很多)。 The order is a suggested reading order: the first two are about proving distance, the foundation for several others; the middle four are about different ways of writing the same object and about where gates come from; the last four are about moving a code from paper to noisy hardware. Each card's tag is the QEC-Bank's difficulty word for the problem: open-research (nobody knows how) or hard-engineering (known how, but a lot of it).

  • 大码的码距:便宜的上界,昂贵的下界Distance for large codes: cheap upper bounds, expensive lower bounds→ 要说「d 不超过 12」很便宜:拿出一个重量 12 的逻辑算符能骗过全部检查、却改写存储信息的操作。码距 d 就是最轻的逻辑算符碰到的比特数。就行;要说「d 不小于 12」很贵:得排除重量 1 到 11 的全部候选,144 个比特时是天文数字。gross 码的 d = 12 因此只是 bounded(上界机器找到、下界引自论文),不是 verified(机器独立算出);什么样的「不等式证明」能算完整答案。Saying “d is at most 12” is cheap: show one logical operatorAn operation that passes every check yet rewrites the stored information. The distance d is the number of qubits the lightest one touches. of weight 12. Saying “d is at least 12” is expensive: every candidate of weight 1 to 11 must be excluded, an astronomical number at 144 qubits. That is why the gross code's d = 12 is only bounded (upper bound found by a machine, lower bound cited from a paper) rather than verified (computed independently by a machine), and what kind of inequality proof would count as a full answer. open-researchopen-research
  • 一张机器能核对的「没有更轻逻辑算符」证书A machine-checkable certificate that nothing lighter exists→ 「我查过了,没有更轻的」是一句声明;证书是一份任何人、任何机器都能照着重做的记录,每个候选一行,写明它为什么不是逻辑算符。QEC-Bank 已让证明检查器一个只接受每一步都按规则写出的证明、并逐步核对的程序;QEC-Bank 用的是 Lean。核对过几个小码的这种记录。行数这样来:要证码距是 d,得列出重量 1 到 d − 1 的全部泡利串(每个选中的位置填 X、Y 或 Z,不计相位),共 Σw=1d−1 3w·C(n, w) 条,C(n, w) 是从 n 个比特里挑 w 个的方法数。环面码 toric_L3(n = 18,d = 3):3·18 + 9·153 = 1 431 行;未旋转表面码 L4(n = 25,d = 4):64 875 行;未旋转表面码 L5(n = 41,d = 5):8 498 193 行,超过了 QEC-Bank 给这个检查器定的政策上限 65 536 行。问题是怎样把下界写成短到能核对、又严到不容抵赖的证书。先读上一篇。“I checked, nothing lighter exists” is a claim; a certificate is a record that anyone and any machine can redo, one line per candidate saying why it is not a logical operator. The QEC-Bank has had a proof checkerA program that accepts only proofs whose every step is written out by its rules, and checks each step; the QEC-Bank uses Lean. check such records for a few small codes. The line count: to prove the distance is d, list every Pauli string of weight 1 to d − 1 (each chosen position gets X, Y or Z, phases ignored), Σw=1d−1 3w·C(n, w) of them, where C(n, w) is the number of ways to choose w of n qubits. Toric code toric_L3 (n = 18, d = 3): 3·18 + 9·153 = 1 431 lines; unrotated surface code L4 (n = 25, d = 4): 64 875; unrotated surface code L5 (n = 41, d = 5): 8 498 193, above the policy cap of 65 536 that the QEC-Bank sets for this checker. The problem is how to write a lower bound as a certificate short enough to check and strict enough to be beyond dispute. Read the previous guide first. open-researchopen-research
  • 同一个码穿不同的衣服The same code in different clothes→ 给比特重新编号、交换某个比特上的 X 和 Z、换一组等价的检查来写,清单全变了,码却没变。例如环面码 [[18,2,3]] 在 QEC-Bank 里既是 BB 条目的实例 toric_L3,又是两条 3 比特循环重复码的超图积:每条用三条检查 110、011、101,第三条是前两条之和,看似多余,却是首尾相接成环所需要的;只用常见的两条 110、011,同样的乘积给出的是平面的 [[13,1,3]],不是环面码。n、k、d 这样的「指纹」为什么分不开有些对子;把所有写法都试一遍在 18 个比特上就已是天文数字;条目越来越多时,QEC-Bank 怎样避免同一个码登记两次。Renumber the qubits, swap X and Z on some qubit, write the list with an equivalent set of checks: the list changes completely, the code does not. For example the toric code [[18,2,3]] appears in the QEC-Bank both as toric_L3 in the BB entry and as the hypergraph product of two 3-bit cyclic repetition codes: each uses three checks 110, 011, 101; the third is the sum of the first two and looks redundant, but it is what closes the chain into a ring; with only the usual two checks 110, 011 the same product gives the planar [[13,1,3]], not the toric code. Why fingerprints like n, k, d cannot separate some pairs; why trying every rewriting is already astronomical at 18 qubits; and how the QEC-Bank avoids registering one code twice as the entries multiply. open-researchopen-research
  • 两张测量时间表是不是同一回事Are two measurement schedules the same thing?→ 蜂窝码这样的动态码每一轮测一批不同的检查,「码」是一张测量时间表。两张不同的时间表可能只是同一部电影从不同的一秒开始放,也可能真的不同:QEC-Bank 里就有一对,每一轮单独看都一样像,整部放完却一张存 2 个逻辑比特、一张存 20 个。ZX 图一种把量子电路画成图的语言,带一组把图改写成等价图的规则。是一种带改写规则的图形语言,这个问题想用它判定两张时间表是否实现同一个纠错过程。A dynamic code such as the honeycomb code measures a different batch of checks each round, so the “code” is a measurement schedule. Two different schedules may be the same movie started at a different second, or genuinely different: the QEC-Bank holds a pair that look alike round by round, yet over the whole run one stores 2 logical qubits and the other 20. ZX diagramsA language that draws quantum circuits as graphs, with a set of rules for rewriting a graph into an equivalent one. are a picture language with rewrite rules; this problem wants to use them to decide when two schedules carry out the same error-correction process. open-researchopen-research
  • 拓扑替我们算出门Topology computes the gates→ 环面上一条竖直的 X 圈和一条水平的 Z 圈交叉奇数次,怎么变形都不变,这正是逻辑 X 与逻辑 Z 反对易的原因。把两个圈的标签「乘」成第三个标签的运算叫上积。这个问题想让机器在 QEC-Bank 登记的乘积码的链复形把比特和检查用几张 0/1 矩阵串起来的代数写法;圈与交叉都能在上面计算。上把它算出来。但交叉的奇偶只说明两个逻辑算符反对易,停在 Clifford 这一层;要谈非 Clifford 门,还得在链复形上另外给定一个把圈「相乘」的结构(光有检查矩阵并不决定它),再核对由它造出的操作确实把码空间映回码空间、对逻辑比特实现的正是所说的门(上积篇 1.5 节),然后才能说某个码带有一个非 Clifford 门Clifford 门(H、S、CNOT 等)之外的门,例如 T 门。只用 Clifford 门做不了任意的量子计算。。今天表面码与 BB 码逻辑操作侧面的全部 14 条记录都是 claimed(从论文抄来)。On the torus, a vertical X loop and a horizontal Z loop cross an odd number of times however you deform them, and that is exactly why logical X and logical Z anticommute. The operation that “multiplies” the labels of two loops into a third is called a cup product. This problem wants a machine to compute it on the chain complexesAn algebraic form that links qubits and checks with a few 0/1 matrices; loops and crossings can be computed on it. of the product codes registered in the QEC-Bank. But the crossing parity only shows that two logical operators anticommute, which stays at the Clifford level; to speak of a non-Clifford gate one must also give the chain complex a structure that “multiplies” loops (the check matrices alone do not determine it), and then check that the operation built from it maps the code space back to itself and applies the claimed gate to the logical qubits (cup-product guide, section 1.5); only then can one say that a code carries a non-Clifford gateA gate outside the Clifford gates (H, S, CNOT and so on), such as T. Clifford gates alone cannot perform arbitrary quantum computation.. Today all 14 records in the logical-operations facets of the surface-code and BB entries are claimed (copied from papers). open-researchopen-research
  • 用费米子的语言写电路Writing circuits in the language of fermions→ 量子比特像一排盒子,费米子像一排座位;两边都能把两格的内容互换,差别只在两格都满的时候(下表):盒子直接换,座位还要给整个状态乘上 −1。这个负号让同一件事在两种语言里写法完全不同。成本取决于硬件提供什么测量,不取决于负号:只有单比特测量的量子比特芯片上,不破坏状态地测两比特奇偶 Z₁Z₂,常见做法是帮手比特先置 |0⟩,从两个比特各做一次 CNOT 到帮手,再测帮手;设想中的马约拉纳硬件则把「一对半座位(马约拉纳模)的合计奇偶」当作一次原生测量(费米子篇 1.2 节)。QEC-Bank 给四个条目(包括蜂窝码)登记了费米子写法,全是人写的(curated),机器一条也不会翻译。编译器就是两种语言之间的自动翻译器;它的第一个交付物是一本 ZX 图与费米子表示之间、每行附机器可核对证明的双向词典。Qubits are like a row of boxes, fermions like a row of seats; both can swap the contents of two places, and they differ only when both places are full (table below): boxes simply swap, seats also multiply the whole state by −1. That sign makes the same task look completely different in the two languages. The cost depends on which measurements the hardware offers, not on the sign: on a qubit chip with only single-qubit measurement, the usual way to measure the two-qubit parity Z₁Z₂ without destroying the state is to prepare a helper in |0⟩, apply one CNOT from each of the two qubits onto the helper, and measure the helper; envisioned Majorana hardware instead offers “the joint parity of a pair of half seats (Majorana modes)” as one native measurement (fermion guide, section 1.2). The QEC-Bank records fermionic views for four entries (the honeycomb code among them), all written by hand (curated); no machine translates any of them. A compiler is an automatic translator between the two languages; its first deliverable is a two-way dictionary between ZX diagrams and the fermionic representation, each line with a machine-checkable proof.
    两格(0 空,1 满)two places (0 empty, 1 full)盒子互换 SWAPboxes: SWAP座位互换 fSWAPseats: fSWAP
    |00⟩|00⟩|00⟩
    |01⟩|10⟩|10⟩
    |10⟩|01⟩|01⟩
    |11⟩|11⟩−|11⟩
    open-researchopen-research
  • 有些码还没有「标准译码器」Some codes still have no standard decoder→ 环面码和表面码的译码是配对游戏:测量完美时,码内部的一个单比特 X 或 Z 错误恰好点亮两个警报(Y 错误两种检查各亮两个;贴着表面码边界的错误可以只亮一个,那个警报就配给边界),警报还能单独移动。分形子码一类三维码:警报成组出现,单个警报无法被局部操作搬走;在 Haah 立方码里,不能局部造出的警报单个或成团都挪不动。里这两件事都不成立,配对游戏失效,替代的译码器至今没有一个被公认为标准。QEC-Bank 于是在三张卡片的译码器一栏写 none-known,这些码在按真实电路噪声比较性能的表里是空行(只假定检查读数全对的通用译码仍可用)。Decoding the toric and surface codes is a pairing game: with perfect measurements, a single-qubit X or Z error inside the code lights exactly two alarms (a Y error lights two of each check type; an error next to a surface-code boundary can light just one, and that alarm is paired with the boundary), and an alarm can move on its own. In fracton codesA class of 3D codes whose alarms appear in groups and cannot be carried away singly by local operations; in Haah's cubic code, alarms that cannot be created locally are immobile, alone or as a cluster. neither holds, the pairing game breaks, and no replacement decoder is yet accepted as standard. So the QEC-Bank writes none-known in the decoder field of three cards, and these codes are empty rows in the table that compares performance under realistic circuit noise (generic decoding that assumes every check reading is correct still works). open-researchopen-research
  • 检查每一轮都在变,码距该怎么数When the checks change every round, how do you count distance?→ 静态码每一轮测同一批检查;Floquet 码按一张时间表换着测,任何一轮单独的检查清单都不是「这个码」。这时「最少几个故障(某一刻翻了一个比特,或某次读数读错)能溜过去」要在整部电影里数,空间方向和时间方向还得分开数。QEC-Bank 的蜂窝码条目在 d 那一栏写的是 ?:把静态快照的码距填进去,会给错误的对象贴上机器的确定性。A static code measures the same checks every round; a Floquet code rotates them on a schedule, and no single round's list of checks is “the code”. Then “the fewest faults (a qubit flipped at some moment, or a reading that came out wrong) that slip through” must be counted over the whole movie, with the space and time directions counted separately. The QEC-Bank's honeycomb entry has ? in its d field: filling in the distance of a static snapshot would stamp machine certainty on the wrong object. hard-engineeringhard-engineering
  • 从理想症状到真实电路From ideal syndromes to real circuits→ 纸上的译码假定每条检查的读数都对;真机里读数由帮手比特跑一段小电路收集,帮手自己会错、会读反、会把错误传回数据比特,还会泄漏(跑出 0/1 之外)。算上这些,一个码存得好不好就取决于「测量电路 + 错误模型 + 译码器 + 噪声标准」四件东西一起。QEC-Bank 的量子扩展码条目在理想读数下有三条译码记录,真实电路一栏却是 none-known。这个问题要为 qLDPC 码(码做大时,每条检查碰的比特数和每个比特参与的检查数都有固定上限)里检查不局限于平面近邻的那些码建一套可重放的电路级译码与基准流程。Decoding on paper assumes every check reading is right; on hardware the readings are collected by helper qubits running a small circuit, and the helpers fail, misread, pass errors back to the data qubits and leak (leave the 0/1 alphabet). Once all that is counted, how well a code stores information depends on four things together: the measurement circuit, the error model, the decoder and the noise normalisation. The QEC-Bank's quantum expander entry has three decoding records under ideal readings but none-known for real circuits. This problem asks for a replayable circuit-level decoding and benchmark workflow for qLDPC codes (as the code grows, the number of qubits each check touches and the number of checks each qubit takes part in both stay below fixed limits) whose checks are not limited to nearby qubits on a plane. hard-engineeringhard-engineering
  • 不在乎的比特,与穿了衣服的码距Don't-care qubits and the dressed distance→ 子系统码故意允许一些「检查」互相打架,代价是多出几个我们不在乎的比特(规范比特):它们也是编码出来的自由度,随便被翻,受保护的逻辑比特毫发无损。只作用在逻辑比特上、对规范比特什么都不做的逻辑算符叫裸逻辑算符;乘上一些「不在乎」的操作、顺带改动规范比特的叫穿衣逻辑算符。裸码距和穿衣码距分别是这两类非平凡逻辑算符里的最小重量。QEC-Bank 对 4、9、15 个比特的 Bacon–Shor 码穷举做完,写下 verified。35 个比特的 5 × 7 码,纸上的家族公式给出码距 min(5, 7) = 5(一整列 Z 就是一条重量 5 的裸逻辑算符);QEC-Bank 缺的是自己的认证:穷举超出预算,随机搜索只交出一件重量 12 的衣服,登记为上界、not-certified。Subsystem codes deliberately let some “checks” clash, at the price of a few extra qubits nobody cares about (gauge qubits): they are encoded degrees of freedom too, can be flipped freely, and the protected logical qubit is untouched. A logical operator that acts only on the logical qubit and does nothing to the gauge qubits is bare; one that multiplies in some don't-care operations and so also changes gauge qubits is dressed. The bare and dressed distances are the minimum weights over the nontrivial logical operators of each kind. The QEC-Bank finished the exhaustive search for the 4-, 9- and 15-qubit Bacon–Shor codes and wrote verified. For the 35-qubit 5 × 7 code the family formula on paper gives distance min(5, 7) = 5 (one full column of Z is a bare logical operator of weight 5); what the QEC-Bank lacks is its own certification: exhaustive search exceeds its budget, and random search produced only one outfit of weight 12, recorded as an upper bound, not-certified. open-researchopen-research
读法How to read

板上的几个词The words on the board

Wanted 板上每个条目都由同样六个字段组成,每篇教程都会先原文引用、再用人话解释:statement(到底要什么),why_it_matters(没有它 QEC-Bank 哪里卡住),current_proxy(现在拿什么凑合),difficulty(open-research 或 hard-engineering),related(牵涉到哪些码的条目),status(open、partial、claimed、solved-by 四种之一)。这十篇的 status 全是 open。

Every item on the Wanted board has the same six fields, and every tutorial quotes them verbatim before explaining them in plain words: statement (what exactly is wanted), why_it_matters (where the QEC-Bank is stuck without it), current_proxy (what stands in for it today), difficulty (open-research or hard-engineering), related (which code entries it touches), status (one of open, partial, claimed, solved-by). All ten items here have status open.

诚实边界Honest boundary

这些教程解释的是问题和我们为什么想要答案,不是答案本身:板上要的交付物(能跑的实现、机器能核对的证书、公认的方法)还不存在。其中有些背后的数学已经知道,比如 5 × 7 Bacon–Shor 码的码距,缺的是 QEC-Bank 自己的认证;有些则是真正还没人会做的问题。凡是超出高中数学能亲手验证的对象(证明助手、链复形上的上积、ZX 改写、费米子代数),教程只描述它是哪一类东西、输入输出是什么,并明确标出「这里只是描述」。所有数字都来自 QEC-Bank 的条目文件;所有引用只限板上和相关条目里已经写着的文献。

These tutorials explain the problem and why we want the answer, not the answer itself: the deliverables the board asks for (runnable implementations, machine-checkable certificates, accepted methods) do not exist yet. For some of them the mathematics is known, like the distance of the 5 × 7 Bacon–Shor code, and what is missing is the QEC-Bank's own certification; others are problems nobody knows how to solve yet. Wherever the real object is beyond what high-school mathematics can verify by hand (proof assistants, cup products on chain complexes, ZX rewriting, fermionic algebra), the tutorial only describes what kind of object it is and what goes in and out, and says so explicitly. Every number comes from the QEC-Bank's entry files; citations are limited to the papers already named on the board and in the related entries.

范围Scope

三个已部分解决的条目Three partially solved items

板上另有三个条目的 status 是 partial,即已经有一部分交付、剩下的部分仍开放。这套教程不为它们单独写篇,只在这里各说一句,细节见 QEC-Bank 的板:

Three more items on the board have status partial: part has been delivered, the rest stays open. This series does not give them their own tutorials; one line each here, details on the QEC-Bank board:

  • lean-qec:用 Lean 4(一个证明检查程序)把稳定子码、CSS 码、子系统码的框架写成机器能逐行核对的证明。已交付一个通用的 Lean Complete v1 检查器和全部实例的结构证书;Knill–Laflamme 条件(判断一组错误能否被纠正的代数条件)、对整族码成立的定理、译码器正确性、阈值等仍开放。证书篇会解释它和码距下界证书的关系。lean-qec: writing the stabilizer / CSS / subsystem framework as machine-checkable proofs in Lean 4 (a proof-checking program). A generic Lean Complete v1 checker and structural certificates for every instance are delivered; the Knill–Laflamme conditions (the algebraic test for whether a set of errors can be corrected), theorems for whole code families, decoder correctness and thresholds stay open. The certificate tutorial explains how it relates to distance lower-bound certificates.
  • transversal-gate-cert:给定一个码,枚举并认证它的横向逻辑门(把一个或几个码块的比特按位置对应起来,每组对应位置上各做一次单独的操作,每个操作在每个码块里最多碰一个比特;例如两块码的对应比特之间各做一次 CNOT,就是横向 CNOT)。三正交性(一张 0/1 矩阵里任意两行、任意三行共同为 1 的位置数都是偶数;例如三行 11111111、11110000、11001100 两两共有 4、4、2 个,三行共有 2 个,都是偶数;Bravyi 与 Haah 2012 证明这样的矩阵能造出在全部逻辑比特上带横向 T 门的码,可能再配几个 Clifford 门)的检查已精确完成;基于自同构的 Clifford 门与小码穷举仍待做。上积篇讲的是同一目标的另一条路。transversal-gate-cert: given a code, enumerate and certify its transversal logical gates (line up the qubits of one or several code blocks by position and apply one separate operation to each group of corresponding positions, each operation touching at most one qubit per block; e.g. a CNOT between each pair of corresponding qubits of two blocks is the transversal CNOT). Checks of triorthogonality (a 0/1 matrix in which any two rows and any three rows share an even number of positions where all are 1; e.g. the rows 11111111, 11110000, 11001100 share 4, 4, 2 positions pairwise and 2 all together, all even; Bravyi and Haah 2012 showed that such a matrix yields a code with a transversal T gate on all logical qubits, possibly together with Clifford gates) are done exactly; automorphism-based Cliffords and small-n brute force remain. The cup-product tutorial is about another road to the same goal.
  • chain-complex-lib:把目前只有三层、没有几何信息的链复形库扩展到带边界、高维、带坐标的胞腔复形(由点、边、面、体拼成的几何对象)。这是三维码和三维译码器篇所需的基础设施。chain-complex-lib: extending the current length-3, geometry-free chain-complex library to cell complexes (geometric objects glued from points, edges, faces and cells) with boundaries, higher dimensions and coordinate embeddings. It is the infrastructure the 3D codes and the 3D-decoder tutorial need.
尾声Epilogue

关于这套教程About these guides

每一篇都是单个 HTML 文件,与本系列其他教程共用同一套页面样式与交互部件:右上角切换中英文,左侧目录随滚动高亮,橙色虚线引用点开即弹出定义卡片,浅灰点线的符号点一下告诉你怎么读。页内的实验台都在浏览器本地计算,不上传任何数据。想看这些问题牵涉的具体码,去 Surface Code 条目总览和 BB 码条目总览。

Each guide is a single HTML file sharing the series' page style and interactive components: switch language top right, the left rail follows your scroll, amber dashed citations pop up definition cards, and faint dotted symbols tell you how they are read. Every bench computes locally in your browser; nothing is uploaded. For the concrete codes these problems touch, see the surface-code entry overview and the BB-code entry overview.