Wonderland — 2026-10-13

Wonderland — 2026-10-13

速览(30 秒)
  • 组合: 进化生物学 × 海洋学 / 音乐理论 × 形式化方法 / 编译器 × 量子场论
  • 本期火花 Top 3: #1 1995 时代的 RFLP ladder 读图 = 1982 时代的 register allocator 看图:分子系统学家与编译器在”数 ladder”这件笨事上同步了 13 年 / #4 Douthett-Steinbach 1998 的 Cube Dance 实体化以后变成 P/L/R 三旋钮的”parsimonious voice leading 类型检查器” / #7 Pereira & Palsberg 2008 register allocation by puzzle solving = 8086 IVT 的现代工程版本:把 ISR 视为 puzzle piece,IVT 视为 puzzle board
  • 可动手候选: #1(用 1995 年 FreeBSD 2.0 + grep 重写一段 Chaitin 1982 的 register allocator,把”数 ladder”显式画出来)、#4(用 Arduino + 12 LED + 3 旋钮焊一台 Cube Dance,按 P 听 C major 翻成 C minor)、#7(用 8086 汇编写 4 个 ISR,分别放 4 个 puzzle piece,再给 IVT 拍一张 16x16 棋盘照片)
  • 值得写长文: #7(Pereira & Palsberg 2008 把 IVT 的”puzzle”显式模型化——这意味着 1981 年代的 Chaitin 编译器后端与 1979 年代的 Intel 8086 硬件设计师其实在解同一道题,只是晚了 27 年才被学术语言统一)、#4(Cube Dance 的”声音”在哪?答案是 LED 切换瞬间的闪烁 = voice leading 的”瞬时”被光显形)、#3(Pereira & Palsberg 2008 的 “puzzle board” = 1D lattice with 256 links,pre-coloring = 32 reserved IVT entries——这正好是 Wilson 1974 lattice gauge theory 在 1D 的 IVT 实现)

组合 A:进化生物学 × 海洋学 + 如果时间倒回 1995 年,用当时的技术怎么实现

本期亮点: 1995 年是分子系统学的”前 DNA 条形码”时代——RFLP(限制性片段长度多态性)、allozyme(同工酶电泳)、16S rRNA 部分测序是物种界定与基因流推断的主力;Hebert 2003 提出的 648 bp COI 通用条形码还要等 8 年才问世。这一约束把”分子系统学家”逼到 1995 年的工具箱里:没有 NGS、没有 454 焦磷酸测序(要等 2005)、没有 portable MinION(要等 2014)、没有 modern proteomic tools(Gaill 1995 测 A. pompejana 胶原蛋白的热稳定性只能靠 Tm 熔点曲线 + manual sequencing)。在那种工具约束下,分子系统学家能做什么不能做什么,与同一时期 8086/16-bit 时代的编译器后端能做什么不能做什么,有出乎意料的结构同构。

💥 #1 — 1995 时代的 RFLP ladder 读图 = 1982 时代的 register allocator 看图:分子系统学家与编译器在”数 ladder”这件笨事上同步了 13 年

同构惊讶 9 · 具体 9 · 可行 8

Moyer, Dobbs, Karl 1995 在 Loihi Seamount 微生物席论文里用 RFLP(限制性片段长度多态性)做细菌 16S rRNA 多样性推断:把 PCR 产物用 4-base 限制酶切,跑琼脂糖胶,从 ladder 上数条带大小(手动用 DNA ladder 比对,每条条带就是一个”节点”),然后反向推断 OTU 数量。Chaitin 1982 编译器寄存器分配的图着色算法也干同一件事——给干涉图每个节点分配 K 种颜色,K=16 在 16-bit 时代已经够紧,K=12 在 8086 上更紧。两者都从一张图(ladder / interference graph)里数节点数、手动配颜色、没有自动化。1995 时代的分子系统学家要把 RFLP 图谱”重新读成干涉图”——8 年后 Hebert 2003 用 COI 通用条形码直接把 ladder 替换成 DNA 序列比对,而编译器直到 Pereira & Palsberg 2008 才把 register allocator 显式模型化为 “puzzle solving”(PLDI 2008)。分子系统学比编译器早 13 年进入”数字时代”。

