We demonstrate sufficiency of events-based synchronisation for solving deterministic fault-tolerant consensus in asynchrony. Main result is an algorithm that terminates with valid vector agreement, hence operates with safety, liveness, and tolerance to one crash. Reconciling with the FLP impossibility result, we identified: i) existence of two types of agreements: data-independent and data-dependent; and ii) dependence of FLP theorem correctness on three implicit assumptions. Consensus impossibility with data-dependent agreement is contingent on two of them. The theorem-stated impossibility with every agreement type hinges entirely on the third. We provide experimental results showing that the third assumption has no evidence in support.
翻译:我们证明了基于事件的同步机制对于在异步环境中解决确定性容错共识问题是充分的。主要成果是一个能够以有效向量协议终止的算法,从而在保证安全性、活性及容忍单节点崩溃的条件下运行。通过与FLP不可能性定理的调和分析,我们识别出:i) 存在两种协议类型:数据无关型与数据依赖型;ii) FLP定理的正确性依赖于三个隐含假设。数据依赖型协议下的共识不可能性仅与其中两个假设相关。而定理所述的所有协议类型下的不可能性完全取决于第三个假设。我们提供的实验结果表明,第三个假设缺乏支持性证据。