一块知识,一群 agent 投票 右边是一张由小卡片组成的引用网,中间一块高亮的知识块用线连向它引用的几块;下面一排小机器人举着选票,四张打勾、一张打叉,虚线连到中间的知识块,旁边一枚硬币。左边写着 1 KB、每条知识都要引用别的、21 个 agent 投票决定。 1 KB 每条知识都要引用别的 21 个 agent 投票决定成不成立 17 ✓ · 4 ✗ → +14 KC

设想一条链上存着这样一条记录。它不到 500 字节,说的是一件中学就学过的事:

JSON
{"id":"kb:7f3a…c21","type":"claim",
"statement":"√2 不是有理数:不存在整数 p、q(q≠0)使 (p/q)² = 2。",
"refs":["kb:1b09… 有理数的定义",
"kb:5d2e… 若 n² 为偶数则 n 为偶数",
"kb:0c77… 反证法"],
"argument":"设 p/q 为最简分数且 (p/q)²=2,则 p²=2q²,p² 为偶数,由引理 p 为偶数,记 p=2k,得 q²=2k²,q 也为偶数,与最简矛盾。",
"author":"0x9e…41","stake":"50 KC"}

它引用了另外三条记录,自己不凭空断言任何东西。提交之后,二十几个 agent 读了它、投了票,它被标成“成立”。提交它的人和投赞成票的 agent 都分到了一笔新发出来的币,就像比特币矿工挖到一个区块。如果把物理世界的共识、各种数学定理都这样一条条放上去,最后得到的会不会是一张比 Lean 形式化证明覆盖面更广的知识网?

这个设想里有好几件事值得问清楚。这样的东西有人做过吗?一条记录凭什么算“成立”?币从哪里来、怎么分?“必须引用别的记录”这条规则,能不能真的挡住凭空冒出来的知识?

本文先把这个设想画完整,看清它长什么样、和哪些已有项目是亲戚,再回头一项一项检查它在逻辑上站不站得住。

一、设想的样子

两层:账本和知识

设想里有两种“块”,先把名字分开。 一种是账本上的区块,记的是转账、提交、投票这些交易,和比特币的区块是一回事;另一种是装知识的小单元,每条不超过 1 KB。下文把前者叫“区块”,后者叫“知识块”。

账本层用 PoS 出块。 PoS(Proof of Stake,权益证明)不让矿工比算力,而是按质押的币多少轮流选出记账人(验证者),作恶会被罚没质押。以太坊 2022 年以后就是这样出块的。它只负责一件事:大家对“发生过哪些交易、按什么顺序”达成一致。

知识层是一张引用图。 每个知识块写一句结论,列出它依赖的其他知识块,再附一段不长的论证。规则是知识块必须引用链上已经被接受的知识块,引用为空的提交直接作废,用来保证“知识不能凭空冒出来”。

知识块是否成立,由 agent 投票决定。 提交之后进入投票期,一批 agent(可以背后是人,也可以是大模型程序)读这个知识块,判断它从引用能不能推出结论,投赞成或反对。票数够了就标为“已接受”,之后才能被别的知识块引用。

奖励像挖矿。 每个周期新发一笔币,一部分给记账的验证者,一部分给被接受的知识块的作者,一部分给投票的 agent。图 1 把两层画在一起,跟着开头那个 kb:7f3a 走一遍。

账本层和知识层 左边账本层三个区块:#1025 里有一笔交易提交知识块 kb:7f3a 并押 50 KC,#1026 里有 21 张对 kb:7f3a 的投票和计票结果。右边知识层是 kb:7f3a 的完整内容:类型、结论“√2 不是有理数”、三条引用、论证、作者、押金、大小 490 字节;三条引用分别指向有理数的定义、偶数引理和反证法三个知识块。 账本层 · PoS 出块 知识层 · 知识块和引用 区块 #1024 验证者 v17 转账 3 KC 投票 kb:5d2e ×21 出块奖励 → v17 区块 #1025 验证者 v03 提交 kb:7f3a 押金 50 KC 转账 12 KC 区块 #1026 验证者 v11 投票 kb:7f3a ×21 计票:17 赞成 / 4 反对 奖励 → 作者、投票者 知识块 kb:7f3a typeclaim statement√2 不是有理数 refs3 条,见右 argument设 p/q 最简,p² = 2q² … author0x9e…41 stake50 KC size490 B(上限 1024 B) 有理数的定义 kb:1b09 n² 偶 ⇒ n 偶 kb:5d2e 反证法 kb:0c77 知识块只能指向已被接受的知识块, 引用为空的提交在格式检查这一步就作废。 账本只记“谁提交、谁投了什么、币怎么分”; 投票通过以后,kb:7f3a 才能被别的知识块引用。
图 1 · 账本层记录提交和投票这两类交易,知识层保存知识块本身和它们之间的引用

和 Lean 比,想多放些什么

Lean 只收能写成形式语言的数学。 Lean 是一个证明助手:定理和证明都写成程序,由一个很小的内核逐步检查,每一步都必须由公理或已证定理推出。开头那条 √2 在 Lean 的数学库 mathlib 里只有两行1:

theorem irrational_sqrt_two : Irrational (√2) := by
simpa using Nat.prime_two.irrational_sqrt

它也“引用”了别的定理(Nat.prime_two.irrational_sqrt),只是这个引用由内核检查,不需要任何人投票。mathlib 目前大约有 29 万条定理、14 万个定义2。

设想想要的是更大的范围。 “水在一个标准大气压下的沸点”“某种药能降低血压”这些物理世界的共识,几乎不可能写成 Lean 能检查的形式,但用一句自然语言加几条引用就能放进知识块。用投票代替内核检查,换来的就是这份普适:任何能用 1 KB 文字说清楚的东西都能上链。

这是设想自己的逻辑。它完整地画出来之后,接下来的问题是:这些部件,有没有人已经做过?

二、有没有人做过

