Explore a 16-minute video presentation from the PLDI 2023 conference on type-checking Conflict-Free Replicated Data Types (CRDTs) convergence. Delve into the Propel programming language, which features a type system designed to capture and verify the algebraic properties essential for correct CRDT implementation. Learn how Propel's innovative approach uses sum types for case analysis and algebraic properties in function types to enable induction, allowing it to reason about properties through rewrite rules and derive expression equality. Discover how this method compares to state-of-the-art verification tools and its effectiveness in automatically deducing properties for common CRDT implementations found in open-source libraries. Gain insights into the challenges of ensuring CRDT consistency and the potential of type-based verification in addressing these issues.
Overview
Syllabus
[PLDI'23] Type-Checking CRDT Convergence
Taught by
ACM SIGPLAN