Igloo: soundly linking compositional refinement and separation logic for distributed system verification
Lighthouse projects like CompCert, seL4, IronFleet, and DeepSpec have demonstrated that full system verification is feasible by establishing a refinement between an abstract system specification and an executable implementation. Existing approaches however impose severe restrictions on the abstract...
Uložené v:
| Vydané v: | Proceedings of ACM on programming languages Ročník 4; číslo OOPSLA; s. 1 - 31 |
|---|---|
| Hlavní autori: | , , , , , , |
| Médium: | Journal Article |
| Jazyk: | English |
| Vydavateľské údaje: |
New York, NY, USA
ACM
13.11.2020
|
| Predmet: | |
| ISSN: | 2475-1421, 2475-1421 |
| On-line prístup: | Získať plný text |
| Tagy: |
Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
|
| Abstract | Lighthouse projects like CompCert, seL4, IronFleet, and DeepSpec have demonstrated that full system verification is feasible by establishing a refinement between an abstract system specification and an executable implementation. Existing approaches however impose severe restrictions on the abstract system specifications due to their limited expressiveness or versatility, or on the executable code due to their use of suboptimal code extraction or inexpressive program logics. We propose a novel methodology that combines the compositional refinement of event-based models of distributed systems with the verification of full-fledged program code using expressive separation logics, which support features of realistic programming languages like heap data structures and concurrency. Our main technical contribution is a formal framework that soundly relates event-based system models to program specifications in separation logics. This enables protocol development tools to soundly interoperate with program verifiers to establish a refinement between the model and the code. We formalized our framework, Igloo, in Isabelle/HOL. We report on three case studies, a leader election protocol, a replication protocol, and a security protocol, for which we refine formal requirements into program specifications that we implement in Java and Python and prove correct using the VeriFast and Nagini tools. |
|---|---|
| AbstractList | Lighthouse projects like CompCert, seL4, IronFleet, and DeepSpec have demonstrated that full system verification is feasible by establishing a refinement between an abstract system specification and an executable implementation. Existing approaches however impose severe restrictions on the abstract system specifications due to their limited expressiveness or versatility, or on the executable code due to their use of suboptimal code extraction or inexpressive program logics. We propose a novel methodology that combines the compositional refinement of event-based models of distributed systems with the verification of full-fledged program code using expressive separation logics, which support features of realistic programming languages like heap data structures and concurrency. Our main technical contribution is a formal framework that soundly relates event-based system models to program specifications in separation logics. This enables protocol development tools to soundly interoperate with program verifiers to establish a refinement between the model and the code. We formalized our framework, Igloo, in Isabelle/HOL. We report on three case studies, a leader election protocol, a replication protocol, and a security protocol, for which we refine formal requirements into program specifications that we implement in Java and Python and prove correct using the VeriFast and Nagini tools. |
| ArticleNumber | 152 |
| Author | Sprenger, Christoph Eilers, Marco Müller, Peter Clochard, Martin Klenze, Tobias Wolf, Felix A. Basin, David |
| Author_xml | – sequence: 1 givenname: Christoph surname: Sprenger fullname: Sprenger, Christoph email: christoph.sprenger@inf.ethz.ch organization: ETH Zurich, Switzerland – sequence: 2 givenname: Tobias surname: Klenze fullname: Klenze, Tobias email: tobias.klenze@inf.ethz.ch organization: ETH Zurich, Switzerland – sequence: 3 givenname: Marco surname: Eilers fullname: Eilers, Marco email: marco.eilers@inf.ethz.ch organization: ETH Zurich, Switzerland – sequence: 4 givenname: Felix A. surname: Wolf fullname: Wolf, Felix A. email: felix.wolf@inf.ethz.ch organization: ETH Zurich, Switzerland – sequence: 5 givenname: Peter surname: Müller fullname: Müller, Peter email: peter.mueller@inf.ethz.ch organization: ETH Zurich, Switzerland – sequence: 6 givenname: Martin surname: Clochard fullname: Clochard, Martin email: martin.clochard@inf.ethz.ch organization: ETH Zurich, Switzerland – sequence: 7 givenname: David surname: Basin fullname: Basin, David email: basin@inf.ethz.ch organization: ETH Zurich, Switzerland |
| BookMark | eNpt0MtLAzEQBvAgFay1ePeUm6fVJJt9xJsUHwXBi56X2exsjWaTkqRC_3v7UkQ8zcD3Yxi-UzJy3iEh55xdcS6L61yKWgh2RMZCVkXGpeCjX_sJmcb4zhjjKpd1rsbkbb6w3t_Q6Feus2tqjfswbkG1H5Y-mmS8A0sD9sbhgC5RcB2NuIQA24xavzCa9j7QzsQUTLtKuAHrmHCgnxhMb_ROnpHjHmzE6WFOyOv93cvsMXt6fpjPbp8yEFWVMoWgOauqupBStbKFPtcdU8hAKqbLvq1ZrSoQRVlWWLBWACohe4HQ1ViXLJ-QbH9XBx_j5vFGm7T7IAUwtuGs2TbVHJra-Ms_fhnMAGH9j7zYS9DDD_oOvwCU63Pn |
| CitedBy_id | crossref_primary_10_3233_JCS_220021 crossref_primary_10_1145_3485512 crossref_primary_10_14778_3718057_3718065 crossref_primary_10_1145_3571220 crossref_primary_10_1145_3494517 crossref_primary_10_1145_3632851 |
| Cites_doi | 10.1145/3158116 10.1007/978-3-662-54434-1_5 10.1145/1629575.1629596 10.1007/978-3-642-15260-3 10.1145/2854065.2854081 10.1017/CBO9781139195881 10.1007/978-3-642-20398-5_4 10.1007/978-3-642-36742-7_15 10.1007/978-3-642-28891-3_2 10.1145/3371119 10.1007/978-3-319-89884-1_22 10.1109/LICS.2002.1029817 10.1145/2837614.2837650 10.5281/zenodo.4039826 10.1007/3-540-45949-9 10.1145/2837614.2837622 10.1006/inco.1995.1134 10.1109/CSFW.1997.596782 10.1007/978-3-030-55754-6_2 10.1145/3110261 10.1007/978-3-319-67080-5 10.3233/JCS-16814 10.1007/978-3-642-00590-9_27 10.1145/2984043.2998388 10.1007/978-3-642-25271-6_7 10.1007/978-3-319-96145-3_33 10.1007/978-3-642-17511-4_20 10.1007/978-3-540-71999-1 10.1007/978-3-540-45213-3_4 10.1016/0304-3975(91)90224-P 10.1145/2737924.2737958 10.1007/978-3-540-78800-3_24 10.1145/1040305.1040326 10.1007/978-3-030-34968-4_22 10.1145/359104.359108 10.1145/3293880.3294106 10.1145/1111037.1111042 10.1145/177492.177726 10.1007/978-3-030-44914-8_16 10.1007/978-3-642-39799-8_54 10.1007/s10817-018-9457-5 10.1007/978-3-662-46669-8_7 10.1145/2815400.2815428 10.1109/TIT.1983.1056650 10.1007/978-3-662-49122-5_2 10.1007/978-3-642-11294-2_2 10.1145/2837614.2837655 |
| ContentType | Journal Article |
| Copyright | Owner/Author |
| Copyright_xml | – notice: Owner/Author |
| DBID | AAYXX CITATION |
| DOI | 10.1145/3428220 |
| DatabaseName | CrossRef |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 2475-1421 |
| EndPage | 31 |
| ExternalDocumentID | 10_1145_3428220 3428220 |
| GroupedDBID | AAKMM AAYFX ACM ADPZR AIKLT ALMA_UNASSIGNED_HOLDINGS GUFHI LHSKQ M~E OK1 ROL AAYXX AEFXT AEJOY AKRVB CITATION |
| ID | FETCH-LOGICAL-a277t-9eac107785449b4baf3cd09e0a490c6fb80897a25667e50b2ae924f2ead8e8603 |
| ISICitedReferencesCount | 17 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000685203900029&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 2475-1421 |
| IngestDate | Tue Nov 18 21:01:40 EST 2025 Sat Nov 29 07:49:09 EST 2025 Fri Feb 21 01:11:52 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | OOPSLA |
| Keywords | higher-order logic security protocols leader election fault-tolerance tool interoperability separation logic compositional refinement distributed systems end-to-end verification |
| Language | English |
| License | This work is licensed under a Creative Commons Attribution International 4.0 License. |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-a277t-9eac107785449b4baf3cd09e0a490c6fb80897a25667e50b2ae924f2ead8e8603 |
| OpenAccessLink | https://dl.acm.org/doi/10.1145/3428220 |
| PageCount | 31 |
| ParticipantIDs | crossref_citationtrail_10_1145_3428220 crossref_primary_10_1145_3428220 acm_primary_3428220 |
| PublicationCentury | 2000 |
| PublicationDate | 2020-11-13 |
| PublicationDateYYYYMMDD | 2020-11-13 |
| PublicationDate_xml | – month: 11 year: 2020 text: 2020-11-13 day: 13 |
| PublicationDecade | 2020 |
| PublicationPlace | New York, NY, USA |
| PublicationPlace_xml | – name: New York, NY, USA |
| PublicationTitle | Proceedings of ACM on programming languages |
| PublicationTitleAbbrev | ACM PACMPL |
| PublicationYear | 2020 |
| Publisher | ACM |
| Publisher_xml | – name: ACM |
| References | Marco Eilers and Peter Müller. 2018. Nagini: A Static Verifier for Python. In Computer Aided Verification-30th International Conference, CAV 2018, Held as Part of the Federated Logic Conference, FloC 2018, Oxford, UK, July 14-17, 2018, Proceedings, Part I (Lecture Notes in Computer Science, Vol. 10981 ), Hana Chockler and Georg Weissenbacher (Eds.). Springer, 596-603. https://doi.org/10.1007/978-3-319-96145-3_33 10.1007/978-3-319-96145-3_33 Xavier Leroy. 2006. Formal certification of a compiler back-end or: programming a compiler with a proof assistant. In Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2006, Charleston, South Carolina, USA, January 11-13, 2006, J. Gregory Morrisett and Simon L. Peyton Jones (Eds.). ACM, 42-54. https://doi.org/10.1145/1111037.1111042 10.1145/1111037.1111042 Wytse Oortwijn and Marieke Huisman. 2019. Practical Abstractions for Automated Verification of Message Passing Concurrency. In Integrated Formal Methods-15th International Conference, IFM 2019, Bergen, Norway, December 2-6, 2019, Proceedings (Lecture Notes in Computer Science, Vol. 11918 ), Wolfgang Ahrendt and Silvia Lizeth Tapia Tarifa (Eds.). Springer, 399-417. https://doi.org/10.1007/978-3-030-34968-4_22 10.1007/978-3-030-34968-4_22 Jean-Raymond Abrial. 2010. Modeling in Event-B-System and Software Engineering. Cambridge University Press. https: //doi.org/10.1017/CBO9781139195881 10.1017/CBO9781139195881 Adrian Perrig, Pawel Szalachowski, Raphael M. Reischuk, and Laurent Chuat. 2017. SCION: A Secure Internet Architecture. Springer. https://doi.org/10.1007/978-3-319-67080-5 10.1007/978-3-319-67080-5 Ilya Sergey, James R. Wilcox, and Zachary Tatlock. 2018. Programming and proving with distributed protocols. PACMPL 2, POPL ( 2018 ), 28 : 1-28 : 30. https://doi.org/10.1145/3158116 10.1145/3158116 Vincent Rahli, Ivana Vukotic, Marcus Völp, and Paulo Jorge Esteves Veríssimo. 2018. Velisarios: Byzantine Fault-Tolerant Protocols Powered by Coq. In Programming Languages and Systems-27th European Symposium on Programming, ESOP 2018, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018, Thessaloniki, Greece, April 14-20, 2018, Proceedings (Lecture Notes in Computer Science, Vol. 10801 ), Amal Ahmed (Ed.). Springer, 619-650. https://doi.org/10.1007/978-3-319-89884-1_22 10.1007/978-3-319-89884-1_22 Nicolas Koh, Yao Li, Yishuai Li, Li-yao Xia, Lennart Beringer, Wolf Honoré, William Mansky, Benjamin C. Pierce, and Steve Zdancewic. 2019. From C to interaction trees: specifying, verifying, and testing a networked server. In Proceedings of the 8th ACM SIGPLAN International Conference on Certified Programs and Proofs, CPP 2019, Cascais, Portugal, January 14-15, 2019, Assia Mahboubi and Magnus O. Myreen (Eds.). ACM, 234-248. https://doi.org/10.1145/3293880.3294106 10.1145/3293880.3294106 Leslie Lamport. 1994. The Temporal Logic of Actions. ACM Trans. Program. Lang. Syst. 16, 3 ( 1994 ), 872-923. https: //doi.org/10.1145/177492.177726 10.1145/177492.177726 Bart Jacobs, Jan Smans, Pieter Philippaerts, Frédéric Vogels, Willem Penninckx, and Frank Piessens. 2011. VeriFast: A Powerful, Sound, Predictable, Fast Verifier for C and Java. In NASA Formal Methods-Third International Symposium, NFM 2011, Pasadena, CA, USA, April 18-20, 2011. Proceedings (Lecture Notes in Computer Science, Vol. 6617 ), Mihaela Gheorghiu Bobaru, Klaus Havelund, Gerard J. Holzmann, and Rajeev Joshi (Eds.). Springer, 41-55. https://doi.org/10.1007/978-3-642-20398-5_4 10.1007/978-3-642-20398-5_4 Christoph Sprenger, Tobias Klenze, Marco Eilers, Felix A. Wolf, Peter Müller, Martin Clochard, and David Basin. 2020b. Igloo: Soundly Linking Compositional Refinement and Separation Logic for Distributed System Verification (Artifact). https://doi.org/10.5281/zenodo.4039826 10.5281/zenodo.4039826 Leonardo Mendonça de Moura and Nikolaj Bjørner. 2008. Z3: An Eficient SMT Solver. In Tools and Algorithms for the Construction and Analysis of Systems, 14th International Conference, TACAS 2008, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2008, Budapest, Hungary, March 29-April 6, 2008. Proceedings (Lecture Notes in Computer Science, Vol. 4963 ), C. R. Ramakrishnan and Jakob Rehof (Eds.). Springer, 337-340. https: //doi.org/10.1007/978-3-540-78800-3_24 10.1007/978-3-540-78800-3_24 Christian Cachin, Rachid Guerraoui, and Luís E. T. Rodrigues. 2011. Introduction to Reliable and Secure Distributed Programming (2. ed.). Springer. https://doi.org/10.1007/978-3-642-15260-3 10.1007/978-3-642-15260-3 Qinxiang Cao, Lennart Beringer, Samuel Gruetter, Josiah Dodds, and Andrew W. Appel. 2018. VST-Floyd: A Separation Logic Tool to Verify Correctness of C Programs. J. Autom. Reasoning 61, 1-4 ( 2018 ), 367-422. https://doi.org/10.1007/s10817-018-9457-5 10.1007/s10817-018-9457-5 Christoph Sprenger and David A. Basin. 2018. Refining security protocols. Journal of Computer Security 26, 1 ( 2018 ), 71-120. https://doi.org/10.3233/JCS-16814 10.3233/JCS-16814 Robbert van Renesse and Rachid Guerraoui. 2010. Replication Techniques for Availability. In Replication: Theory and Practice (Lecture Notes in Computer Science, Vol. 5959 ), Bernadette Charron-Bost, Fernando Pedone, and André Schiper (Eds.). Springer, 19-40. https://doi.org/10.1007/978-3-642-11294-2_2 10.1007/978-3-642-11294-2_2 Jasmin Christian Blanchette, Aymeric Bouzy, Andreas Lochbihler, Andrei Popescu, and Dmitriy Traytel. 2017. Friends with Benefits-Implementing Corecursion in Foundational Proof Assistants. In Programming Languages and Systems-26th European Symposium on Programming, ESOP 2017, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017, Uppsala, Sweden, April 22-29, 2017, Proceedings (Lecture Notes in Computer Science, Vol. 10201 ), Hongseok Yang (Ed.). Springer, 111-140. https://doi.org/10.1007/978-3-662-54434-1_5 10.1007/978-3-662-54434-1_5 Danny Dolev and Andrew Chi-Chih Yao. 1983. On the security of public key protocols. IEEE Trans. Information Theory 29, 2 ( 1983 ), 198-207. https://doi.org/10.1109/TIT. 1983.1056650 10.1109/TIT.1983.1056650 Renato Silva and Michael J. Butler. 2010. Shared Event Composition/Decomposition in Event-B. In Formal Methods for Components and Objects-9th International Symposium, FMCO 2010, Graz, Austria, November 29-December 1, 2010. Revised Papers (Lecture Notes in Computer Science, Vol. 6957 ), Bernhard K. Aichernig, Frank S. de Boer, and Marcello M. Bonsangue (Eds.). Springer, 122-141. https://doi.org/10.1007/978-3-642-25271-6_7 10.1007/978-3-642-25271-6_7 Benjamin C. Pierce. 2016. The science of deep specification (keynote). In Companion Proceedings of the 2016 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity, SPLASH 2016, Amsterdam, Netherlands, October 30-November 4, 2016, Eelco Visser (Ed.). ACM, 1. https://doi.org/10.1145/2984043. 2998388 10.1145/2984043.2998388 Chris Hawblitzel, Jon Howell, Jacob R. Lorch, Arjun Narayan, Bryan Parno, Danfeng Zhang, and Brian Zill. 2014. Ironclad Apps: End-to-End Security via Automated Full-System Verification. In Operating Systems Design and Implementation (OSDI), Jason Flinn and Hank Levy (Eds.). USENIX Association, 165-181. William Mansky, Wolf Honoré, and Andrew W. Appel. 2020. Connecting Higher-Order Separation Logic to a FirstOrder Outside World. In Programming Languages and Systems-29th European Symposium on Programming, ESOP 2020, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2020, Dublin, Ireland, April 25-30, 2020, Proceedings (Lecture Notes in Computer Science, Vol. 12075 ), Peter Müller (Ed.). Springer, 428-455. https://doi.org/10.1007/978-3-030-44914-8_16 10.1007/978-3-030-44914-8_16 Andrew W. Appel. 2012. Verified Software Toolchain. In NASA Formal Methods-4th International Symposium, NFM 2012, Norfolk, VA, USA, April 3-5, 2012. Proceedings. 2. https://doi.org/10.1007/978-3-642-28891-3_2 10.1007/978-3-642-28891-3_2 Ernest J. H. Chang and Rosemary Roberts. 1979. An Improved Algorithm for Decentralized Extrema-Finding in Circular Configurations of Processes. Commun. ACM 22, 5 ( 1979 ), 281-283. https://doi.org/10.1145/359104.359108 10.1145/359104.359108 K. Rustan M. Leino and Peter Müller. 2009. A Basis for Verifying Multi-threaded Programs. In Programming Languages and Systems, 18th European Symposium on Programming, ESOP 2009, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009, York, UK, March 22-29, 2009. Proceedings (Lecture Notes in Computer Science, Vol. 5502 ), Giuseppe Castagna (Ed.). Springer, 378-393. https://doi.org/10.1007/978-3-642-00590-9_27 10.1007/978-3-642-00590-9_27 Li-yao Xia, Yannick Zakowski, Paul He, Chung-Kil Hur, Gregory Malecha, Benjamin C. Pierce, and Steve Zdancewic. 2020. Interaction trees: representing recursive and impure programs in Coq. Proc. ACM Program. Lang. 4, POPL ( 2020 ), 51 : 1-51 : 32. https://doi.org/10.1145/3371119 10.1145/3371119 Nancy A. Lynch and Frits W. Vaandrager. 1995. Forward and Backward Simulations: I. Untimed Systems. Inf. Comput. 121, 2 ( 1995 ), 214-233. https://doi.org/10.1006/inco. 1995.1134 10.1006/inco.1995.1134 Doug Woos, James R. Wilcox, Steve Anton, Zachary Tatlock, Michael D. Ernst, and Thomas E. Anderson. 2016. Planning for change in a formal verification of the Raft consensus protocol. In Proceedings of the 5th ACM SIGPLAN Conference on Certified Programs and Proofs, Saint Petersburg, FL, USA, January 20-22, 2016, Jeremy Avigad and Adam Chlipala (Eds.). ACM, 154-165. https://doi.org/10.1145/2854065.2854081 10.1145/2854065.2854081 Cezara Dragoi, Thomas A. Henzinger, and Damien Zuferey. 2016. PSync: a partially synchronous language for fault-tolerant distributed algorithms. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, St. Petersbur e_1_2_2_4_1 e_1_2_2_24_1 e_1_2_2_49_1 e_1_2_2_6_1 e_1_2_2_22_1 e_1_2_2_20_1 e_1_2_2_2_1 e_1_2_2_41_1 e_1_2_2_8_1 e_1_2_2_28_1 e_1_2_2_45_1 e_1_2_2_26_1 e_1_2_2_47_1 e_1_2_2_13_1 e_1_2_2_38_1 e_1_2_2_11_1 e_1_2_2_30_1 e_1_2_2_19_1 e_1_2_2_32_1 e_1_2_2_17_1 e_1_2_2_34_1 e_1_2_2_36_1 e_1_2_2_25_1 e_1_2_2_48_1 e_1_2_2_5_1 e_1_2_2_23_1 e_1_2_2_7_1 e_1_2_2_21_1 e_1_2_2_1_1 e_1_2_2_3_1 e_1_2_2_40_1 e_1_2_2_42_1 e_1_2_2_9_1 e_1_2_2_29_1 e_1_2_2_44_1 e_1_2_2_27_1 e_1_2_2_46_1 Hawblitzel Chris (e_1_2_2_15_1) 2014 e_1_2_2_14_1 e_1_2_2_37_1 e_1_2_2_12_1 e_1_2_2_39_1 e_1_2_2_10_1 e_1_2_2_31_1 e_1_2_2_18_1 e_1_2_2_33_1 Sprenger Christoph (e_1_2_2_43_1) 2020 e_1_2_2_16_1 e_1_2_2_35_1 |
| References_xml | – reference: Jonathan Protzenko, Jean Karim Zinzindohoué, Aseem Rastogi, Tahina Ramananandro, Peng Wang, Santiago Zanella Béguelin, Antoine Delignat-Lavaud, Catalin Hritcu, Karthikeyan Bhargavan, Cédric Fournet, and Nikhil Swamy. 2017. Verified low-level programming embedded in F. PACMPL 1, ICFP ( 2017 ), 17 : 1-17 : 29. https://doi.org/10.1145/3110261 10.1145/3110261 – reference: Gavin Lowe. 1997. A Hierarchy of Authentication Specification. In 10th Computer Security Foundations Workshop (CSFW '97), June 10-12, 1997, Rockport, Massachusetts, USA. IEEE Computer Society, 31-44. https://doi.org/10.1109/CSFW. 1997.596782 10.1109/CSFW.1997.596782 – reference: Vincent Rahli, Ivana Vukotic, Marcus Völp, and Paulo Jorge Esteves Veríssimo. 2018. Velisarios: Byzantine Fault-Tolerant Protocols Powered by Coq. In Programming Languages and Systems-27th European Symposium on Programming, ESOP 2018, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018, Thessaloniki, Greece, April 14-20, 2018, Proceedings (Lecture Notes in Computer Science, Vol. 10801 ), Amal Ahmed (Ed.). Springer, 619-650. https://doi.org/10.1007/978-3-319-89884-1_22 10.1007/978-3-319-89884-1_22 – reference: Si Liu, Atul Sandur, José Meseguer, Peter Csaba Ölveczky, and Qi Wang. 2020. Generating Correct-by-Construction Distributed Implementations from Formal Maude Designs. In NASA Formal Methods-12th International Symposium, NFM 2020, Mofett Field, CA, USA, May 11-15, 2020, Proceedings (Lecture Notes in Computer Science, Vol. 12229 ), Ritchie Lee, Susmit Jha, and Anastasia Mavridou (Eds.). Springer, 22-40. https://doi.org/10.1007/978-3-030-55754-6_2 10.1007/978-3-030-55754-6_2 – reference: Nicolas Koh, Yao Li, Yishuai Li, Li-yao Xia, Lennart Beringer, Wolf Honoré, William Mansky, Benjamin C. Pierce, and Steve Zdancewic. 2019. From C to interaction trees: specifying, verifying, and testing a networked server. In Proceedings of the 8th ACM SIGPLAN International Conference on Certified Programs and Proofs, CPP 2019, Cascais, Portugal, January 14-15, 2019, Assia Mahboubi and Magnus O. Myreen (Eds.). ACM, 234-248. https://doi.org/10.1145/3293880.3294106 10.1145/3293880.3294106 – reference: Marco Eilers and Peter Müller. 2018. Nagini: A Static Verifier for Python. In Computer Aided Verification-30th International Conference, CAV 2018, Held as Part of the Federated Logic Conference, FloC 2018, Oxford, UK, July 14-17, 2018, Proceedings, Part I (Lecture Notes in Computer Science, Vol. 10981 ), Hana Chockler and Georg Weissenbacher (Eds.). Springer, 596-603. https://doi.org/10.1007/978-3-319-96145-3_33 10.1007/978-3-319-96145-3_33 – reference: John C. Reynolds. 2002. Separation Logic: A Logic for Shared Mutable Data Structures. In 17th IEEE Symposium on Logic in Computer Science (LICS 2002 ), 22-25 July 2002, Copenhagen, Denmark, Proceedings. IEEE Computer Society, 55-74. https://doi.org/10.1109/LICS. 2002.1029817 10.1109/LICS.2002.1029817 – reference: Andrew W. Appel. 2012. Verified Software Toolchain. In NASA Formal Methods-4th International Symposium, NFM 2012, Norfolk, VA, USA, April 3-5, 2012. Proceedings. 2. https://doi.org/10.1007/978-3-642-28891-3_2 10.1007/978-3-642-28891-3_2 – reference: Cezara Dragoi, Thomas A. Henzinger, and Damien Zuferey. 2016. PSync: a partially synchronous language for fault-tolerant distributed algorithms. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, St. Petersburg, FL, USA, January 20-22, 2016, Rastislav Bodík and Rupak Majumdar (Eds.). ACM, 400-415. https://doi.org/10.1145/2837614.2837650 10.1145/2837614.2837650 – reference: Tobias Nipkow, Lawrence C. Paulson, and Markus Wenzel. 2002. Isabelle/HOL-A Proof Assistant for Higher-Order Logic. Lecture Notes in Computer Science, Vol. 2283. Springer. https://doi.org/10.1007/3-540-45949-9 10.1007/3-540-45949-9 – reference: William Mansky, Wolf Honoré, and Andrew W. Appel. 2020. Connecting Higher-Order Separation Logic to a FirstOrder Outside World. In Programming Languages and Systems-29th European Symposium on Programming, ESOP 2020, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2020, Dublin, Ireland, April 25-30, 2020, Proceedings (Lecture Notes in Computer Science, Vol. 12075 ), Peter Müller (Ed.). Springer, 428-455. https://doi.org/10.1007/978-3-030-44914-8_16 10.1007/978-3-030-44914-8_16 – reference: Matthew J. Parkinson and Gavin M. Bierman. 2005. Separation logic and abstraction. In Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2005, Long Beach, California, USA, January 12-14, 2005, Jens Palsberg and Martín Abadi (Eds.). ACM, 247-258. https://doi.org/10.1145/1040305.1040326 10.1145/1040305.1040326 – reference: Mohsen Lesani, Christian J. Bell, and Adam Chlipala. 2016. Chapar: certified causally consistent distributed key-value stores. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, St. Petersburg, FL, USA, January 20-22, 2016, Rastislav Bodík and Rupak Majumdar (Eds.). ACM, 357-370. https://doi.org/10.1145/2837614.2837622 10.1145/2837614.2837622 – reference: Manuel Clavel, Francisco Durán, Steven Eker, Patrick Lincoln, Narciso Martí-Oliet, José Meseguer, and Carolyn L. Talcott (Eds.). 2007. All About Maude-A High-Performance Logical Framework, How to Specify, Program and Verify Systems in Rewriting Logic. Lecture Notes in Computer Science, Vol. 4350. Springer. https://doi.org/10.1007/978-3-540-71999-1 10.1007/978-3-540-71999-1 – reference: Qinxiang Cao, Lennart Beringer, Samuel Gruetter, Josiah Dodds, and Andrew W. Appel. 2018. VST-Floyd: A Separation Logic Tool to Verify Correctness of C Programs. J. Autom. Reasoning 61, 1-4 ( 2018 ), 367-422. https://doi.org/10.1007/s10817-018-9457-5 10.1007/s10817-018-9457-5 – reference: Jean-Raymond Abrial. 2010. Modeling in Event-B-System and Software Engineering. Cambridge University Press. https: //doi.org/10.1017/CBO9781139195881 10.1017/CBO9781139195881 – reference: C. A. R. Hoare. 2003. The Verifying Compiler: A Grand Challange for Computing Research. In Modular Programming Languages, Joint Modular Languages Conference, JMLC 2003, Klagenfurt, Austria, August 25-27, 2003, Proceedings (Lecture Notes in Computer Science, Vol. 2789 ), László Böszörményi and Peter Schojer (Eds.). Springer, 25-35. https://doi.org/10. 1007/978-3-540-45213-3_4 10.1007/978-3-540-45213-3_4 – reference: Adrian Perrig, Pawel Szalachowski, Raphael M. Reischuk, and Laurent Chuat. 2017. SCION: A Secure Internet Architecture. Springer. https://doi.org/10.1007/978-3-319-67080-5 10.1007/978-3-319-67080-5 – reference: Danny Dolev and Andrew Chi-Chih Yao. 1983. On the security of public key protocols. IEEE Trans. Information Theory 29, 2 ( 1983 ), 198-207. https://doi.org/10.1109/TIT. 1983.1056650 10.1109/TIT.1983.1056650 – reference: Jasmin Christian Blanchette, Aymeric Bouzy, Andreas Lochbihler, Andrei Popescu, and Dmitriy Traytel. 2017. Friends with Benefits-Implementing Corecursion in Foundational Proof Assistants. In Programming Languages and Systems-26th European Symposium on Programming, ESOP 2017, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017, Uppsala, Sweden, April 22-29, 2017, Proceedings (Lecture Notes in Computer Science, Vol. 10201 ), Hongseok Yang (Ed.). Springer, 111-140. https://doi.org/10.1007/978-3-662-54434-1_5 10.1007/978-3-662-54434-1_5 – reference: Christian Cachin, Rachid Guerraoui, and Luís E. T. Rodrigues. 2011. Introduction to Reliable and Secure Distributed Programming (2. ed.). Springer. https://doi.org/10.1007/978-3-642-15260-3 10.1007/978-3-642-15260-3 – reference: Bart Jacobs, Jan Smans, Pieter Philippaerts, Frédéric Vogels, Willem Penninckx, and Frank Piessens. 2011. VeriFast: A Powerful, Sound, Predictable, Fast Verifier for C and Java. In NASA Formal Methods-Third International Symposium, NFM 2011, Pasadena, CA, USA, April 18-20, 2011. Proceedings (Lecture Notes in Computer Science, Vol. 6617 ), Mihaela Gheorghiu Bobaru, Klaus Havelund, Gerard J. Holzmann, and Rajeev Joshi (Eds.). Springer, 41-55. https://doi.org/10.1007/978-3-642-20398-5_4 10.1007/978-3-642-20398-5_4 – reference: Willem Penninckx, Bart Jacobs, and Frank Piessens. 2015. Sound, Modular and Compositional Verification of the Input/Output Behavior of Programs. In Programming Languages and Systems-24th European Symposium on Programming, ESOP 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015. Proceedings (Lecture Notes in Computer Science, Vol. 9032 ), Jan Vitek (Ed.). Springer, 158-182. https://doi.org/10.1007/978-3-662-46669-8_7 10.1007/978-3-662-46669-8_7 – reference: Martín Abadi and Leslie Lamport. 1991. The Existence of Refinement Mappings. Theor. Comput. Sci. 82, 2 ( 1991 ), 253-284. https://doi.org/10.1016/ 0304-3975 ( 91 ) 90224-P 10.1016/0304-3975(91)90224-P – reference: Christoph Sprenger and David A. Basin. 2018. Refining security protocols. Journal of Computer Security 26, 1 ( 2018 ), 71-120. https://doi.org/10.3233/JCS-16814 10.3233/JCS-16814 – reference: Ernest J. H. Chang and Rosemary Roberts. 1979. An Improved Algorithm for Decentralized Extrema-Finding in Circular Configurations of Processes. Commun. ACM 22, 5 ( 1979 ), 281-283. https://doi.org/10.1145/359104.359108 10.1145/359104.359108 – reference: K. Rustan M. Leino. 2010. Dafny: An Automatic Program Verifier for Functional Correctness. In Logic for Programming, Artificial Intelligence, and Reasoning-16th International Conference, LPAR-16, Dakar, Senegal, April 25-May 1, 2010, Revised Selected Papers (Lecture Notes in Computer Science, Vol. 6355 ), Edmund M. Clarke and Andrei Voronkov (Eds.). Springer, 348-370. https://doi.org/10.1007/978-3-642-17511-4_20 10.1007/978-3-642-17511-4_20 – reference: Li-yao Xia, Yannick Zakowski, Paul He, Chung-Kil Hur, Gregory Malecha, Benjamin C. Pierce, and Steve Zdancewic. 2020. Interaction trees: representing recursive and impure programs in Coq. Proc. ACM Program. Lang. 4, POPL ( 2020 ), 51 : 1-51 : 32. https://doi.org/10.1145/3371119 10.1145/3371119 – reference: Robbert van Renesse and Rachid Guerraoui. 2010. Replication Techniques for Availability. In Replication: Theory and Practice (Lecture Notes in Computer Science, Vol. 5959 ), Bernadette Charron-Bost, Fernando Pedone, and André Schiper (Eds.). Springer, 19-40. https://doi.org/10.1007/978-3-642-11294-2_2 10.1007/978-3-642-11294-2_2 – reference: Leonardo Mendonça de Moura and Nikolaj Bjørner. 2008. Z3: An Eficient SMT Solver. In Tools and Algorithms for the Construction and Analysis of Systems, 14th International Conference, TACAS 2008, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2008, Budapest, Hungary, March 29-April 6, 2008. Proceedings (Lecture Notes in Computer Science, Vol. 4963 ), C. R. Ramakrishnan and Jakob Rehof (Eds.). Springer, 337-340. https: //doi.org/10.1007/978-3-540-78800-3_24 10.1007/978-3-540-78800-3_24 – reference: Sjoerd Cranen, Jan Friso Groote, Jeroen J. A. Keiren, Frank P. M. Stappers, Erik P. de Vink, Wieger Wesselink, and Tim A. C. Willemse. 2013. An Overview of the mCRL2 Toolset and Its Recent Advances. In Tools and Algorithms for the Construction and Analysis of Systems-19th International Conference, TACAS 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Rome, Italy, March 16-24, 2013. Proceedings (Lecture Notes in Computer Science, Vol. 7795 ), Nir Piterman and Scott A. Smolka (Eds.). Springer, 199-213. https://doi.org/10.1007/978-3-642-36742-7_15 10.1007/978-3-642-36742-7_15 – reference: Chris Hawblitzel, Jon Howell, Jacob R. Lorch, Arjun Narayan, Bryan Parno, Danfeng Zhang, and Brian Zill. 2014. Ironclad Apps: End-to-End Security via Automated Full-System Verification. In Operating Systems Design and Implementation (OSDI), Jason Flinn and Hank Levy (Eds.). USENIX Association, 165-181. – reference: James R. Wilcox, Doug Woos, Pavel Panchekha, Zachary Tatlock, Xi Wang, Michael D. Ernst, and Thomas E. Anderson. 2015. Verdi: a framework for implementing and formally verifying distributed systems. In Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation, Portland, OR, USA, June 15-17, 2015, David Grove and Steve Blackburn (Eds.). ACM, 357-368. https://doi.org/10.1145/2737924.2737958 10.1145/2737924.2737958 – reference: Renato Silva and Michael J. Butler. 2010. Shared Event Composition/Decomposition in Event-B. In Formal Methods for Components and Objects-9th International Symposium, FMCO 2010, Graz, Austria, November 29-December 1, 2010. Revised Papers (Lecture Notes in Computer Science, Vol. 6957 ), Bernhard K. Aichernig, Frank S. de Boer, and Marcello M. Bonsangue (Eds.). Springer, 122-141. https://doi.org/10.1007/978-3-642-25271-6_7 10.1007/978-3-642-25271-6_7 – reference: Leslie Lamport. 1994. The Temporal Logic of Actions. ACM Trans. Program. Lang. Syst. 16, 3 ( 1994 ), 872-923. https: //doi.org/10.1145/177492.177726 10.1145/177492.177726 – reference: Wytse Oortwijn and Marieke Huisman. 2019. Practical Abstractions for Automated Verification of Message Passing Concurrency. In Integrated Formal Methods-15th International Conference, IFM 2019, Bergen, Norway, December 2-6, 2019, Proceedings (Lecture Notes in Computer Science, Vol. 11918 ), Wolfgang Ahrendt and Silvia Lizeth Tapia Tarifa (Eds.). Springer, 399-417. https://doi.org/10.1007/978-3-030-34968-4_22 10.1007/978-3-030-34968-4_22 – reference: Ilya Sergey, James R. Wilcox, and Zachary Tatlock. 2018. Programming and proving with distributed protocols. PACMPL 2, POPL ( 2018 ), 28 : 1-28 : 30. https://doi.org/10.1145/3158116 10.1145/3158116 – reference: Doug Woos, James R. Wilcox, Steve Anton, Zachary Tatlock, Michael D. Ernst, and Thomas E. Anderson. 2016. Planning for change in a formal verification of the Raft consensus protocol. In Proceedings of the 5th ACM SIGPLAN Conference on Certified Programs and Proofs, Saint Petersburg, FL, USA, January 20-22, 2016, Jeremy Avigad and Adam Chlipala (Eds.). ACM, 154-165. https://doi.org/10.1145/2854065.2854081 10.1145/2854065.2854081 – reference: Nancy A. Lynch and Frits W. Vaandrager. 1995. Forward and Backward Simulations: I. Untimed Systems. Inf. Comput. 121, 2 ( 1995 ), 214-233. https://doi.org/10.1006/inco. 1995.1134 10.1006/inco.1995.1134 – reference: Benjamin C. Pierce. 2016. The science of deep specification (keynote). In Companion Proceedings of the 2016 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity, SPLASH 2016, Amsterdam, Netherlands, October 30-November 4, 2016, Eelco Visser (Ed.). ACM, 1. https://doi.org/10.1145/2984043. 2998388 10.1145/2984043.2998388 – reference: Peter Müller, Malte Schwerhof, and Alexander J. Summers. 2016. Viper: A Verification Infrastructure for Permission-Based Reasoning. In Verification, Model Checking, and Abstract Interpretation-17th International Conference, VMCAI 2016, St. Petersburg, FL, USA, January 17-19, 2016. Proceedings. 41-62. https://doi.org/10.1007/978-3-662-49122-5_2 10.1007/978-3-662-49122-5_2 – reference: Ruzica Piskac, Thomas Wies, and Damien Zuferey. 2013. Automating Separation Logic Using SMT. In Computer Aided Verification-25th International Conference, CAV 2013, Saint Petersburg, Russia, July 13-19, 2013. Proceedings (Lecture Notes in Computer Science, Vol. 8044 ), Natasha Sharygina and Helmut Veith (Eds.). Springer, 773-789. https://doi.org/10.1007/978-3-642-39799-8_54 10.1007/978-3-642-39799-8_54 – reference: Christoph Sprenger, Tobias Klenze, Marco Eilers, Felix A. Wolf, Peter Müller, Martin Clochard, and David Basin. 2020a. Igloo: Soundly Linking Compositional Refinement and Separation Logic for Distributed Systems Verification. CoRR abs/ 2010.04749 ( October 2020 ). arXiv: 2010.04749 http://arxiv.org/abs/ 2010.04749 – reference: Christoph Sprenger, Tobias Klenze, Marco Eilers, Felix A. Wolf, Peter Müller, Martin Clochard, and David Basin. 2020b. Igloo: Soundly Linking Compositional Refinement and Separation Logic for Distributed System Verification (Artifact). https://doi.org/10.5281/zenodo.4039826 10.5281/zenodo.4039826 – reference: K. Rustan M. Leino and Peter Müller. 2009. A Basis for Verifying Multi-threaded Programs. In Programming Languages and Systems, 18th European Symposium on Programming, ESOP 2009, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009, York, UK, March 22-29, 2009. Proceedings (Lecture Notes in Computer Science, Vol. 5502 ), Giuseppe Castagna (Ed.). Springer, 378-393. https://doi.org/10.1007/978-3-642-00590-9_27 10.1007/978-3-642-00590-9_27 – reference: Chris Hawblitzel, Jon Howell, Manos Kapritsos, Jacob R. Lorch, Bryan Parno, Michael L. Roberts, Srinath T. V. Setty, and Brian Zill. 2015. IronFleet: proving practical distributed systems correct. In Proceedings of the 25th Symposium on Operating Systems Principles, SOSP 2015, Monterey, CA, USA, October 4-7, 2015, Ethan L. Miller and Steven Hand (Eds.). ACM, 1-17. https://doi.org/10.1145/2815400.2815428 10.1145/2815400.2815428 – reference: Gerwin Klein, Kevin Elphinstone, Gernot Heiser, June Andronick, David Cock, Philip Derrin, Dhammika Elkaduwe, Kai Engelhardt, Rafal Kolanski, Michael Norrish, Thomas Sewell, Harvey Tuch, and Simon Winwood. 2009. seL4: formal verification of an OS kernel. In Proceedings of the 22nd ACM Symposium on Operating Systems Principles 2009, SOSP 2009, Big Sky, Montana, USA, October 11-14, 2009, Jeanna Neefe Matthews and Thomas E. Anderson (Eds.). ACM, 207-220. https://doi.org/10.1145/1629575.1629596 10.1145/1629575.1629596 – reference: Xavier Leroy. 2006. Formal certification of a compiler back-end or: programming a compiler with a proof assistant. In Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2006, Charleston, South Carolina, USA, January 11-13, 2006, J. Gregory Morrisett and Simon L. Peyton Jones (Eds.). ACM, 42-54. https://doi.org/10.1145/1111037.1111042 10.1145/1111037.1111042 – reference: Nikhil Swamy, Catalin Hritcu, Chantal Keller, Aseem Rastogi, Antoine Delignat-Lavaud, Simon Forest, Karthikeyan Bhargavan, Cédric Fournet, Pierre-Yves Strub, Markulf Kohlweiss, Jean Karim Zinzindohoue, and Santiago Zanella Béguelin. 2016. Dependent types and multi-monadic efects in F ∗. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, St. Petersburg, FL, USA, January 20-22, 2016, Rastislav Bodík and Rupak Majumdar (Eds.). ACM, 256-270. https://doi.org/10.1145/2837614.2837655 10.1145/2837614.2837655 – ident: e_1_2_2_40_1 doi: 10.1145/3158116 – ident: e_1_2_2_4_1 doi: 10.1007/978-3-662-54434-1_5 – ident: e_1_2_2_18_1 doi: 10.1145/1629575.1629596 – ident: e_1_2_2_5_1 doi: 10.1007/978-3-642-15260-3 – ident: e_1_2_2_48_1 doi: 10.1145/2854065.2854081 – volume-title: Igloo: Soundly Linking Compositional Refinement and Separation Logic for Distributed Systems Verification. CoRR abs/ year: 2020 ident: e_1_2_2_43_1 – ident: e_1_2_2_2_1 doi: 10.1017/CBO9781139195881 – ident: e_1_2_2_17_1 doi: 10.1007/978-3-642-20398-5_4 – ident: e_1_2_2_9_1 doi: 10.1007/978-3-642-36742-7_15 – ident: e_1_2_2_3_1 doi: 10.1007/978-3-642-28891-3_2 – ident: e_1_2_2_49_1 doi: 10.1145/3371119 – ident: e_1_2_2_38_1 doi: 10.1007/978-3-319-89884-1_22 – ident: e_1_2_2_39_1 doi: 10.1109/LICS.2002.1029817 – ident: e_1_2_2_12_1 doi: 10.1145/2837614.2837650 – ident: e_1_2_2_44_1 doi: 10.5281/zenodo.4039826 – ident: e_1_2_2_30_1 doi: 10.1007/3-540-45949-9 – ident: e_1_2_2_24_1 doi: 10.1145/2837614.2837622 – ident: e_1_2_2_27_1 doi: 10.1006/inco.1995.1134 – ident: e_1_2_2_26_1 doi: 10.1109/CSFW.1997.596782 – ident: e_1_2_2_25_1 doi: 10.1007/978-3-030-55754-6_2 – ident: e_1_2_2_37_1 doi: 10.1145/3110261 – ident: e_1_2_2_34_1 doi: 10.1007/978-3-319-67080-5 – ident: e_1_2_2_42_1 doi: 10.3233/JCS-16814 – ident: e_1_2_2_22_1 doi: 10.1007/978-3-642-00590-9_27 – ident: e_1_2_2_35_1 doi: 10.1145/2984043.2998388 – ident: e_1_2_2_41_1 doi: 10.1007/978-3-642-25271-6_7 – volume-title: Ironclad Apps: End-to-End Security via Automated Full-System Verification. In Operating Systems Design and Implementation (OSDI) year: 2014 ident: e_1_2_2_15_1 – ident: e_1_2_2_13_1 doi: 10.1007/978-3-319-96145-3_33 – ident: e_1_2_2_21_1 doi: 10.1007/978-3-642-17511-4_20 – ident: e_1_2_2_8_1 doi: 10.1007/978-3-540-71999-1 – ident: e_1_2_2_16_1 doi: 10.1007/978-3-540-45213-3_4 – ident: e_1_2_2_1_1 doi: 10.1016/0304-3975(91)90224-P – ident: e_1_2_2_47_1 doi: 10.1145/2737924.2737958 – ident: e_1_2_2_10_1 doi: 10.1007/978-3-540-78800-3_24 – ident: e_1_2_2_32_1 doi: 10.1145/1040305.1040326 – ident: e_1_2_2_31_1 doi: 10.1007/978-3-030-34968-4_22 – ident: e_1_2_2_7_1 doi: 10.1145/359104.359108 – ident: e_1_2_2_19_1 doi: 10.1145/3293880.3294106 – ident: e_1_2_2_23_1 doi: 10.1145/1111037.1111042 – ident: e_1_2_2_20_1 doi: 10.1145/177492.177726 – ident: e_1_2_2_28_1 doi: 10.1007/978-3-030-44914-8_16 – ident: e_1_2_2_36_1 doi: 10.1007/978-3-642-39799-8_54 – ident: e_1_2_2_6_1 doi: 10.1007/s10817-018-9457-5 – ident: e_1_2_2_33_1 doi: 10.1007/978-3-662-46669-8_7 – ident: e_1_2_2_14_1 doi: 10.1145/2815400.2815428 – ident: e_1_2_2_11_1 doi: 10.1109/TIT.1983.1056650 – ident: e_1_2_2_29_1 doi: 10.1007/978-3-662-49122-5_2 – ident: e_1_2_2_46_1 doi: 10.1007/978-3-642-11294-2_2 – ident: e_1_2_2_45_1 doi: 10.1145/2837614.2837655 |
| SSID | ssj0001934839 |
| Score | 2.3115163 |
| Snippet | Lighthouse projects like CompCert, seL4, IronFleet, and DeepSpec have demonstrated that full system verification is feasible by establishing a refinement... |
| SourceID | crossref acm |
| SourceType | Enrichment Source Index Database Publisher |
| StartPage | 1 |
| SubjectTerms | Computer systems organization Computing methodologies Dependable and fault-tolerant systems and networks Distributed algorithms Distributed computing methodologies Formal methods and theory of security Higher order logic Logic Logic and verification Security and privacy Separation logic Theory of computation |
| SubjectTermsDisplay | Computer systems organization -- Dependable and fault-tolerant systems and networks Computing methodologies -- Distributed computing methodologies -- Distributed algorithms Security and privacy -- Formal methods and theory of security -- Logic and verification Theory of computation -- Logic -- Higher order logic Theory of computation -- Logic -- Logic and verification Theory of computation -- Logic -- Separation logic |
| Title | Igloo: soundly linking compositional refinement and separation logic for distributed system verification |
| URI | https://dl.acm.org/doi/10.1145/3428220 |
| Volume | 4 |
| WOSCitedRecordID | wos000685203900029&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 2475-1421 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0001934839 issn: 2475-1421 databaseCode: M~E dateStart: 20170101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1Lb9QwELaWwoELjwJiy0M-IC6rFMdx4pjbqqICiW1XapF6W8WOU1ZKk6q7VFsO_Cx-H-NHnLAgAQcu0cqyvZHn03yfnfEMQq_ilGtaqizKJMg3VikeCVkClktFq4ylhaSu2AQ_OsrPzsR8NPre3YW5rnnT5JuNuPyvpoY2MLa5OvsP5g6TQgP8BqPDE8wOz78y_IfzujWTTFamYlJ9M_HlEWz0uA_Rstn8KxCYIcR8pV0ScACD9YY2_LA0WXVNQSxQpS7l8wSWwwQX9fb0wnYeiNDGhkwPZuYzhI_-ujB_352MBhF_YtJpnvuLiF2Og0AAwIZfXUbgVi6LXvmDF3NV3WZgtzZwSlvb7JKHul5uJtP94WEG7FxNQF3S-zzKeBrFzF2a3te_afNOmw2weXw8P_k4HXjheEDnjmN-JQpmcmokzETRkp4Lu-__WxQZAhfdNe504QfeQrcpT4UhhNm3wdmeSFhui9iFd3f3tc3YN36skUPqYiCHBrrm9AG65zckeOqA9BCNdLOL7nfFPrD3_Y_QZ4urt9ijCntU4Z9QhXtUYUAV7lGFLaowoAoPUIUdqvAQVY_Rp8N3pwfvI1-mIyoo5-tIAHfHhPM8ZUxIJosqUSURmhRMEJVVMie54AVo64zrlEhaaNj0VxR8WK7zjCRP0E7TNvopwmmseGV29VpyJmIqQa6mRVVUJKNK5HSMdmHNFpcuEUtnhTF63a3hQvnM9qbASr3YMtcY4dCxm2Ory96fuzxDd3voPkc766sv-gW6o67Xy9XVS4uEH-2Elfo |
| linkProvider | ISSN International Centre |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Igloo%3A+soundly+linking+compositional+refinement+and+separation+logic+for+distributed+system+verification&rft.jtitle=Proceedings+of+ACM+on+programming+languages&rft.au=Sprenger%2C+Christoph&rft.au=Klenze%2C+Tobias&rft.au=Eilers%2C+Marco&rft.au=Wolf%2C+Felix+A.&rft.date=2020-11-13&rft.issn=2475-1421&rft.eissn=2475-1421&rft.volume=4&rft.issue=OOPSLA&rft.spage=1&rft.epage=31&rft_id=info:doi/10.1145%2F3428220&rft.externalDBID=n%2Fa&rft.externalDocID=10_1145_3428220 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2475-1421&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2475-1421&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2475-1421&client=summon |