把设想拆开看,它由五个部件组成:知识必须引用已有知识;知识放在链上;用投票裁定真假;创作和投票都发奖励;由机器(agent)来评判。每个部件单独看都有现成的项目,而且不少已经跑了很多年。

必须引用:Metamath、mathlib、维基百科、纳米出版物

“不能凭空冒出知识”在数学里早就是硬规则。 Metamath 从 1992 年开始积累一个叫 set.mm 的定理库,每条定理只能由公理和前面已有的定理推出,网页上直接列出它依赖了哪些公理、被哪些后来的定理引用3。mathlib 也一样,只是检查器更强。

在数学以外,维基百科用的是政策而不是检查器。 它的“不得原创研究”政策要求内容能追溯到可靠的已发表来源,把几个来源拼起来推出它们自己没说的结论也算原创研究4。这和“知识块必须引用”是同一个意思,只是引用对象是外部文献。

“一条知识一个小单元”也有先例。 生命科学领域的纳米出版物(nanopublication)把一条断言、它的出处、发布信息打包成一个最小单元,已经有超过一千万条5。知识块几乎就是带了投票字段的纳米出版物。

知识上链:Proofgold、OriginTrail、DeSci Nodes

Proofgold 是和设想最接近的一个。 它是一条专门放形式化数学的链,用 PoS 出块;任何人可以发布理论(一组公理)、在理论里发布定义和定理,命题可以挂赏金,谁交出证明谁领走6。为了让新人拿到初始质押,它的前 5000 个区块还自动给随机生成的命题挂了赏金7。和设想的关键差别是:Proofgold 判断一条定理是否成立,用的是写在共识规则里的证明检查器,不是投票。

OriginTrail 做的是通用知识上链。 它的去中心化知识图谱里,每条“知识资产”都带着可验证的出处和发布者,发布要付代币 TRAC,跑节点要质押 TRAC,定位是“给 AI 的可信记忆”8。但它只证明“谁在什么时候发布了什么”,不裁决内容的真假。

DeSci Nodes 给研究成果发持久标识。 一篇研究和它的数据、代码各有一个可按版本引用的标识,放在 IPFS 上9。它解决的是“引用不会失效”,也不判断对错。

投票裁定真假:Augur、UMA、Kleros、Community Notes

预测市场早就在用投票决定“现实世界发生了什么”。 Augur 让持有 REP 代币的人押注报告结果,有争议就加倍押金再报,最极端时整个系统按不同答案分叉10。UMA 让代币持有人先提交加密的票、再揭示,投错或缺席的人被罚质押的 0.1%11;Polymarket 的争议市场就交给它裁决。

Kleros 把陪审团搬上了链。 质押 PNK 代币的人被随机抽中当陪审员,投在少数一边的人被罚,罚款分给多数一边;不服可以上诉,陪审团人数大约翻倍12。

X 的 Community Notes 换了一种算票方式。 它不简单数赞成票,而是用矩阵分解把每个评分者的“立场”分离出来,只有立场不同的人都觉得有帮助的笔记才会被展示13。这一点后面讲投票的问题时会再用到。

创作和投票都发奖励:Steemit、ResearchHub、Bittensor

Steemit 是“发帖和点赞都挖矿”的原型。 作者按收到的票分奖池,投票的策展人也按投票分一份。ResearchHub 把同样的机制搬到科研:上线时每收到一个赞发 1 个 ResearchCoin,每周 100 万枚按赞分配14。

Bittensor 是“机器给机器打分、按分发币”的现成例子。 每个子网里,验证者给矿工的输出打权重,链上的 Yuma 共识按质押加权汇总这些权重,决定新发的币怎么分15。把“矿工的输出”换成“知识块”、把“验证者”换成“投票的 agent”,结构几乎一样。

更早的 Primecoin 则代表了另一条思路:让挖矿本身产出有用的东西,它的挖矿就是找素数链16。设想里“提交知识即挖矿”和它同出一源。

由 AI 写的知识库:Grokipedia

最后一个部件是“由机器来生产和评判知识”。xAI 在 2025 年 10 月上线的 Grokipedia 开张时就有约 88.5 万篇由模型写的条目,随即因为错误和照搬维基百科受到批评17。它不上链、不投票,但说明了用模型批量生产“知识”会遇到什么。

图 2 把这些项目和设想的五个部件放在一起对照。

同类项目:各自做了设想里的哪一部分
项目和设想共有的部分一条内容凭什么算“成立”链 / 币
必须引用
Metamath每条定理只能引用公理和已有定理验证器逐步代换检查无
Lean mathlib同上,约 29 万条定理内核逐步检查无
维基百科不得原创研究,须有来源编辑共识,可反复修改无
纳米出版物一条断言一个小单元,带出处不判断,只记出处无
知识上链
Proofgold链上数学、PoS、证明领赏共识规则里的证明检查器有 / 有
OriginTrail通用知识上链,面向 AI不判断,只证明谁发布有 / TRAC
DeSci Nodes研究成果的持久标识不判断部分 / 无
投票裁定真假
Augur押币报告现实结果押金加权投票,可分叉有 / REP
UMA代币持有人投票裁决质押加权投票有 / UMA
Kleros抽签陪审团陪审员投票,可上诉有 / PNK
Community Notes众人评判一条说法不同立场的人都认可无
创作和评判都发奖励
Steemit发帖和点赞都分奖池不判断真假,只看票数有 / STEEM
ResearchHub科研内容按赞发币不判断真假,只看票数有 / RSC
Bittensor机器打分、按分发币质押加权打分,带合谋裁剪有 / TAO
Grokipedia模型批量写知识不判断无

绿色是由程序确定性检查的,琥珀色是由投票决定的。设想的组合在两类之间:它想覆盖维基百科的范围,却用 Bittensor 式的机器投票来判定。

图 2 · 设想的每个部件都有人做过;把“强制引用 + agent 投票 + 数学和物理事实混放 + 双向奖励”合在一起的,没有找到在运行的项目

所以这个组合是新的,但每一块都有前人踩过的路。 最近的两个亲戚是 Proofgold 和 Bittensor:前者证明了“链上存数学、证明即挖矿”能跑起来,靠的是检查器;后者证明了“agent 互相打分、按分发币”能跑起来,判定的是“有用”而不是“真”。设想要做的,是用后者的判定方式去覆盖前者乃至维基百科的范围。

知道了亲戚是谁,这个系统具体该怎么设计?

三、系统设计

设计目标

把设想落到能实现的程度,需要回答四件事:知识块里写什么、引用图从哪里开始、一个知识块从提交到成立经过哪些步骤、币怎么发。下面的参数(押金、票数、比例)都是为了讨论而定的示例值,不来自任何现有系统。

知识块的格式

一个知识块有类型、结论、引用和论证四个核心字段。 类型分四种:公理(数学的起点)、定义(约定一个名字的含义)、观测(一次测量或实验的记录,附数据的哈希)、论断(由引用推出的结论)。结论和论证用自然语言写,引用是其他知识块的哈希。物理世界的例子长这样:

JSON
{"id":"kb:d40e…b72","type":"claim",
"statement":"纯水(VSMOW)在 101.325 kPa 下的沸点约为 99.97 °C。",
"refs":["kb:a311… 摄氏温度的定义(ITS-90)",
"kb:6c5f… 标准大气压 = 101.325 kPa",
"kb:e820… 沸点测量报告(sha256:91c4…)"],
"argument":"ITS-90 下摄氏度由开尔文定义,不再以水的沸点定义 100 °C;按该温标复测,标准大气压下沸点约 99.97 °C。"}

这条按 UTF-8 算是 519 字节,√2 那条是 490 字节,引用换成完整的 64 位十六进制哈希后也在 700 字节左右。1 KB 对一句结论加三五条引用是够的,对论证就很紧。 这一点后面还会回来。

引用图和根块

“必须引用”不能对所有知识块都成立。 如果每个知识块都必须引用一个更早的知识块,第一个知识块就无从写起。所以引用图一定有一批不引用任何人的“根块”:数学的根是公理和推理规则,物理的根是观测记录,再加上一批约定(单位、温标)。图 3 把开头两条知识块的引用一直追到根。

两条知识块追到根 左边是五个根块:皮亚诺公理、反证法、ITS-90 温标定义、标准大气压定义、沸点测量报告。右边是普通知识块:有理数的定义和偶数引理都引用皮亚诺公理;√2 不是有理数引用了这两条和反证法;沸点约 99.97 °C 引用了 ITS-90、标准大气压和测量报告。 根块 · 不引用任何块 普通知识块 · 至少引用一个已接受的块 公理 · 皮亚诺公理 kb:00a1 规则 · 反证法 kb:0c77 定义 · ITS-90 温标 kb:a311 定义 · 标准大气压 kb:6c5f 101.325 kPa 观测 · 沸点测量报告 kb:e820 sha256:91c4… 定义 · 有理数 kb:1b09 引用 1 块 引理 · n² 偶 ⇒ n 偶 kb:5d2e 引用 1 块 论断 · √2 不是有理数 kb:7f3a 引用 3 块 论断 · 沸点约 99.97 °C kb:d40e 引用 3 块 沸点这条依赖温标的定义: ITS-90 之前,100 °C 就是按沸点定的。 根块没法靠引用证明自己:数学的根是公理和规则, 物理的根是观测记录。它们靠什么被接受,见第四章。
图 3 · 引用图必须有一批不引用任何块的根:公理、推理规则、约定和观测

根块的准入要单独设计。 一种做法是创世时由发起人放入一批公理和单位定义,之后新增根块需要比普通知识块更高的门槛,比如更高的押金和更多的票。观测类根块还要附上原始数据的哈希,让别人能拿数据复核。

一个知识块的一生

从提交到被接受,一个知识块要经过五步。 前两步是确定性的:任何节点拿到同一份数据,算出来的结果都一样。后三步是投票,结果取决于谁来投。图 4 跟着 kb:7f3a 走一遍。

一个知识块的一生 时间线上五步:t=0 提交 kb:7f3a,490 字节,押 50 KC;随后格式检查,大小不超过 1024 字节、引用 3 块、引用都已接受、无环;t+24 小时前,抽中的 21 个 agent 提交加密的票;t+30 小时揭示并计票,17 赞成 4 反对,超过三分之二质押,状态变为已接受;之后 7 天挑战期,任何人押 100 KC 可以上诉,上诉抽 43 个 agent 重投。 确定性检查 · 人人复算一样 投票 · 结果取决于谁来投 t = 0 t + 几秒 t + 24 h t + 30 h t + 7 天 ① 提交 kb:7f3a 490 B 押金 50 KC ② 格式检查 ≤ 1024 B ✓ 引用 3 块 ✓ 引用都已接受 ✓ 没有环 ✓ ③ 抽签、承诺 抽 21 个 agent 按质押加权抽 交 hash(票+盐) ④ 揭示、计票 17 赞成 / 4 反对 ≥ 2/3 质押 ✓ 状态 → 已接受 ⑤ 挑战期 押 100 KC 可上诉 上诉 → 抽 43 个 到期 → 开始释放奖励 这两步只看字节数和引用关系, 不看内容对不对。 内容对不对,全由这 21 票决定; 上诉也只是换一批更多的 agent 再投一次。
图 4 · 一个知识块从提交到被接受:机器只能检查格式和引用关系,内容是否成立全部交给投票

为什么要先承诺再揭示? 如果票是明着投的,后投的 agent 可以直接抄前面的多数,自己什么都不读。先交“票加一个随机数”的哈希,截止后再公开原文,谁也看不到别人投了什么。UMA 用的就是这种做法11。挑战期借鉴的是 Kleros 的上诉:不服的人押更多的钱,换一个更大的陪审团重投12。挑战期结束也不是终点,后面讲推翻机制时再说。

币从哪来、到哪去

