Steane码的稳定子的生成元集计算过程

构建 Steane 码的稳定子生成元集,并不需要随机猜测或记忆那 6 个算符(),而是有明确的构造逻辑。

Steane 码属于 CSS 码 (Calderbank--Shor--Steane),其核心思想是:用两个相同的经典线性码,分别构造 型稳定子和 型稳定子

下面是完整的计算步骤。


第零步:明确目标

Steane 码参数:

  • 物理比特:

  • 逻辑比特:

  • 稳定子个数:

  • 码距:(可以纠 1 个错误)

稳定子群由 6 个独立生成元张成,它们相互对易。


第一步:选择一个经典线性码

Steane 码基于经典的 汉明码

  • 长度 7,维度 4,最小距离 3。

  • 它的校验矩阵 ​ 是一个 的二进制矩阵(每列非零且互不相同):

更常见的是按列列出所有非零 3 位二进制向量(列顺序可以调整):

列:1--7 对应的 3 位向量为

写成矩阵(每列算一个比特)就是上面那样。


第二步:构造 X 型稳定子(来自 ​ 的行)

经典校验矩阵的 每一行 对应一个 X 型稳定子生成元

  • 把该行中 1 的位置换成 ,0 的位置换成

​ 的 第一行

即:

写成紧凑形式:​ 或 根据索引。

但通常记法为 Pauli 串,如:

检查行 1:位 1,4,5,7 是 1,所以是 在这些位置。

然而 Steane 码的标准表示经常写成按比特顺序的 串,我们来正确映射。


更干净的方式:把校验矩阵行直接转成 X 型稳定子

​ 的行(3 行):

X 型稳定子 (只含 ):

即:


第三步:构造 Z 型稳定子(来自同一 ​ 的行)

对于 CSS 码:

  • X 型稳定子来自

  • Z 型稳定子来自 ​ 的生成矩阵吗?不------通常取 相同的校验矩阵 但作用在 上。

更标准地说:令 是二进制线性码

CSS 码的稳定子生成元:

  • X 型:​ 的每一行对应 算符

  • Z 型:同一 的每一行对应 算符

因此 Z 型稳定子生成元就是把上面 ​ 中的 换成

即:


第四步:验证对易关系

任意一个 X 型与任意一个 Z 型生成元,在同一个比特位置上同时出现 的次数必须是 偶数,否则会反对易。

检查 ​:

  • ​:位 1(X),4(X),5(X),7(X)

  • ​:位 2(Z),4(Z),6(Z),7(Z)

共同位置:位 4 和位 7 → 两个位置有 X 与 Z 相遇,2 是偶数 → 对易 ,正确。

这是由 CSS 构造自动保证的,因为 X 和 Z 稳定子的支撑集都是 的行,而 吗?实际上这里 是自己的偶对?不重要,关键是经典码的校验矩阵行之间的内积为 0(对于双汉明码可能不是零?等等,不对,这个构造要求 吗?Steane 码满足自正交条件?)

更安全地说:Steane 码是 自对偶 CSS 码 ?不完全是,但它是 Calderbank 构造 ,满足 X 和 Z 稳定子来自同一个 ,且 ,这保证了对易。


第五步:目前的生成元集

我们已经得到 6 个生成元:

X 型(3 个):

  1. ​ =

  2. ​ =

  3. ​ =

Z 型 (3 个):

这 6 个算符相互对易,且独立。


第六步:检查是否与标准 Steane 码一致

文献中常见的 Steane 码生成元(按比特 1--7,比特 4 通常对应奇偶校验)有时写成不同顺序,但等价。

常见形式(如 Gottesman 或 Nielsen & Chuang):

如果重新排列比特顺序(比如用 ​ 的列顺序不同),就会得到我们上面那组。

因此,计算过程核心是

  1. 找一个经典线性码 (如汉明码

  2. 写出它的校验矩阵

  3. 的每一行 → 一个 X 型稳定子(X 放在 1 的位置)

  4. 同样的 的每一行 → 一个 Z 型稳定子(Z 放在 1 的位置)

  5. 合并得到 个生成元

对于 Steane 码:,所以共 6 个生成元。


总结公式(CSS 码稳定子构造)

给定二进制线性码 的校验矩阵 (尺寸 ):

且要求 (经典码自正交条件)以保证对易。Steane 码所用汉明码满足此条件。

也可以直接给出一个矩阵转成 Pauli 串的显式算法,可以手动逐行计算。

相关推荐
心中有国也有家4 小时前
cann-recipes-infer:昇腾 NPU 推理的“菜谱集合”
经验分享·笔记·学习·算法
绝知此事4 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表
碧海银沙音频科技研究院4 小时前
通话AEC与语音识别AEC的软硬回采链路
深度学习·算法·语音识别
csdn_aspnet5 小时前
Python 算法快闪 LeetCode 编号 70 - 爬楼梯
python·算法·leetcode·职场和发展
m0_629494737 小时前
LeetCode 热题 100-----26.环形链表 II
数据结构·算法·leetcode·链表
壹号用户8 小时前
用队列实现栈
数据结构·算法
做人求其滴8 小时前
面试经典 150 题 380 274
c++·算法·面试·职场和发展·力扣
daad7778 小时前
记一组无人机IMU传感器数据
算法
计算机安禾8 小时前
【c++面向对象编程】第42篇:模板特化与偏特化:为特定类型定制实现
开发语言·c++·算法