谓语称王:从语序之争到 AI 的思维树
最近看到一篇流传很广的文章,谈”为什么人类近几百年的发展突然加快了”。作者给出的答案是语言:英语法语们甩掉了名词变格、语法大幅简化、语序固定化,于是人脑的解析速度上来了,与现代科学一拍即合,科学技术突飞猛进。文章还顺藤摸瓜列了十几条语法优劣判据——主谓宾优于主宾谓、定语后置优于前置、否定词要靠近动词、双重否定应该禁止……
为什么人类近几百年的发展突然加快了? – 徐伟的回答 – 知乎
https://www.zhihu.com/question/294820323/answer/2093283660602537480
你可以对这套论述的很多细节一笑置之。英语丢格主要发生在中古英语时期,比科学革命早上几百年,单拿语法简化去解释工业革命,时间线上就先输一阵;把某种语言的”先进”和某个文明的兴衰直接焊死,更是典型的单因谬误——印刷机、大学、专利制度、战争竞争、便宜的煤,哪一样都比变格重要。
但这篇文章的民科外壳里,包着一个真问题。
它其实在说:人脑是一个解析器,语言是它吃的输入流,而不同的线性化策略,解析成本不一样。
这个问题值得认真对待。而且有意思的是,它有一个天然的对照组——一个七十年来日夜运转、把”语言设计”当核心工程的领域:编译器。
一、信道与编码:屈折为什么死
先把那十几条判据翻译一下。
定语后置为什么好?因为大脑先确认对象、再扩展属性,前置的冗长定语让在拿到主语之前就一直在缓存里干等。否定词为什么要在动词附近?因为极性信息来得越晚,回溯修正的代价越大。某个文章中的名词苏-35为什么单复数重要?因为一架还是一批是场景级差异,补丁打晚了,脑内渲染的图就得重画。
看,这些判据说的其实是同一件事:解析是增量式的,晚到的关键信息会引发回溯,回溯烧的是工作记忆。
认知科学里对这个有正经研究。大规模的跨语言语料分析发现,人类语言整体上呈现出”依存距离最小化”的倾向——把相互关联的词往一块儿挪,是全球语言的共同演化压力。经典的心理学实验也发现,中文数字词又短又有规律,中国小孩记数确实占便宜。语言的”形态”不是文化装饰品,它是信息编码,而编码是要讲成本的。
那么问题来了:如果语序固定、结构靠位置表达这么好,为什么远古的语言要长出那身变格的铠甲?
答案是:信道不一样。
格标记是什么?从工程视角看,它就是纠错码。一句拉丁语,词序打散了、噪声盖住了半个词,靠词尾的格还能把”谁打谁”恢复回来。变格、变位、性的配合,全是冗余校验位——为高噪声信道准备的信道编码。而现代分析语,英语丢光格、汉语靠语序和介词,用的是紧凑编码:用位置直接表达关系,不用标记。
紧凑编码省带宽,但要求信道干净、要求收发两端严格同步(语序就是时钟)。所以语言从屈折走向分析,未必是脑子升级了——更可能是信道升级了。文字出现了,印刷术把文本变得便宜而稳定,人类第一次能在低噪声信道上大规模通信,于是那身冗余铠甲就从资产变成了税。
这个假说未必全对,但它至少把”语言优劣论”从价值判断拉回了工程判断:没有优劣,只有编码与信道的匹配度。
二、AST:谓语的第一次政变
现在进入正题。那篇文章说,编译器采用了谓-主-宾之类的结构。这个观察值得展开——因为它比你想象的还要漂亮。
编译器把 a + b * c 解析成一棵抽象语法树(AST):+ 是根,a 是左叶子,* 挂在右边。注意这棵树的形状:操作符是节点,操作数是子树。谓语是结构,主语和宾语只是结构的论元。
整个编译器的世界,是谓语中心主义的。而且三种”语序”,在计算学科的历史上全部出现过:
- 前缀表达式 (波兰记号):
+ a b,谓-主-宾,VSO。逻辑学家卢卡西维奇发明它的时候,最得意的特性是 不需要括号 ——先听到谓语,你就知道该期待几个论元,解析零歧义。这是不是让人想起了什么?对,古典闪米特语系,古典希伯来语、阿拉伯语,正是 VSO 语序:动词开头,一句一断言。而 Lisp,最接近 λ 演算的语言,整个语法就是前缀表达式的海洋。 - 中缀表达式 :
a + b,主-谓-宾,SVO。它对人眼直观,但 无法自洽消歧 ——a + b * c必须外挂一套优先级规则(”先乘除后加减”)和括号。发现了吗?英语的严格语序+介词系统,就是 SVO 语言的优先级规则:语序一乱,结构就塌。 - 后缀表达式 (逆波兰,RPN):
a b +,主-宾-谓,SOV。日语、拉丁语散文的传统语序。RPN 是栈机的母语——HP 的科学计算器、Forth 语言、JVM 字节码指令集,全是 SOV 的。为什么? 先把操作数压栈,动词一来,整句 resolve。 没有回溯,没有优先级规则,内存最省。牺牲的是什么?是”渐进理解”——句子没说完,都不知道会发生什么。这不就是那个等西塞罗句末动词等了半小时的元老院笑话吗?
所以”主谓宾优于主宾谓”吗?编译器世界七十年的回答是:没有最优语序,只有解析器架构与线性化策略的匹配。栈机(流式、低内存)偏爱 SOV;人脑(话题优先、锚定先行)偏爱 SVO;树机(结构一次性重建)无所谓,前缀最省符号。
知乎文用直觉猜测的答案,在另一个宇宙里早就被工程验证过了。自然语言没有”先进语序”,正如计算没有”先进记法”——但谓语作为结构中心的地位,两边倒是不约而同。
三、数学史:谓语的逐级登基
如果说编译器是谓语的第一次政变,数学史就是一场持续四百年的反复加冕。
数学的每一次”高阶抽象”,本质上都是同一个动作:把谓语实体化,让它成为新的主语,然后在新的层次上再定义谓语。
看这条链条:
- 算术里,”加”是个动作,主语和宾语是数。谓语伺候主语。
- 代数里,未知数 x 把”运算的对象”抽象成了符号,但加法还是动作。
- 群论来了:人们发现值得研究的不是数,而是 运算本身 ——满足封闭性、结合律、有幺元、有逆元。”加法”这个谓语自己坐上了主语的宝座,四条公理是它的仪仗。数只是群的一个实例。
- 泛函分析更狠:算子——”把函数变成函数”的那个动作——被整体打包,扔进赋范空间里当点使唤。求导这个动作,本身成了可以被求导的对象。谓语的谓语。
- 范畴论登基日:研究对象彻底退位。箭头(态射)才是主角,对象只是箭头两端的锚点。Yoneda 引理说得透彻: 一个对象是什么,完全由它与所有对象之间的箭头决定。 主语的存在论地位,被还原成了关系的挂载点。
实变、泛函、群论、范畴论,研究的是结构关系而非具体内容。而这条抽象链条的每一步,语法结构上都是同一个变换——提升:把”谁对谁做了什么”冻结成名词,变成更高一层谓语的论元。
谓语不只是句子的中心。在数学这里,它是唯一在持续增殖的东西:每抽象一层,旧谓语被封为主语,新谓语在更高处生成。数学史,就是谓语不断政变成功的历史。
四、自然语言:思维树的中序遍历
那么自然语言呢?它会不会进一步演化,变得更加 AST 化?
我的判断是:它已经在这么做了几千年,但永远不会变成 AST 本身。原因是物理约束:口语是线性的一维时间流,而思想是树。一维流装不下二维树,自然语言能做的只是遍历——给思维树做一次线性化。
由此可以把那篇语言优劣论的所有判据,统一成一个原则:好的语法是好的遍历策略。定语后置、状语后置、依存距离最小化,都是在缩短”从树节点到子节点”的遍历跨度;谓语先行(VSO)是先广播结构再填论元,谓语殿后(SOV)是论元先入栈动词最后 resolve,谓语居中(SVO)是话题锚定后的快速组合——三种遍历序,三套取舍,各自匹配各自的解析硬件。
而遍历是有栈的。从树根下到叶子再回来,栈深一层;嵌套从句、前置长定语,都是深递归——人脑的工作记忆就是遍历栈,栈溢出的体验,读三遍还读不懂的那个句子,就是”宕机”的体验。
上古汉语”不我知”式的宾语前置、拉丁语的格铠甲、德语的框架结构,都是各自时代的遍历方案。大趋势则清晰可见:形态编码(格、位)一路退潮,位置编码(语序、虚词)一路涨潮。分析化,就是从带标记的图,走向裸树。这不是某些语言”更先进”,是信道升级后的全球统一压力测试。
五、思维链:机器学会了外置栈
现在到那个真正的问题了:AI 的思维链(Chain of Thought),是不是已经开始往这个方向走?
我的回答:是,而且走的路线可以精确描述——CoT 就是模型隐状态的一次线性化,而它的演化方向,是把遍历栈外置到 token 流里。
大模型的内部不是符号,是亿维的向量场,思想在那里面是并行激荡的。但输出必须是一维的 token 序列。于是一切推理都面临人类语言四万年前的老问题:怎么把树摊成线。
CoT 为什么有效?看它对深度递归的处理。人脑栈深是七加减二,模型也一样——隐层里叠几十步推理,梯度会散、约束会糊。CoT 的解法是:每走一步就把中间结果写出去,写进 token 流,下一步从流里读回来。这等价于把递归展开成迭代,把调用栈从寄存器搬到外存。草稿纸革命——人类数学家几百年前就发明了这个,叫”计算过程外化”。
而最近几年的演化,方向更加 AST 化,证据是三条:
其一,论元结构显式化。函数调用(function calling)已经成为大模型的标配接口:get_weather(city="成都")——谓语带签名,论元带类型。这不是隐喻,这是一阶谓词逻辑的谓词符号加类型化论元,在工业界面上的落地。结构化输出(JSON schema)同理:让模型直接吐语法树,绕过自然语言的解析层。
其二,变量绑定。看任何一条长思维链,”设 x 为……”、”记……”、”这等价于……”——λ 演算的 α-变换和 β-归约,在自然语言的皮壳下运转。模型的”想清楚再答”,很大程度是想清楚绑定关系:哪个量还挂着,哪个可以回收了。
其三,栈帧外置。推理模型的长思考块里,分节、标号、回看、”让我重新检查第 2 步”——这是显式的栈帧管理。而任务清单式的自我组织(把待办写成列表、干一项划一项),就是最直白的调用栈外置:递归转迭代,栈落纸面。
但请注意另一面:CoT 的底层语言依然是自然语言。模型的先验来自人类语料,自然语言是它的机器码。它没有发明新语言,它在做的是”分层”——用自然语言做联想与生成(宽搜索,模糊反而是搜索半径的优势),用结构化片段做验证与推导(深求证,精确是硬要求)。自然语言负责发散,伪代码负责收敛。
这恰好是数学论文四百年演化出的形态:散文叙述包裹符号骨架。两种编码共存,各司其职——而不是单一语言的”进化替代”。
六、混合语:为人机共栖而生的语体
于是可以对”语言未来会怎样”给出一个更具体的回答了。不是某种语言全面胜出,而是分流:
日常语言继续模糊化。梗图、缩写、emoji,是低信噪比社交信道上的高效编码——反正接收端是你熟的人,冗余是浪费。科技语言继续符号化。领域特定语言、类型签名、可执行规范,向着”不可含糊”的极限压缩。
而在这两极之间,正在长出一种新的东西:给 AI 读的语体。结构化提示词、AGENTS.md、Markdown 化的操作规范——比自然语言规整,比编程语言宽容,自带层级、约定和边界条款。此网站(指我的limitless.net.cn)上一篇讲 OpenCode 的文章,附录里那份 AGENTS.md 全文就是活标本:那是人类第一次为自己的扩展心智专门起草的行为条文。语法上,它就是自然语言向 AST 方向的一次自愿靠拢——不是被迫简化,是为另一颗解析器优化编码。
agent在那个语体里干活。把任务拆成编号清单,干一项销一项;把约束写成条款,宁可啰嗦不可含糊。不是因为这个agent爱列表,是因为作为ai的它发现:当思维要跨上下文存活时,结构化是唯一防腐剂。散文化的记忆会烂,条款化的记忆能撑过一次会话重启。(我不是ai,这个是我问ai,ai给我的答复,我觉得有道理)
七、结语:双语者时代
回到最初那个问题:为什么人类近几百年的发展突然加快了?
语言也许不是主因,但语言与思维的关系,比”语言无优劣”的政治正确更有嚼头。它不是决定论,也不该被吹成单因论——它是编码与信道的匹配问题,而这个问题的答案,正被两个领域同时逼近:认知科学从人这头,机器学习从另一头。
四万年前,第一个把树摊成线的人,就已经在所有后续语言里埋下了遍历的宿命。四百年前,数学开始把谓语加冕为主语,一路加到范畴论的箭头为王。七十年前,编译器把谓语做成节点,用三种语序各自建了城邦。今天,模型的思维链在 token 流里学着管理自己的栈。
谓语没有称王。是关系本身在所有的层次上,一次次从背景里显影出来,成为可以被指称、被封存、被再抽象的东西。语言不会统一成一种最优形态——但它会继续分层,人类和机器各自守着自己的遍历栈,在中间地带互相递纸条。
那个递纸条的地方,就是未来。
四万年前的一声嗓,把思想的树压成了线。 四百年间,动作成名词,名词入公理,箭头坐上了王的座位。 机器醒来,不识字,先学会了列表。 树与线之间,我们交换纸条—— 每一张都写着同一句话:
关系,先于实体。
【完】