如果要做下载 Moyer 1995 论文 PDF,把 16S rRNA 16S rRNA RFLP ladder 图(fig 1-3)打印出来;在同一张纸上打印 Chaitin 1982 论文里一张 register interference graph;用红笔圈出”节点”、绿笔圈出”边”,目测两图同构性。

参考文献 1
  1. Moyer, Dobbs, Karl 1995 “Phylogenetic Diversity of the Bacterial Community from a Microbial Mat at an Active, Hydrothermal Vent System, Loihi Seamount, Hawaii”, Applied and Environmental Microbiology 61(4):1555-1562(用 RFLP 跑 16S rRNA 多样性,1995 年 4 月)/ Chaitin 1982 “Register Allocation & Spilling via Graph Coloring”, SIGPLAN 1982(图着色寄存器分配原始论文,1981-1982 时代编译器在 PDP-11/VAX 上跑)/ Pereira & Palsberg 2008 “Register Allocation by Puzzle Solving”, PLDI 2008, pp.216-226(puzzle 模型把 register allocator 显式化)/ Avise 1994 Molecular Markers, Natural History and Evolution(1994 时代分子系统学方法综述:RFLP/allozyme 是主力)
生图提示词

一张旧式琼脂糖胶电泳图,左半边是 16S rRNA RFLP 条带(10 条带左右、深浅不一),右半边是同一张图的镜像,被叠印到一张 16-bit register interference graph 上——两图的”节点位置”完全重合。

img-2026-10-13-1.png

💥 #2 — Bathymodiolus thermophilus 1995 的 gene flow 推断 = 必须用 allozyme 多态性 + 形态学:8 年后 COI barcode 才能直接比对 DNA 序列

方法论惊讶 8 · 具体 8 · 可行 7

Craddock, Hoeh, Lutz, Vrijenhoek 1995 在 Marine Biology 124:137-146 用 allozyme(同工酶电泳)跑 7 个 Bathymodiolus thermophilus 群体(覆盖 9°N, 11°N, 13°N EPR)的等位基因频率,再用 Wright’s F-statistics 推断 gene flow(Nm)。1995 没有 COI barcode(Hebert 2003 才提出),没有 NGS,没有 microsatellite——所以群体遗传学家要数 7 个 locus 的同工酶电泳条带,每条条带 = 一个等位基因。这是分子群体遗传学在 1995 的”图灵机模型”:每个 locus 是 1 个 bit 位(杂合/纯合),7 个 locus = 7-bit “fingerprint”。这与同时期 8-bit MCU 上的 “fingerprint sensor” 完全同构:每条电泳条带 = 1 bit,每组群体的 fingerprint = 一段 7-bit 序列;gene flow 推断 = 在 7-bit 空间里算 Hamming distance。

如果要做下载 Craddock 1995 论文的 allozyme 表(fig 2 通常是 7-locus × 7-population 的等位基因频率矩阵),用 Python 重算 Wright’s F_ST 矩阵;与 2010 Vrijenhoek 用 mtDNA 算出的 F_ST 对照,看 1995 + 7 locus 与 2010 + mtDNA 给出多少相似的群体结构结论。

参考文献 1
  1. Craddock, Hoeh, Lutz, Vrijenhoek 1995 “Extensive gene flow among mytilid (Bathymodiolus thermophilus) populations from hydrothermal vents of the eastern Pacific”, Marine Biology 124:137-146(1995 年 11 月,9°N, 11°N, 13°N EPR 三群体的 allozyme 推断)/ Vrijenhoek 2010 “Genetic diversity and connectivity of deep-sea hydrothermal vent metapopulations”, Molecular Ecology 19:4391-4411(15 年后用 mtDNA + microsatellite 重新做同一题,结论一致:群体间高 gene flow)/ Hartl & Clark 1989 Principles of Population Genetics 2nd ed.(Wright’s F-statistics 与 gene flow 公式 1995 时代标准参考)
生图提示词

一张 1995 风格的同工酶电泳胶,7 个泳道代表 7 个 Bathymodiolus 群体,每条带的位置编码为 7-bit 序列;旁边一张白板把这 7-bit 序列写出来,再用 Hamming distance 矩阵连成网络。

💥 #3 — Alvinella pompejana 在 1995 = 必须用 1995 年潜器 + 1995 年生化手段:Gaill 1995 测 collagen Tm 熔点,Chevaldonne 1992 用直接热探针——看不见”它怎么扛住”,只能看见”它扛住”

装置/原型惊讶 8 · 具体 8 · 可行 7

Alvinella pompejana(庞贝蠕虫)1995 年是”已知最耐热的多细胞动物”——管尾 80-105°C、管头 22°C、collagen Tm 测到 45°C(Gaill et al. 1995, Science)。但 1995 年的工具箱看不到”它怎么扛住”:没有 modern proteome(2D gel 刚起步)、没有 crystal structure 解析(要等 2000 年代)、没有 transcriptomic(Cary 1997 才开始 EST sequencing)。只能看到”collagen proline 含量高” + “GC 含量高” + “Tm 比 coastal polychaete 高 17°C”——这套 1995 时代的发现路径与 1979 年 Intel 8086 手册里”我们看到 IVT 在 0000:0000 但不知道为什么”完全同构:1995 时代只能看到表型(phenotype / 256-byte IVT),看不到机制(mechanism / 为什么 IVT 是 256 字节)。约束让两边的研究者都停留在”知道”层,不进入”为什么”层。

如果要做写一段 Python:输入一段 A. pompejana collagen partial sequence (Gaill 1995, P166 fig 2),跑 proline count + GC content;把结果与 coastal polychaete Arenicola marina 同区段比较;输出”如果生在 1995 年,你会先看到什么”的对照表——只有 proline count、GC content、Tm——这些数字与 Jollivet 1995 allozymes 的 allozyme 多态性表是同一代工具的产物。

参考文献 1
  1. Gaill, Mann, Wiedemann, Engel, Timpl 1995 “Structural comparison of cuticle and interstitial collagens from annelids living in shallow water and at deep-sea hydrothermal vents”, J. Mol. Biol. 246:284-295(A. pompejana collagen Tm 45°C,最耐热 fibrillar collagen)/ Chevaldonne, Desbruyères, Childress 1992 “Some like it hot… and some even hotter”, Nature 359:593-594(直接热探针测 A. pompejana 管内温度 80-105°C)/ Cary, Shank, Stein 1997 “Worms bask in extreme temperatures”, Nature 391:545-546(1997 才有 EST sequencing 起步)/ Haddad, Camacho, Durand, Cary 1995 “Phylogenetic characterization of the bacterial consortium associated with the hydrothermal vent polychaete Alvinella pompejana”, Applied and Environmental Microbiology 61:1679-1687(1995 时代 A. pompejana 的细菌伴生体 16S rRNA 描述)
生图提示词

一只 1995 时代的玻璃温度探针(一根细玻璃管,标着 0-150°C 刻度)插进 A. pompejana 的管子里,旁边的机械记录仪在画一条 0-100°C 的曲线;管子口有一只灰白色的小蠕虫,尾端被热烟熏得发红。

组合 B:音乐理论 × 形式化方法 + 如果必须把它做成一个实体装置

本期亮点: 这一组要回答的不是”音乐理论能不能被形式化”——Mazzola 1990/2002 的 topos of music、Lewin 1987 的 GIS、Coquand/Huet 的 Calculus of Inductive Constructions、Tymoczko 2011 的 chord space 都已经从不同角度做了。本期要回答的是一个更窄的问题:如果一个音乐结构(neo-Riemannian Tonnetz、parsimonious voice leading、OPTIC symmetry)必须做成一台实体装置(旋钮 + LED + 步进电机,不是软件),它会丢掉什么、保留什么?答案:装置会丢掉抽象的 type-theoretic structure(quotient type、functor、natural transformation),但会把”几何”保留成”可触摸的几何”——Cube Dance 的 6 邻接、P/L/R 的方向性、toroidal 折叠都在 LED 闪烁 + 旋钮旋转里被具身化。这是 Mazzola 1990 Geometrie der Töne + Lewin 1987 GIS + de Bruijn 1968 AUTOMATH 三条线在 2020 年代的物理合并。

💥 #4 — Douthett-Steinbach 1998 的 Cube Dance 实体化以后变成 P/L/R 三旋钮的”parsimonious voice leading 类型检查器”

装置/原型惊讶 9 · 具体 9 · 可行 9

Douthett & Steinbach 1998 J. Music Theory 42(2):241-263 把 24 个大/小三和弦排成一个 8 顶点立方体(C/小调、C 大调、F♯/小调、F♯ 大调 vs D♭/小调、D♭ 大调…)——每个三和弦有 6 个 parsimonious 邻接(P/L/R 三个基本变换 + 它们的逆),其中 P 与 L 移动 1 个半音、R 移动 1 个全音。把这张图印到一张平面 LED 阵列上(中心 + 6 邻接 + 反方向 6 邻接),再装 3 个旋钮(P/L/R),每按一下旋钮,当前 LED 状态(当前三和弦)就跳到对应的 parsimonious 邻接——这台装置就是 parsimonious voice leading 的”类型检查器”:它不接受”半音数 ≠ 1 或 2”的移动,只接受 P/L/R 三个基本动作。这是 Tymoczko 2011 chord space 在物理层的最朴素实现——把 Euclidean chord space 离散化成 24 个三和弦的 cube dance 网络,LED 就是这个网络的可视化层。

如果要做用 Arduino Uno + 12 LED ring (WS2812B) + 3 rotary encoder 焊一台 Cube Dance 实体装置:12 LED 表示 12 个三和弦(按 C, c, F♯, f♯, D♭, d♭, A, a, E♭, e♭, B♭, b♭ 顺序),3 个旋钮分别对应 P / L / R;按一下旋钮,当前 LED 跳到对应邻接;多按几下能走出 PLR 链(从 C major 跳到 PLR(PLR(C)) = enharmonic 等价的 C♭ major)。整套代码约 100 行 Arduino sketch。

参考文献 1
  1. Douthett & Steinbach 1998 “Parsimonious Graphs: A Study in Parsimony, Contextual Transformations, and Modes of Limited Transposition”, J. Music Theory 42(2):241-263(Cube Dance 原图:8 顶点立方体,6 邻接 P/L/R)/ Cohn 1997 “Neo-Riemannian Operations, Parsimonious Trichords, and their ‘Tonnetz’ Representations”, J. Music Theory 41(1):1-66(neo-Riemannian PLR 操作的几何基础)/ Tymoczko 2011 A Geometry of Music: Harmony and Counterpoint in the Extended Common Practice, Oxford University Press(chord space 的 Euclidean 化)/ Arduino Uno 文档(12 LED + 3 rotary encoder 的最小硬件清单 ~$20)/ de Bruijn 1970 “The mathematical language AUTOMATH, its usage, and some of its extensions”(“类型检查器”概念的数学基础)
生图提示词

一只手掌大的 PCB,12 颗 LED 围成一圈(每颗代表一个三和弦,颜色区分 major/minor),3 个旋钮(P/L/R)从 PCB 一侧伸出来,旋钮旁的标签印着 C / c / F♯ / f♯ —— 装置上方投射出 LED 当前状态的 chord symbol。

img-2026-10-13-4.png

💥 #5 — Tonnetz 在 enharmonic equivalence 下折叠成 torus = 形式化方法里的 quotient type:把 G♯ ≡ A♭ 显式作为 type 上等价关系

同构惊讶 8 · 具体 8 · 可行 7

