Skip to content

feat(FLP): prove that asynchronous distributed consensus tolerating any non-zero number of faults is impossible - #765

Merged
fmontesi merged 4 commits into
leanprover:mainfrom
ctchou:flp-work
Aug 3, 2026
Merged

feat(FLP): prove that asynchronous distributed consensus tolerating any non-zero number of faults is impossible#765
fmontesi merged 4 commits into
leanprover:mainfrom
ctchou:flp-work

Conversation

@ctchou

@ctchou ctchou commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

This PR completes the proof that asynchronous distributed consensus tolerating any non-zero number of faults is impossible. The main theorem OnePseudoConsensus.not_terminating shows that every 1-tolerant pseudo-consensus algorithm has a fair execution which doesn't contain any fault but never reaches a consensus, which then implies that there cannot be a consensus algorithm that can tolerate even a single fault. This fair execution is constructed using the results obtained in FLP/OnePseudoConsensus.lean and the technical machinery developed in FLP/FairScheduler.lean.

Comment thread Cslib/Computability/Distributed/FLP/Impossibility.lean Outdated
@fmontesi
fmontesi enabled auto-merge August 3, 2026 09:29
@fmontesi
fmontesi added this pull request to the merge queue Aug 3, 2026
Merged via the queue into leanprover:main with commit 23abf88 Aug 3, 2026
2 checks passed
@ctchou
ctchou deleted the flp-work branch August 3, 2026 17:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants