根协议——顶层该说什么
问题(简述)
safe-recursion-theorem 陈述了一组假设;但人类在顶层实际要下达什么指令,才能让下面的 agent 递归展开成一个庞大的任务?如今的做法下达的是任务——而定理的每一条假设都被违反了:spec 是散文而非可执行检查,子任务给自己打分,预算不递减,失败被悄悄吸收。展开必须靠构造实现,而不是靠祈祷。
你下达的不是任务——而是一份自我复制的宪法
定理的假设必须在每一层都成立,所以顶层指令本身必须携带能在下一层重新生成自己的机制。这正是 Kleene 递归定理 的 quine 结构——一个携带自身源码的程序:协议作为数据向下传递。 根指令 = 一份精简、守恒的宪法 C,加上四元组(任务 T、可执行验收 spec S、预算 B、置信度配额 α)。注意容差也随之搭载:δ 隐含在 S 之中(检查集合的严格程度就是 δ 邻域——operationalizing-tolerances),而α 是显式的,因为它必须像预算一样被核算。
宪法 C(五条)
-
SOLVE-or-SPLIT(求解或拆分)。 如果能在预算
B内完成任务T,并通过S验证,就直接做;连同证据(检查结果)一起提交产出物。(叶节点可靠性) -
SPLIT 是一个四部分的产物。 一次拆分必须产出:(a) 子任务的可执行验收 spec ——由父节点在子任务存在之前就写好(先写测试),且任何 agent 都不能撰写将来评判自己的那份 spec(权力分立——反 Goodhart 条款);(b) 一份重组方案;(c) 一份拆分证书:论证 + 重组
S;(d) 预算 ,每个都严格小于B,以及置信度配额 ,满足 加上拆分门自身的α≤ 父节点的α——没有这道记账,定理的1−Σα保证就会随着树的增长而蒸发。这份四部分方案在任何子任务被生成之前,必须先通过它自己的门。(方案本身就是产物;良基测度;并集界保持有限) -
把宪法向下传递。 每个子任务收到同一份
C,外加 。递归由此自动展开。(假设在每一层都成立) -
每一步行动都要申报航向。 每一步都必须说明它打算减少哪个残差、减少多少;说不出自己在减少什么的一步,不是一步,而是游荡。这让
δ在单步粒度上变得可观测(gate-deviation-is-observable-delta)。(可观测偏差) -
大声地失败。 预算耗尽,或没有任何拆分能降低测度 → 把冲突连同分析一起向上传播;绝不悄悄吸收失败。冲突是回跳与不可行子句学习的燃料——而当失败是结构性的(在允许范围内没有任何粒度能满足 spec),向上传递的就是一份可行性割集加一个价格,迫使上级重新配平。(冲突驱动的收敛)
-
容差纪律。 落在门的 δ 之内的偏差就通过——完美从来不是标准;落在 δ 之外的是冲突,不是无限重试。修复循环盯着残差比 (operationalizing-tolerances):连续两轮不收缩 → 停止修复,上报冲突。还有一条可行性下限:一个节点最多只能做到
ε/(1−k)这个球(inexact-contraction),所以拆分门必须拒绝任何比这个下限更紧的子 spec——要求比下限更高的精度是一个不可行的 spec,是父节点的错误,不是子节点的。(局部可靠性精确到 (δ, α);收缩系数 k<1;不提不可能的要求)
顶层全部的杠杆:S_root、C,以及两项配额
根部的人类作者撰写宪法、根验收 spec,以及两项配额(B、α)。整棵树的质量上限就是 S_root 的质量——你只能得到你能检查的东西——而置信度上限就是你为 α 预留的额度——你只能得到你花钱买来的确定性。有一条检查:S_root 自身也必须尊重可行性下限——一个比可达到的 ε/(1−k) 球更紧的根 spec,会在整棵树开始之前就注定它的失败。除此之外的一切都是委托。
诚实的缺口
为子任务撰写可执行 spec,本身就是最容易出错的一步——隐性知识恰恰集中在这里(tacit-spec-as-spec-compression)。所以拆分门理应拿到验证预算中最大的一份,而叶节点的停止规则要与学习者耦合:持续拆分,直到每个子任务的 spec 能从你注入的上下文中学会为止(见 coupling-to-the-learner)。
收尾
顶层不是在指挥这棵树;它是在播下一份宪法,而这份宪法的不动点,就是这棵树本身。