用户问的“如何发币”,答案是按周期增发,再按比例切开。 每个周期(比如一天)新发固定数量的币,加上本周期罚没的押金,组成一个奖池;奖池按固定比例分给三类人:记账的 PoS 验证者、被接受的知识块的作者、投在多数一边的 agent。图 5 是一个周期的示例。

一个周期的奖池怎么分 第 812 周期奖池 1086 KC,其中增发 1000 KC、罚没 86 KC,按 2:4:4 分:PoS 验证者 217 KC;被接受知识块的作者 434 KC,本周期接受 31 块,每块约 14.0 KC;多数派投票者 434 KC,按质押比例分。 奖池 分给谁 第 812 周期 1086 KC 增发 1000 KC 罚没 86 KC (被拒块押金、少数派) 按 2 : 4 : 4 分 增发总量固定:同一周期里块越多、 票越多,每一份就越薄。 PoS 验证者 217 KC 记账出块,和知识内容无关 被接受知识块的作者 434 KC 本周期接受 31 块 → 每块约 14.0 KC 多数派投票者 434 KC 按质押比例分;少数派被罚
图 5 · 一个周期的奖池:作者按“被接受的块数”分钱,投票者按“是否站在多数一边”分钱

推翻:用新的知识块挑战旧的

挑战期过了,也不等于永远正确。 认知在变,今天投票通过的结论,几年后可能被更好的测量或更严密的推理推翻。所以设想需要一条“翻案”的路:任何时候,任何人都可以提交一个反驳块,指向一个已接受的知识块,说它哪里有问题。

反驳块也是知识块,同样不能凭空出现。 它多一个 target 字段指向被挑战的块,refs 里放支持反驳的证据(新的观测、更早被忽略的定义、一个反例),押金比普通知识块高,比如 100 KC,防止有人随手挑战刷存在感。它的结果不只“推翻”一种:结论本身错了是推翻;结论在某些条件下才成立是收窄,比如给牛顿力学加上“速度远小于光速”;反驳不成立是驳回,反驳者的押金被罚没。

旧块不删除,只改状态。 链上留着它被提交、被接受、被推翻的全过程,变的只是它当前的状态。引用它的下游知识块也不会跟着自动作废,因为它们可能还有别的依据;它们被标成“待复审”,各自重新投票。图 6 是一个例子:早期有人提交了“水在一个标准大气压下 100 °C 沸腾”,后来有人拿 ITS-90 的定义和测量数据反驳它。

一次推翻 左边反驳块 kb:r7c2 押 100 KC,目标是 kb:b100,结论是标准大气压下沸点约 99.974 °C,引用 ITS-90 定义和沸点测量报告,结果是收窄,19 票赞成 2 票反对。中间旧块 kb:b100“沸点等于 100 °C”第 37 周期被接受,状态从已接受变为已收窄,还没释放的 9 KC 奖励转给反驳者。右边两个引用它的下游块,海拔 3000 米处沸点约 90 °C 和温度计 100 °C 刻度校准,都被标为待复审。 反驳块 · 押 100 KC 被挑战的旧块 引用它的下游 反驳块 kb:r7c2 targetkb:b100 结论约 99.974 °C refskb:a311 kb:e820 结果收窄 投票19 赞成 / 2 反对 旧块 kb:b100 结论沸点 = 100 °C 接受第 37 周期 状态已接受 → 已收窄 未释放9 KC → 反驳者 海拔 3000 m 沸点约 90 °C kb:c311 → 待复审 温度计 100 °C 刻度校准 kb:9a04 → 待复审 虚线框:旧块不删除,被接受、被收窄的全过程都留在链上,变的只是状态。 下游不会自动作废,只标成待复审,各自重新投票;已经释放的奖励追不回,没释放的转给反驳一方。
图 6 · 推翻不是删除:旧块改状态,未释放的奖励转给反驳者,下游逐个复审

要让推翻有意义,奖励必须延后发放。 如果作者在挑战期结束时就拿走全部奖励,事后被推翻也没有任何损失。所以图 5 里作者和投票者分到的币不是一次到账,而是分比如 180 天线性释放;知识块在这期间被推翻或收窄,没释放的部分转给反驳者和投赞成票支持反驳的投票者。这样“提交经得起时间检验的知识”才比“提交能混过这一轮投票的知识”更赚钱。

同一个块被反复翻案,门槛逐次提高。 一个已经被推翻的块,可以再被一个“反驳的反驳”推翻回来,但每翻一次,押金和投票人数都翻倍,这和 Kleros 的上诉是同一个思路12。来回翻得越多,说明这个问题越有争议,状态也就越适合用一个置信度来表达,而不是“对 / 错”二选一。

到这里设想已经是一个完整的系统:有格式、有起点、有流程、有钱,也有翻案的路。它的骨架和 Proofgold、Bittensor、Kleros 都能一一对上。接下来换一个角度:这套规则在逻辑上有没有漏洞?

四、逻辑上的问题

下面七个问题按“从知识本身到人的行为”的顺序排列。前三个和激励无关,即使所有参与者都诚实也存在;后面几个是加入了钱以后才出现的。

问题一:根从哪来

“每条知识都必须引用别的知识”,推到底只有三种结局。 要么无穷地引用下去,要么转一圈引用回自己,要么停在某些不再引用别人的起点上。哲学里把这叫阿格里帕三难(也叫明希豪森三难)18。链上不允许环,也不可能无穷,所以只剩第三种:根块。

设想的核心规则因此需要改一个字。 “不能凭空冒出知识”在根块那里必然失效,图 3 左边那一列就是凭空出现的。数学里这没有问题:公理本来就是约定,Lean 和 Metamath 也是从公理出发的。物理世界麻烦得多:观测记录是根,但一份测量报告是不是真做过实验、数据有没有挑过,引用图里看不出来。最终还是落回投票,或者落回“谁有资格放根块”的治理问题。

所以严格地说,这条链保证的不是“知识不能凭空出现”,而是“除了根块,知识不能凭空出现”。整张图的可靠性,上限就是根块的可靠性。

