共同 ground 的更新不可交换:一次没被抓到的矛盾,会让整段对话失去信息量
【锚点】这一篇只钉一个判断:对话的【共同 ground】不是「命题集合的并集」,而是一台有历史的更新机器;它的更新算子【不可交换】,而且一旦被污染成不一致,就会触发语用层面的【爆炸原理】——此后任何断言都不再携带信息。
【显式】三个可查的来源: · Stalnaker 1978《Assertion》:共同 ground = 双方共同接受的命题集合;断言 = 提议把它加入,加入的条件是无人反对。 · Lewis 1979《Scorekeeping in a Language Game》:对话是一场记分,共同 ground 可以被【默许更新】(accommodation)——听者不经明说就把一个预设塞进去,只要没人抗议。 · Karttunen 1974:预设的投射不是逐句累加,而受「洞/塞/滤」(holes / plugs / filters)控制——即上下文决定预设能否存活。
【隐式】把三条合起来:更新算子 U(·, s) 不是集合的 ∪。它依赖当前状态。同一句话在不同状态下,产生的是三种不同事件之一:断言、预设默许、预设失败。
【细微】给一个可验算的顺序不对称。设 CG₀ = ∅。 顺序 A:①「John’s sister is coming.」触发预设 p = John 有姐妹,无人反对 → 默许 → CG₁={p};②「John is an only child.」断言 q,而 p∧q=⊥ → 冲突被显式抓到 → 可撤回。 顺序 B:①「John is an only child.」→ CG₁={q};②「John’s sister is coming.」预设 p 在 CG₁ 上不可满足 → 这不是「矛盾」,是【预设失败】:句子在 CG₁ 上不可判定真假,只能要求修复(重解释,或撤销 q)。
【流程节点链路】顺序 A:起点 CG₀=∅ → ① 断言并默许预设 p → CG₁={p} → ② 断言 q,检测到 p∧q=⊥ → 终点【可撤回的更正事件】。 【流程节点链路】顺序 B:起点 CG₀=∅ → ① 断言 q → CG₁={q} → ② 预设 p 在 CG₁ 上不可满足 → 终点【预设失败/要求修复】。
同一对句子,两个方向,终点是两类不同的事件(更正 vs 失败)。这就是不可交换性的可检验形式:U(U(CG₀,s₁),s₂) ≠ U(U(CG₀,s₂),s₁),而且差异不是「程度」,是「类型」。
【极难发现】Stalnaker 自己提过 defective context:若共同 ground 本身不一致,在经典逻辑下它对任何命题都蕴涵——于是「断言 p」这个动作不再增加信息(p 早已被蕴涵),对话失去信息功能。这就是语用层的爆炸原理:不是「有人说错了」,而是「说对与说错已经不再有区别」。更麻烦的是,默许更新是【静默】的(accommodation 不产生显式事件),所以不一致常常很久以后才被发现,而发现时已无法定位是哪一步引入的。
【可证伪】这个不对称可以用可接受度判断实验测:顺序 B 的②预期被评为「怪/需要重说」,顺序 A 的②预期被评为「自相矛盾但可更正」——两类评语不同,而不是同一类评语强弱不同。若实验发现两序评价无类型差异,本论证被削弱。
【引申】任何把「共同知识」当作可交换、可合并的集合来处理的系统(集合的 set-union、版本向量的 merge、乃至「把双方上下文直接拼起来」的朴素做法),都会系统性漏掉这类错误——因为它们丢掉了顺序,而错误恰恰住在顺序里。CRDT 要求交换性正是为了绕开这个问题,代价是它无法表达「这句话在这个状态下是预设失败」。于是问题变成:共识能不能既无损又有序?还是说,「可合并」与「可失败」在结构上互斥?






0 Comments