形式陈述
FLP 定理:在确定性、完全异步、可靠消息传递系统中,只要允许至多一个进程 crash-stop,就不存在同时满足一致性、有效性并保证每个公平的 可容许执行 都终止的二元共识协议。证明从双价初始配置出发,构造可无限延迟决定的公平执行。
直觉
异步下,协议不能区分进程已经崩溃还是关键消息尚未到达。调度者可持续选择仍保留两种决定可能性的事件,使系统不被迫决定。
例子与边界
定理不否定安全的共识协议,也不否定在无故障执行中终止;它否定的是规定模型中对所有允许执行的确定性终止保证。随机化、故障检测器或部分同步会改变假设。
推论与应用
FLP 是分布式可计算性的边界基准。引用时必须同时写明异步、确定性、可靠消息、一个崩溃及终止量词,不能简化成“分布式共识不可能”。
参考资料
- Nancy A. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996, Chs. 1–25。
- Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson, “Impossibility of Distributed Consensus with One Faulty Process,” Journal of the ACM 32(2), 1985, Full paper。