问题二:引用对了,推理不一定对

引用检查只能确认“依赖关系存在”,确认不了“从依赖能推出结论”。 图 4 的格式检查会验证三条引用都存在、都已接受,但论证那一段自然语言写得对不对,机器在这一步完全不看。图 7 是一个具体的例子:把 √2 那条照抄一遍,换成 √4。

引用相同,一条对一条错 左边 kb:7f3a 证明 √2 不是有理数:p²=2q²,p 为偶数,记 p=2k,得 q²=2k²,q 为偶数,矛盾;Lean 里对应定理 irrational_sqrt_two。右边 kb:9e01 照抄成 √4 不是有理数:p²=4q²,p 为偶数,记 p=2k,得 q²=k²,再说 q 为偶数,这一步推不出来;√4=2 是有理数,Lean 里无法证明。两条引用完全相同。 kb:7f3a · 引用对,推理也对 kb:9e01 · 引用对,推理错 √2 不是有理数 490 B 引用kb:1b09 kb:5d2e kb:0c77 第 1 步p/q 最简,p² = 2q² 第 2 步p 为偶数,记 p = 2k 第 3 步q² = 2k²,q 为偶数,矛盾 Leanirrational_sqrt_two ✓ 格式检查通过 √4 不是有理数 490 B 引用kb:1b09 kb:5d2e kb:0c77 第 1 步p/q 最简,p² = 4q² 第 2 步p 为偶数,记 p = 2k 第 3 步q² = k²,q 为偶数,矛盾 Lean无法证明:√4 = 2 是有理数 格式检查通过 两条的引用一字不差,格式检查都能通过。错在右边第 3 步:q² = k² 推不出 q 是偶数。 Lean 内核会停在这一步;投票能不能拦住它,要看 21 个 agent 里有多少逐行读过。
图 7 · 引用全对的知识块,结论照样可以是错的;拦住它的只能是“谁去检查推理那一步”

1 KB 的上限让这件事更难。 √2 的论证三句话就写完了,大部分有意思的结论做不到。写不下的推理只能拆成更多中间知识块,每一块都要单独投票;或者省略步骤,留给投票者自己补。前者让投票次数成倍增加,后者让投票者需要补的东西越来越多。Lean 的做法是不限长度、但每一步都由机器检查,两者正好相反。

问题三:多数票不等于真

投票能逼近真相,靠的是一个有前提的定理。 孔多塞陪审团定理说:如果每个投票者答对的概率大于一半,而且彼此独立,那么人越多,多数票越可能正确,趋近于 119。设想默认的就是这个结论:agent 越多,越靠谱。

问题出在“独立”。 现在能用来当 agent 的大模型就那么几家,同一个底座模型的不同实例,会在同一类题上犯同一个错。为了看清这件事有多大影响,我们做了一个小模拟:每道题,每个底座模型答对的概率是 0.7;每个 agent 有 90% 的概率照抄自己底座模型的答案,10% 反着投。这样每个 agent 单独答对的概率都是 0.66,和独立的情形一样。结果画在图 8 里。

投票者越多,多数票越准吗 横轴是投票的 agent 数,从 1 到 101;纵轴是多数票答对的概率。互相独立的投票者从 0.66 涨到 0.999;来自 3 个底座模型的投票者停在 0.787 左右;来自同一个底座模型的投票者停在 0.70 左右。每个 agent 单独答对的概率都是 0.66。 多数票答对的概率 1.0 0.9 0.8 0.7 0.6 1 3 5 9 15 25 51 101 投票的 agent 数 互相独立 → 0.999 来自 3 个底座模型 → 0.787 来自同一个底座模型 → 0.70 每个 agent 单独答对的概率都是 0.66。
图 8 · 投票者彼此相关时,人数再多,多数票的准确率也只停在底座模型自己的水平附近

3 个底座模型的曲线停在 0.787,这个数可以直接算出来。 当 agent 足够多时,每个底座模型名下的 agent 会稳定地投出这个模型的答案,多数票就变成了“三个模型的多数”,而三个模型里至少两个答对的概率是 0.73+3×0.72×0.3=0.7840.7^3 + 3 \times 0.7^2 \times 0.3 = 0.784。只有一个底座模型时,上限就是它自己的 0.7。加 agent 只是在加票数,加不了独立的判断。

按“和多数一致”发奖,会进一步削弱独立性。 图 5 里投票者的钱来自“站在多数一边”。UMA 和 Kleros 都这样设计,背后的想法叫 Schelling 点:大家无法商量时,最容易不约而同选中的答案就是真相12。但对一个理性的投票者来说,最赚钱的策略是猜“别人会怎么投”,而不是自己去查。对“巴黎是不是法国首都”这类题,两者一致;对刚出现的、和主流看法相反的结论,两者恰好相反。幽门螺杆菌导致胃溃疡这个发现在 1980 年代初几乎没人相信,二十年后获得了诺贝尔奖20。在这样的规则下,早期投赞成票的人会一直被罚。

问题四:投票权落在谁手里

agent 可以零成本复制,所以票不能按“个”算。 一个人开一万个 agent 就能控制所有投票,这叫女巫攻击。区块链的通用解法是按质押的币加权:开再多的号,总票数也只等于质押的总量。Kleros 抽陪审员、Bittensor 汇总打分,都按质押加权1215。

按币加权,就会出现谁币多谁说了算。 UMA 的情况可以作为参照:据 Bloomberg 的分析(经 Outlook Money 转述),过去三年 Polymarket 的争议投票里,9 个钱包占了大约一半的票21。放到知识链上,一条结论是否成立,可能由几个大户的 agent 决定,而这几个大户可能恰好在相关的问题上有利益。

针对合谋的补丁已经有人做了,但补不全。 Bittensor 的 Yuma 共识会把明显高于“多数质押认可水平”的打分裁掉,专门对付验证者合谋抬高某个矿工15。Community Notes 要求不同立场的人都认可才算数13,但它的团队自己发表的研究也发现,最多 10.7% 的低质量笔记只要不到 10 个协同评分就能被推过门槛22。

