ARTICLE · 1076365
【AI文】空间,让所有的东西都不在同一个地点

昨天,在 The Joy of Abstraction 读者群,极光老师留言截图中有句小诗:
空间,让所有东西都不在同一个地点。
我套用如下:
时间,让所有东西都不在同一个时点。
我想起,李亚辉的一句话:编码到独立的维度。
请帮我梳理一下我这跳跃的思维。这样编码本质是什么?好处何在?局限何在?有没有其他更好的编码方案?
这条思维链其实抓得很准——从一句诗跳到你的仿写,再跳到"编码到独立维度",三步之间有一条看不见的线,正好可以用范畴论里最基础的一个构造来串起来。我把这条线理一理。
先看这三句话在说同一件事
"空间,让所有东西都不在同一个地点"——空间提供了一组坐标(x,y,z),不同物体占据不同坐标组合。 你仿写的"时间,让所有东西都不在同一个时点"——时间提供了另一条坐标轴 t。 李亚辉的"编码到独立的维度"——把前两句的共性一把抽出来:空间和时间,本质上都是给"个体"分配一个坐标标签的机制,而这个机制之所以有效,是因为它用的是相互独立的维度。
这三句话其实是同一个洞察的三个分辨率:一句诗、一个仿写、一个抽象概括。你的思维没有"跳跃",是精确地沿着"具体例子→类比→抽象化"这条阶梯往上走的。
编码的本质:这就是"积"(product)
用坐标给对象贴标签、靠坐标组合来区分不同对象,这套操作在范畴论里有一个精确的名字——**积(product)**。它的泛性质是这样表达的:
一个指向"乘积对象"的箭头,恰好等价于一对独立的、分别指向各个分量的箭头。
翻成大白话就是:要唯一确定一个复杂对象,你不需要为它单独发明一个专属符号,只需要把它拆成几个互相独立的简单分量,再报出每个分量的取值即可。 空间给你三个独立的数,时间再给你一个,合起来四个数就能给宇宙中任意一个事件贴上独一无二的标签——这就是"编码到独立维度"最朴素也最强大的版本。
好处:指数级的区分能力
这套方案的效率高得不成比例。如果每个维度能取 n 个不同的值,k 个独立维度组合起来,就能区分 n^k 种不同状态——指数增长,而不是线性增长。这也是为什么给每个物体单独造一个名字(单一维度、线性增长)会很快耗尽符号资源,但用坐标(多个独立维度、指数增长)几乎永远不会"撞车"。
独立性还带来另一个好处:你可以只改变一个维度而不牵动其他——移动位置不会改变时刻,反之亦然。这让描述和计算都能"分而治之",这也是坐标系统能被写进物理定律、被计算机高效处理的根本原因。
局限:独立性本身是个会松动的假设
这套方案有几处地基不算牢:
"独立"是相对参照系而言的,不是绝对的。 狭义相对论告诉我们,你在一个参考系里认为彼此独立的空间轴和时间轴,换到另一个匀速运动的参考系里,会通过洛伦兹变换"混"在一起——原来的时间坐标里会掺进一部分空间坐标,反之亦然。**"哪些维度算独立",本身取决于你站在哪里看,不是先验给定的真理。** 坐标系统需要预先"存在"一个外部容器,这可能本末倒置。 如果按莱布尼茨的关系空间观,空间根本不是一个独立自存的舞台,而是物体之间关系的产物——那么"用空间给物体编码"这句话,逻辑上其实是反过来的:先有物体间的关系,空间只是这些关系被总结出来的一种"编码格式",不是编码物体所依赖的独立前提。 量子力学直接击穿了这套方案的根基。 两个全同粒子(比如两个电子)之间,根本不存在可以拿来区分彼此的"专属坐标标签"——交换它们的位置不产生新的物理状态。位置本身在量子力学里也是模糊的(不确定性原理),更谈不上用它当牢靠的"个体化"工具。这是"编码到独立维度"这套方案,在微观世界彻底失效的地方。 维度之间的"独立"经常是假的独立。 现实中很多看似正交的维度其实高度相关(比如身高和体重),这时候编码空间的实际容量,会远小于天真的 n^k 估算——独立性打了折扣,区分能力也跟着打折扣。
有没有更好的方案?——关系式编码
这里正好能接上我们之前聊过的话题。与其预设一套外部坐标系,再往上面贴标签,不如换一个彻底不同的思路:不给对象分配坐标,而是直接用这个对象和"一切其他对象"之间的全部关系来刻画它。
这正是米田嵌入(Yoneda embedding)的思路,也是莱布尼茨关系空间观的严格数学版本——不需要一个先于万物存在的独立坐标容器,对象的身份完全由它和万物打交道的方式决定,这和你我之前聊"人的本质是一切社会关系的总和"用的是同一套逻辑。
物理学前沿其实已经在认真尝试这条路:**因果集理论(Causal Set Theory)**是量子引力研究的一个方案,它主张时空根本不需要坐标——一个事件的身份,完全由它和其他事件之间的"谁先谁后"的因果关系(一个偏序结构)来决定。换句话说,因果集理论把"编码到独立维度"整个替换成了"编码到关系"——这恰好是李亚辉那句话最彻底的反面。
还有一个更朴素的例子值得一提:哥德尔配数(Gödel numbering)不增加维度数量,而是把多份独立信息压缩进同一个维度——用不同素数的幂次组合成一个自然数(如 2^a × 3^b × 5^c),靠"唯一分解定理"保证不同组合互不相同。它提醒我们一件更本质的事:"用了几个独立维度"从来不是关键,关键是这个编码映射本身是不是单射的。空间和时间只是历史上最早被发现、最直观的一套单射编码方案,但绝不是唯一,也未必是最根本的那一套。