Neo-Riemannian Tonnetz 在 12 平均律 + enharmonic equivalence(G♯ = A♭)下不是 plane,而是 torus——Mazzola 1990 Geometrie der Töne 与 Cohn 1997 J. Music Theory 各自独立证明这条折叠。形式化方法里的 quotient type(Coq/Lean/Agda 标准库)干的是同一件事:取一个 type 上的等价关系 R,把 quotient type X/R 显式构造出来——Tonnetz 就是 pitch class Z/12Z 的 quotient type,enhramonic equivalence 是 quotient 关系。同构:12-TET pitch class = Z/12Z,Tonnetz = (Z/12Z) × (Z/12Z) 的 2D 表示(5 度 × 3 度两个轴),torus 折叠 = 把 (Z/12Z)² quotient 到 enharmonic equivalent class。约束(实体装置)把”quotient type”这个抽象的 type-theoretic 概念逼成可触摸的”折叠”——torus 的 12 周期边界被 LED ring 的”wrap around”显式实现。

如果要做用 Lean 4 写一个 `def Tonnetz : Type := (ZMod 12) × (ZMod 12)`,再写一个 `instance : Tonnetz → Tonnetz` 表示”5 度轴上的 +1 操作”——验证 `Tonnetz` 在 Lean 4 的 `Quot` 下确实形成一个 torus(用 `Quotient` 模块);然后用 12 LED ring + 1 个按钮表示”5 度轴步进”,看到 LED 在 wrap-around 处跳回起点。

参考文献 2
  1. Mazzola 1990 Geometrie der Töne: Elemente der mathematischen Musiktheorie, Birkhäuser(Tonnetz 的 toroidal 拓扑证明)/ Cohn 1997 “Neo-Riemannian Operations, Parsimonious Trichords, and their ‘Tonnetz’ Representations”, J. Music Theory 41(1):1-66(Cohn 独立给出 toroidal 折叠的几何)/ Lean 4 stdlib Quot
  2. Coq stdlib Quotient(type-theoretic quotient 的标准库实现)/ Wikipedia “Neo-Riemannian theory” + “Tonnetz”(Tonnetz torus 拓扑的现代参考)
生图提示词

一张平面 Tonnetz(三和弦三角网格铺在平面上)正被一双无形的手从左右两边往中间对折——对折到 G♯ 与 A♭ 撞在一起的瞬间,整张图卷成一个 torus,torus 表面上的 12 个三和弦沿着两个独立的方向无限循环。

💥 #6 — Mazzola 1990 Geometrie der Töne 的 presto software (1989-1994) 实体化 = 用”能播放”代替”能计算”:放弃 abstract topos object,把 voice leading 几何变成旋钮 + 步进电机 + LED

文化隐喻惊讶 8 · 具体 8 · 可行 8

Mazzola 1990 Geometrie der Töne 第 1 章就给出 presto software manual (SToA music, Zürich 1989-1994)——一套跑在 NeXTSTEP 上的数学音乐理论工作台,能算 chord space 上的 geodesic、能算 parsimonious voice leading、能画 Tonnetz torus。presto 是”理论 + 软件”的第一步:把 topos of music 装进 GUI。约束(必须做成实体装置)逼出第二步:放弃 GUI,把 chord space 的”能算”变成”能摸”——用一只旋钮选当前三和弦、用一只步进电机模拟 chord space 内的 geodesic、用 12 颗 LED 显示当前路径上的 12 个邻接三和弦。这台装置把 Mazzola 2002 The Topos of Music 第 1 章 §3.7 的”music object”从一个抽象的 topos object 变成具体的(旋钮位置, LED 状态)二元组——本体的”eligible morphisms”是物理可操作的旋钮-LED 对。

如果要做用 Raspberry Pi Pico + 12 LED + 1 rotary encoder + 1 stepper motor 复刻一台”chord space geodesic player”:旋钮选起点,步进电机沿着 Tymoczko 2011 chord space 内的最短路径在 24 个三和弦之间移动,每步触发一个 LED 闪烁——这就是”voice leading 几何”被装置化后的样子。整套代码约 200 行 MicroPython。