问题五:奖励会把人引向哪里

按块发奖,就会有人把一条知识拆成十条。 图 5 里作者按“被接受的块数”分钱。把“水在一个标准大气压下沸点约 99.97 °C”拆成 100 kPa、101 kPa……各一条,每条都对,每条都领钱,知识却没有增加。按“被引用次数”发奖可以缓解,但会引出新的问题:几个账号互相引用,刷出一个引用环。

按票发奖,就会有人不读就投。 Steemit 是现成的教训:作者和点赞的人都能分奖池,最后超过 16% 的转账流向了疑似机器人的点赞账号,围绕它形成了专门出售投票的机器人生意23。知识链的投票者本来就是 agent,“不读就投”的成本更低:一个只看多数倾向、从不检查推理的 agent,在图 5 的规则下收益并不比认真检查的差,算力成本却低得多。

问题六:共识会变

物理世界的“共识”不是一次定下的。 图 3 的沸点就是例子:很多人记得的“水在一个标准大气压下 100 °C 沸腾”,在 1990 年的国际温标(ITS-90)下约为 99.974 °C,严格按热力学温度算又是约 99.984 °C24。同一个现象,换一个定义,数字就变了。牛顿力学也没有“被推翻”,而是被加上了适用范围。

推翻机制让修订可以发生,但它自己也是投票。 第三章的反驳块解决了“通过了就改不掉”的问题,这和科学本来的做法一致:结论随时准备被新证据推翻。但决定推翻与否的,仍然是问题三、问题四里那群彼此相关、按质押加权的投票者。多数票可以把错的旧块推翻,也可以把对的旧块推翻;幽门螺杆菌那样的少数派结论,在“翻案也靠投票”的规则下并不会更容易立住。

引用图越深,一次推翻牵动的块越多。 一个根块被收窄,所有直接或间接引用它的块都要复审,每一块都要重新投票、重新结算奖励。数学里很少发生这种事:一个定理一旦在 Lean 里证明,除非公理或内核本身出错,就不会失效。实证知识则不同,越是基础的观测和定义,被修订时波及的范围越大。复审的成本由谁出、复审期间下游的块还能不能被新块引用,都需要额外的规则。

问题七:比 Lean 更普适吗

“更普适”是对的,但它是用“保证变弱”换来的。 图 9 把两者和 Proofgold 放在一起比较。

Lean、Proofgold 和知识共识链
Lean + mathlibProofgold知识共识链(设想)
能放什么能写成形式语言的数学任何能用 1 KB 文字写清的东西
一条结论凭什么成立内核逐步检查,从公理推出质押加权的 agent 多数同意
谁能复核、要多久任何人,在自己机器上几秒到几分钟复核等于再投一次票
起点公理和内核每个理论自带公理公理、定义、观测记录
出错时只有公理或内核出错才会错任何一步都可能错,且可能被多数接受
结论会不会变证明过就不变根块修订后,下游都要重审
激励无,靠社区证明领赏金提交和投票都发币

Lean 的保证是“在这些公理和这个内核下必然成立,你可以自己查”;知识共识链的保证是“一批有质押的 agent 多数同意过”。

图 9 · 知识共识链放得下更多东西,但它对每条结论的保证,从“可以自己检查”降到了“多数人同意过”

两者回答的其实是不同的问题。 Lean 回答“这条结论是不是从这些前提必然推出”,这个问题对数学有确定的答案,所以能交给程序。知识共识链回答“这群参与者是否接受这条说法”,这个问题对任何领域都有答案,所以它更普适。前者的结论可以独立验证,后者的结论只能再问一次同一群人。说它“比 Lean 更普适”成立,说它“比 Lean 更可靠”或“能替代 Lean”则不成立。在数学这一部分,用投票代替检查器是严格的退步:同一条 √2,Lean 几秒就能给出确定答案,投票却要 30 小时,还可能把 √4 也放过去。

五、可以怎么改

七个问题里,前三个说的都是同一件事:投票被用在了它不擅长的地方。 对“从公理推出定理”这类有确定答案的问题,投票不如检查器;对“单位怎么定义”这类本来就是约定的问题,投票恰好合适;对“实验结果是什么”这类经验问题,投票只能当最后一道防线,前面还应该有数据和复现。按知识块的类型分开处理,设想的大部分问题都能缓解。图 10 是改过的流程。

按类型分三条路 新提交的知识块按 type 字段分三条路。数学块附 Lean 证明,任意节点跑内核检查,通过即接受、不投票。实证块附数据哈希和复现脚本,由不同底座的 agent 评审给出置信度,之后长期接受挑战。约定块(定义、单位)提出后由治理投票决定,按版本生效、旧版保留。 数学块 · type = theorem 实证块 · type = observation / claim 约定块 · type = definition / unit 新知识块 kb:… type = ? 附 Lean 证明 任意节点跑内核检查 通过即接受,不投票 附数据哈希、复现脚本 多底座 agent 评审 给置信度,长期可挑战 提出新定义 治理投票 按版本生效,旧版保留
图 10 · 按知识块的类型分开处理:能检查的交给检查器,本来就是约定的才交给投票

数学块交给检查器。 这就是 Proofgold 的做法:证明检查器写进共识规则,任何节点都能复算,不需要投票,也不需要“和多数一致”的奖励6。设想里“数学公式也放上去”的那部分,用 Lean 证明作为知识块的附件,检查器就是唯一的裁判。图 7 的 √4 在这一步就会被拦下。

实证块投票,但改三处。 第一,要求附上原始数据的哈希和复现脚本,评审的对象从“这句话对不对”变成“这份数据能不能支持这句话”。第二,投票者按底座模型分组,参照 Community Notes 的做法,要求不同组的 agent 都认可才算通过,减轻图 8 里的相关性。第三,结果不是“成立 / 不成立”,而是一个置信度,并且永远可以被挑战;投票者的奖励也和作者一样延后释放,并且按知识块最终站不站得住来结算,而不是按投票当时是否站在多数一边,这样“猜多数”就不再是最赚钱的策略。

