A machine-checked proof of correctness of Pastry. (Une preuve certifiée par la machine de la correction du protocole Pastry)
نویسنده
چکیده
A distributed hash table (DHT) is a peer-to-peer network that o↵ers the function of a classic hash table, but where di↵erent key-value pairs are stored at di↵erent nodes on the network. Like a classic hash table, the main function provided by a DHT is key lookup, which retrieves the value stored at a given key. Examples of DHT protocols include Chord, Pastry, Kademlia and Tapestry. Such DHT protocols certain correctness and performance guarantees, but formal verification typically discovers border cases that violate those guarantees. In his PhD thesis, Tianxiang Lu reported correctness problems in published versions of Pastry and developed a model called LuPastry, for which he provided a partial proof of correct delivery of lookup messages assuming no node failure, mechanized in the TLA+ Proof System. In analyzing Lu’s proof, I discovered that it contained unproven assumptions, and found counterexamples to several of these assumptions. The contribution of this thesis is threefold. First, I present LuPastry+, a revised TLA+ specification of LuPastry. Aside from needed bug fixes, LuPastry+ contains new definitions that make the specification more modular and significantly improve proof automation. Second, I present a complete TLA+ proof of correct delivery for LuPastry+. Third, I prove that the final step of the node join process of LuPastry/LuPastry+ is not necessary to achieve consistency. In particular, I develop a new specification with a simpler node join process, which I denote by Simplified LuPastry+, and prove correct delivery of lookup messages for this new specification. The proof of correctness of Simplified LuPastry+ is written by reusing the proof for LuPastry+, which represents a success story in proof reuse, especially for proofs of this size. Each of the two proofs amounts to over 32,000 proof steps; to my knowledge, they are currently the largest proofs written in the TLA+ language, and—together with Lu’s proof—the only examples of applying full theorem proving for the verification of DHT protocols.
منابع مشابه
فایل کامل مجلّه مطالعات زبان فرانسه دو فصلنامه علمی پژوهشی زبان فرانسه دانشکده زبانهای خارجی دانشگاه اصفهان
Tâ ÇÉÅ wx W|xâ Revue des Études de la Langue Française Revue semestrielle de la Faculté des Langues Étrangères de l'Université d'Ispahan Cinquième année, N° 8 Printemps-Eté 2013, ISSN 2008- 6571 ISSN électronique 2322-469X Cette revue est indexée dans: Ulrichsweb: global serials directory http://ulrichsweb.serialssolutions.com Doaj: Directory of Open Access Journals http://www.doaj.org ...
متن کاملA formal proof of a protocol for communications over faulty channels using the Larch Prover
This paper describes, by means of an example, how one may mechanically verify concurrent programs on the automated theorem prover Lp. It presents a fully computer checked proof of a protocol for communications over faulty channels. The chosen specii-cation environment is Unity, since the proposed model can be fruitfully applied to a wide variety of problems and modiied or extended for special p...
متن کاملVérification De Propriétés Quantitatives Et Fonctionnelles Analysis and Verification for the Reliability of Embedded Systems Lot 4.2 Technologie De Modélisation
Probabilités Application d'une méthode de preuve probabiliste pour prouver la terminaison en temps moyen fini du protocole CSMA/CA 802.11b Description : Nous présentons une méthode de preuve qui permet de montrer la terminaison en temps moyen fini d'un algorithme probabiliste et distribué utilisé par le protocole WI-FI 802.11b. Averroes – Vérification de propriétés quantitatives et fonctionnelles
متن کاملA Rare Case report of Neuromuscular Complications of Pediatric Lymphoma
Un enfant de 12 ans atteint d'un lymphome mediastinal a ete hospitalise pour des manifestations neurologiques comportant: facies myasthenique, douleurs radiculaires intenses, amyotrophie et diminution de la force musculaire au niveau des membres. A l'examen du liquide cephalo-rachidien, ii existait une meningite neoplasique. Celle-ci a ete traitee par le methotraxate intra-rachidien parall...
متن کاملUn langage de contexte de preuve pour la validation formelle de modèles logiciels
Résumé. Pour améliorer les pratiques dans le domaine de la validation formelle de modèles, nous explorons un axe de recherche dans lequel nous formalisons la notion de « contexte de preuve » intégrant la description du comportement de l’environnement interagissant avec le modèle et les propriétés à vérifier dans ce contexte. L'article présente le langage CDL (Context Description Language) propo...
متن کامل