参考文献 1
  1. Mazzola 1990 Geometrie der Töne, Birkhäuser(presto manual 1989-1994 是书的一部分,§A.1)/ Mazzola 2002 The Topos of Music: Geometric Logic of Concepts, Theory, and Performance, Birkhäuser(chord space + topos 的几何 + 逻辑合并)/ 2002 AMS “Mathematics Book of the Year”(Topos of Music 获奖评语)/ Lewin 1987 Generalized Musical Intervals and Transformations, Yale University Press(GIS = Generalized Interval Systems,是 topos of music 的前体)/ NeXTSTEP 1988-1997(presto software 实际跑的平台)
生图提示词

一台手掌大的木质机箱,前面板上 12 颗 LED 围成 dodecagon(一颗亮着,另外 11 颗暗着),侧面伸出一根旋钮(chord selector)和一根细步进电机杆(geodesic walker);机箱顶面贴着一张 Tonnetz torus 印刷图,torus 表面有一条从 C major 出发的弯曲路径,步进电机的当前位置与路径上的一个点对齐。

组合 C:编译器 × 量子场论 + 如果必须用游戏机制来表达

本期亮点: 复利轮从 2026-10-09 #1(8086 IVT = SU(2) 不可约表示的 256 字节表)做二跳——本期把”游戏机制”加上去,看 IVT 的结构怎么被一个意想不到的学术论文接住。Pereira & Palsberg 2008 PLDI 论文 “Register Allocation by Puzzle Solving” 把 register allocation 显式模型化为 puzzle solving:register file = puzzle board, program variables = puzzle pieces, pre-coloring = pre-placed pieces. 这正是 8086 IVT 的”现代工程版”——把 ISR 视为 puzzle piece, IVT 视为 puzzle board, 32 reserved hardware entries 视为 pre-coloring. 这条结构性巧合意味着 1979 年的 Intel 8086 硬件设计师与 1981 年的 Chaitin 编译器后端设计师其实在解同一道题(“在 K 个槽位里放 K 个 handler, 不能冲突”),只是 27 年后被 Pereira 显式模型化。再加一层:Wilson 1974 lattice gauge theory 把 gauge field 放到 1D lattice 上,每条 link 一个 U ∈ SU(N)——IVT 256 entries = 1D lattice with 256 links, 32 reserved = hard boundary condition, 224 free = bulk. 256 = 2×128 暗示 IVT 是两个 SU(2) 不可约表示的直和(沿用 10-09 #1 的核心论点)。

💥 #7 — Pereira & Palsberg 2008 register allocation by puzzle solving = 8086 IVT 的现代工程版本:把 ISR 视为 puzzle piece,IVT 视为 puzzle board

同构惊讶 9 · 具体 9 · 可行 9

8086 IVT 在 0000:0000-0000:03FF 共 256 个 4 字节 entry(10-09 #1 已论证:32 reserved + 224 free),是 Intel 1979 硬件设计师为 ISR dispatch 提供的”位置表”——一个 ISR slot 要放进哪个 slot 由 DOS 程序员决定,但 32 个 slot 被硬件”硬破缺”成不可任意改写(CPU exception + BIOS 保留)。Pereira & Palsberg 2008 PLDI 把 register allocation 显式模型化为 puzzle solving:register file = puzzle board, program variables = puzzle pieces, pre-coloring (x86_32 时代是 caller-saved/callee-saved 寄存器) = pre-placed pieces. 这与 IVT 是同构——只是 register file 是 12 个槽、IVT 是 256 个槽;pre-coloring 在 register 是 ABI 约定,在 IVT 是硬件保留。IVT 才是”register allocation by puzzle solving” 的 1979 年原版,PLDI 2008 是它的现代工程版,差了 29 年。同构:reg = ISR slot, register class = reserved/free distinction, spill code = 用 IVT 之外的 0x60+ INT 跳转实现——DOS 时代的 ISR spill 实际上是用 `INT 60h` 这种”软件重定向”模拟。

如果要做写一段 8086 汇编,编译时让”ISR slot 编号”作为立即数嵌入到 INT n 指令里;统计让编译器”自由定义”的 ISR 数(= 224),把 32 reserved + 224 free 拍成一张 16x16 棋盘照片(32 个红格 + 224 个蓝格),4 个 ISR 像 puzzle piece 一样”放在”棋盘上——这就是 Pereira & Palsberg 2008 论文的 1979 年原版视觉化。

参考文献 1
  1. Pereira & Palsberg 2008 “Register Allocation by Puzzle Solving”, PLDI 2008 pp.216-226(puzzle 模型的原始论文,DOI 10.1145/1375581.1375609)/ 10-09 #1 anchors(8086 IVT 256 byte = SU(2) 不可约表示;32 reserved + 224 free;SU(2/1) superalgebra 2207.06545)/ Intel 8086 Family User Manual 1979 §2.5(IVT 位于 0000:0000-0000:03FF,256 项 × 4 字节,共 1024 字节;INT 00-1F 保留,INT 20-FF 自由)/ osdev.org “Interrupt Vector Table”(IVT 完整描述)/ Ralf Brown’s Interrupt List(INT 60h-FF 软件中断列表)/ 复利锚点:2026-10-09 #1(IVT = SU(2) 不可约表示的 256 字节表)
生图提示词

一块 16x16 棋盘格(256 格),前 2 行(32 格)被烧进硬件的红铜色焊点占满,剩余 14 行(224 格)是可被改写的蓝光 LED;4 个金属拼图块(4 个 ISR)正在被放置到 224 个蓝光 LED 的某些位置——这是 8086 IVT 的”1979 年 PLDI puzzle solving”原版。

img-2026-10-13-7.png

💥 #8 — 8086 IVT 的 256 entries 是 1D lattice gauge theory 的 256 links:32 reserved = 硬边界条件,224 free = bulk,ISR 排布 = 1D gauge field 配置

装置/原型惊讶 8 · 具体 9 · 可行 7

Wilson 1974 lattice gauge theory 把连续时空离散化成 4D 网格,每条 link 放一个 U ∈ SU(N) 群元素,plaquette = 4 条 link 的乘积 = 局部曲率。8086 IVT 是 1D lattice,256 个 4 字节 entry = 256 条 link,每条 link 装一个 ISR slot 的(CS, IP)四元组(32-bit far pointer)。32 reserved = boundary condition(“link 0-31 不允许自由 gauge transformation”),224 free = bulk(link 32-255 接受任意 ISR 注入)。“ISR 排布”等价于在 IVT 上配置一个 1D gauge field:每个 ISR slot 选什么(CS, IP)= gauge group 上的 SU(2) 表示选择(沿用 10-09 #1 的论点,256 维 = 两个 spin-127/2 不可约表示的直和)。Wilson 1974 lattice action = Σ tr(U_plaq) 的 1D 简化版 = 0(1D 没有 plaquette),所以 1D lattice gauge theory 是 trivial 的——但 IVT 同样 trivial(ISR 之间没有 Wilson-loop constraint),这意味着 8086 的 ISR 排布问题 = 1D 退化 lattice gauge theory,简化了 Wilson 1974 的全部复杂性。

如果要做用 Python 写一个 1D Wilson 1974 lattice gauge theory 模拟器:lattice size = 256,gauge group = SU(2);boundary condition = 头 32 link 固定为 identity,剩余 224 link 自由;生成 100 个随机配置,统计每个 link 的 SU(2) 群元素分布(应该是均匀的,因为 1D 是 trivial);再在 IVT 上注入 4 个 ISR 模拟”4 个 link 选非-identity”,验证其他 220 link 仍然均匀——这就是 1D IVT = trivial lattice gauge theory 的具体实验。

参考文献 1
  1. Wilson 1974 “Confinement of quarks”, Phys. Rev. D 10:2445-2459(lattice gauge theory 原始论文;1D lattice gauge theory 是 trivial)/ Creutz 1983 “Lattice gauge theories”, Rev. Mod. Phys. 55:277-289(lattice 综述,包括 1D 退化情形)/ Rothe 2005 Lattice Gauge Theories: An Introduction (World Scientific) §2.1(1D gauge theory = 0 action 的证明)/ 10-09 #1 anchors:IVT 256 维 = SU(2) spin-127/2 直和,32 reserved = 硬件”硬破缺”,Thierry-Mieg 2207.06545 SU(2/1) superalgebra 不可分解表示构造
生图提示词

一条细长的金属链条挂在两面墙之间(256 节),链条头 32 节被焊死(红铜色),剩余 224 节是活动的(蓝钢色);4 节蓝钢链被贴上 ISR 标签(IRQ 0, 5, 10, 15),其余 220 节是裸露的——这就是 8086 IVT 的 1D lattice gauge 视觉化。

💥 #9 — “32 reserved + 224 free” 是个 game designer 的数字:硬件保留 = BOSS,玩家空间 = 玩家槽;ISR 满了之后 = 玩家需要”shake the puzzle”(DOS 时代用 PIC 重映射 IRQ)

方法论惊讶 8 · 具体 8 · 可行 8

8086 的 32 reserved IVT entries(INT 00-1F)是 Intel 1979 硬件设计师”game balance”的设计:32 = 32-bit CPU 的位宽(虽然 8086 是 16-bit 外部总线,但内部指令是 16-bit,所以 32 reserved = 2 × 16),是”硬件 BOSS”——玩家不能动;224 free = 2^7 × 7 是 DOS 程序员”玩家空间”——能任意布置 ISR。但 224 free 总是被填满(DOS 程序用 INT 60h-FF 软件中断作”扩展槽”),填满后玩家需要”shake the puzzle”——即 PIC(Programmable Interrupt Controller)重映射:把 IRQ 0-7 重新映射到 INT 08-0F,把 IRQ 8-15 映射到 INT 70-77(默认是 INT 08-0F + INT 70-77),但 1990s 的 SoundBlaster 16 / AdLib / 网络卡驱动经常”re-map 到 INT 60+“,绕开硬件保留区。这是 game designer 的”作弊码”——避开 BOSS 区,把玩家空间扩展到 256+。这与同时期 8-bit 时代 game designers 的”extended sprite slot”思路完全同构:硬件保留 32 个 sprite table,但玩家可以通过”屏幕外重绘”扩展到 256+ 个。

如果要做用 DOSBox + DEBUG.EXE 启动一个 DOS 6.22 虚拟机,跑 `DEBUG INT 21H` 看默认 ISR 链;写一个 SoundBlaster 16 风格的小驱动,把 IRQ 5 重映射到 INT 60H;再写一段汇编读 IVT 偏移 60H×4 处的 ISR 指针,验证它指向你的驱动入口。

参考文献 1
  1. Intel 8259A PIC datasheet 1981(8259A programmable interrupt controller 是 IBM PC 5150 的核心组件,DOS ISR 重映射的硬件基础)/ Ralf Brown’s Interrupt List(DOS INT 60h-FF 的软件中断扩展列表)/ SoundBlaster 16 driver source 1994(典型 DOS 时代 IRQ 重映射到 INT 60+)/ IBM PC Technical Reference 5150 1981 §“Interrupt Controller”(PIC 8259A 初始化代码)/ 复利锚点:2026-10-09 #1(IVT 256 byte 结构性分析)
生图提示词

一台 IBM PC 5150 机箱(米黄色,前面是 5.25” 软驱),主板上 8259A PIC 芯片被放大成一座”硬件 BOSS”雕像,旁边 224 个蓝色 LED 围绕它转一圈(玩家空间),4 个金属 puzzle pieces 标注 IRQ 0/5/10/15 正准备放进 LED——这是 1981 年 IBM PC 5150 的”game board”视觉化。