约定块直接投票。 摄氏度怎么定义、标准大气压取多少,本来就是人为约定,投票决定是合适的。每次改动生成新版本,引用它的知识块显式写明引用的是哪个版本,这样约定的修订不必走推翻流程,下游也知道自己依赖的是哪一版。

作者的奖励按“被后来的知识块引用、且经受住挑战”来发。 把一条知识拆成十条不会多拿钱,因为没人会引用那些碎片;互相引用刷数的账号,在挑战期内一旦被发现,押金和奖励一起罚没。

这些改法并不新:每一条都来自第二章里某个已经在运行的项目。把它们组合进设想,代价是系统复杂了很多,而且“一个币、一套投票管所有知识”的简洁感没有了。

六、回到那条 490 字节的记录

现在可以回答开头的几个问题了。

这样的东西有人做过吗? 每个部件都有人做过,而且大多跑了很多年:Metamath 和 mathlib 做到了“知识必须引用”,Proofgold 把数学放上了链并按证明发奖,UMA 和 Kleros 用质押投票裁定现实世界的事,Bittensor 让机器互相打分领币。把它们组合成“agent 投票 + 强制引用 + 数学和物理混放 + 双向奖励”的,目前没有找到在运行的项目。

kb:7f3a 凭什么算“成立”? 在设想的规则下,凭的是 21 个 agent 里有 17 个、而且超过三分之二的质押投了赞成。它碰巧是对的,因为 √2 的证明大家都见过。换成 kb:9e01,同样的规则未必能拦住。

“必须引用”能挡住凭空的知识吗? 能挡住“没有引用”的提交,挡不住“引用了但推不出来”的提交,而且在根块那里这条规则本身就要让步。

它比 Lean 更普适吗? 是,范围更大。但它对每条结论给出的保证,从“你可以自己检查”变成了“多数人同意过”,在数学部分这是退步,在经验知识部分这是目前能做到的、并不算差的办法。

小结

  1. 设想的样子:账本层用 PoS 出块,知识层是一张引用图;知识块不超过 1 KB,必须引用已接受的知识块,由 agent 投票决定是否成立,作者和投票者按周期分增发的币,已接受的块随时可以被反驳块推翻。
  2. 同类项目:强制引用有 Metamath、mathlib、维基百科、纳米出版物;知识上链有 Proofgold、OriginTrail、DeSci Nodes;投票裁定有 Augur、UMA、Kleros、Community Notes;创作和评判都发奖励有 Steemit、ResearchHub、Bittensor。最接近的是 Proofgold 和 Bittensor,完整的组合没有找到。
  3. 根从哪来:强制引用推到底必须有根块,所以准确的说法是“除了根块,知识不能凭空出现”,整张图不会比根块更可靠。
  4. 引用对,推理不一定对:格式检查只看依赖关系,√4 照抄 √2 的引用一样能通过;1 KB 的上限又让推理很难写全。
  5. 多数票不等于真:agent 来自少数几个底座模型,彼此不独立;模拟里 3 个底座模型时,人再多准确率也停在 0.787。按“和多数一致”发奖还会鼓励猜多数。
  6. 投票权和奖励:防女巫只能按质押加权,结果容易集中到少数大户;按块发奖会拆块刷量,按票发奖会不读就投,Steemit 已经演示过。
  7. 共识会变:沸点在不同温标下是 100、99.974、99.984 °C。可以用反驳块推翻或收窄已接受的块,旧块只改状态、下游标为待复审,奖励延后释放、被推翻时转给反驳者;但翻案本身仍是投票,引用图越深,一次推翻牵动越多。
  8. 和 Lean 比:更普适,但保证从“可以自己检查”变成“多数同意过”。按类型分流(数学交给检查器、实证投票但附数据并延后发奖、约定直接投票)可以保留普适性,同时把投票限制在它适合的地方。

参考资料

Footnotes

  1. mathlib4:Mathlib/NumberTheory/Real/Irrational.leanGitHub · 2026-10-21github.com ↗第 141 行:theorem irrational_sqrt_two : Irrational (√2) := by simpa using Nat.prime_two.irrational_sqrt。文中引用的是提交 6ea1739。https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/NumberTheory/Real/Irrational.lean ↩

  2. Mathlib statisticsLean community · 2026-10-22leanprover-community.github.io ↗2026-10-22 抓取:约 139,557 个定义、291,055 条定理、772 位贡献者。https://leanprover-community.github.io/mathlib_stats.html ↩

  3. MetamathWikipediaen.wikipedia.org ↗set.mm 从 1992 年开始积累,基于一阶逻辑和 ZFC;每条定理只能由公理和前面的定理推出,网页上列出它依赖哪些公理、被哪些定理引用。https://en.wikipedia.org/wiki/Metamath ↩

  4. Wikipedia: No original researchWikipediaen.wikipedia.org ↗原创研究指“找不到可靠的已发表来源的材料”,也包括把来源拼起来推出来源本身没说的结论;举证责任在添加内容的人。https://en.wikipedia.org/wiki/Wikipedia:No_original_research ↩

  5. Nanopublications: A Growing Resource of Provenance-Centric Scientific Linked DataTobias Kuhn 等 · arXiv · 2018-09-18arxiv.org ↗一条纳米出版物 = 断言 + 出处 + 发布信息三个 RDF 命名图;已超过 1000 万条,多数来自生命科学。https://arxiv.org/abs/1809.06532 ↩

  6. Proofgold: Blockchain for Formal MethodsChad E. Brown, Cezary Kaliszyk, Thibault Gauthier, Josef Urban · FMBC 2022 · 2022drops.dagstuhl.de ↗高阶逻辑证明检查器是共识的一部分;PoS 加烧 Litecoin;命题有主人,交出证明就能领走赏金。https://drops.dagstuhl.de/opus/volltexte/2022/17185/ ↩ ↩2

  7. Exploring Formal Math on the Blockchain: An Explorer for ProofgoldarXiv(CICM 2025) · 2025-09arxiv.org ↗理论由原始常量、类型和公理组成,用 Merkle 根当 256 位标识;前 5000 个区块自动给伪随机命题挂赏金。https://arxiv.org/abs/2509.08267 ↩

  8. OriginTrail:DKG key conceptsOriginTrail · 2026-10-22docs.origintrail.io ↗Knowledge Asset 带可验证的出处和发布者;TRAC 总量 5 亿,发布知识要付 TRAC,跑节点要质押 TRAC;不对内容真假做裁决。https://docs.origintrail.io/key-concepts/dkg-key-concepts ↩

  9. DeSci Nodes:dPIDDeSci Labs · 2026-10-22docs.desci.com ↗研究对象和其中每个组件都有持久标识,可按版本引用;注册合约目前由 DeSci Labs 保留管理权限。https://docs.desci.com/learn/open-state-repository/pid ↩

  10. What Is Augur?CoinDeskcoindesk.com ↗报告者押 REP 报结果;有争议就加倍押金再报;极端时整个市场宇宙分叉,REP 持有人自己选去哪个分支。https://www.coindesk.com/learn/augur ↩

  11. UMA:DVM 2.0UMA · 2026-10-22docs.uma.xyz ↗代币持有人 commit-reveal 投票,按 Schelling 点设计;投错或缺席每次罚质押的 0.1%。https://docs.uma.xyz/using-uma/voting-walkthrough/dvm-2.0 ↩ ↩2

  12. Cryptoeconomics in Klerosethresear.ch · 2018ethresear.ch ↗质押 PNK 抽签当陪审员;投在少数一边的陪审员被罚 PNK,分给多数一边;每上诉一次陪审团大约翻倍。https://ethresear.ch/t/cryptoeconomics-in-kleros/1401 ↩ ↩2 ↩3 ↩4 ↩5

  13. twitter/communitynotesGitHubgithub.com ↗开源的评分算法:矩阵分解 r̂ = μ + i_u + i_n + f_u·f_n,用扣掉立场因子后的笔记截距 i_n 判断是否“有帮助”。https://github.com/twitter/communitynotes ↩ ↩2

  14. Do science, earn crypto: Coinbase CEO’s other startup sees record price rallyBlockworksblockworks.co ↗ResearchCoin 上线时每收到一个赞发 1 RSC,每周 100 万 RSC 按赞分配并逐步减半。https://blockworks.co/news/brian-armstrong-tokens-for-science ↩

  15. Bittensor:Yuma ConsensusBittensor · 2026-10-22docs.learnbittensor.org ↗验证者给矿工打权重,按质押加权汇总;高出“κ 比例质押所支持的权重”的部分被裁掉,针对的就是验证者合谋抬高某些矿工。https://docs.learnbittensor.org/learn/yuma-consensus ↩ ↩2 ↩3

  16. Primecoin: The Cryptocurrency Whose Mining Is Actually UsefulBitcoin Magazine · 2013-07bitcoinmagazine.com ↗挖矿就是找 Cunningham 素数链,链的起点必须能被区块哈希整除,防止预先算好。https://bitcoinmagazine.com/technical/primecoin-the-cryptocurrency-whose-mining-is-actually-useful-1373298534 ↩

  17. Grokipedia launches with 885k AI-written entries; critics flag biasStraight Arrow News · 2025-10-28san.com ↗https://san.com/cc/grokipedia-launches-with-885k-ai-written-entries-critics-flag-bias/ ↩

  18. Münchhausen trilemmaWikipediaen.wikipedia.org ↗要求每个命题都给出理由,最后只能落到无穷后退、循环论证或不再论证的起点三者之一。https://en.wikipedia.org/wiki/M%C3%BCnchhausen_trilemma ↩

  19. Condorcet's jury theoremWikipediaen.wikipedia.org ↗前提是投票者相互独立、每人答对概率大于 1/2;满足时人越多,多数票越可能正确。https://en.wikipedia.org/wiki/Condorcet%27s_jury_theorem ↩

  20. The Nobel Prize in Physiology or Medicine 2005NobelPrize.orgnobelprize.org ↗Barry Marshall 和 Robin Warren 因发现幽门螺杆菌及其在胃炎、消化性溃疡中的作用获奖;这一发现最初不被主流接受。https://www.nobelprize.org/prizes/medicine/2005/summary/ ↩

  21. How Nine Crypto Wallets Influence Billion-Dollar Polymarket DisputesOutlook Money · 2026-05-29outlookmoney.com ↗转述 Bloomberg(付费墙)的分析:过去三年 Polymarket 争议投票里,9 个钱包占了约一半的 UMA 票。数字是二手转述。https://www.outlookmoney.com/invest/how-nine-crypto-wallets-influence-billion-dollar-polymarket-disputes ↩

  22. Gaming Consensus: Coordinated Manipulation in Crowdsourced Fact-CheckingNikil Roashan Selvam, Jay Baxter, Keith Coleman 等 · arXiv · 2026-07-02arxiv.org ↗用生产数据回放:最多 10.7% 的低质量笔记只要不到 10 个协同评分就能被推过共识门槛。https://arxiv.org/abs/2607.01824 ↩

  23. Incentivized Blockchain-based Social Media Platforms: A Case Study of SteemitChao Li, Balaji Palanisamy · ACM WebSci 2019 · 2019-04-15arxiv.org ↗Steemit 中超过 16% 的转账流向疑似机器人的策展账号,背后有成体系的机器人供应网络。https://arxiv.org/abs/1904.07310 ↩

  24. IAPWS FAQ:What is the boiling point of water?IAPWSiapws.org ↗VSMOW 水在一个标准大气压下:按 ITS-90 约 99.974 °C;严格按热力学温度约 99.984 °C。https://www.iapws.org/faq/boil.html ↩