{"user_id":"317138e5-6ab7-11ef-aa6d-ffef3953e345","date_created":"2024-09-05T08:10:41Z","author":[{"last_name":"Spies","first_name":"Simon","full_name":"Spies, Simon"},{"last_name":"Gäher","full_name":"Gäher, Lennard","first_name":"Lennard"},{"id":"510d3901-2a03-11ee-914d-d9ae9011f0a7","last_name":"Sammler","first_name":"Michael Joachim","full_name":"Sammler, Michael Joachim"},{"last_name":"Dreyer","first_name":"Derek","full_name":"Dreyer, Derek"}],"page":"889-913","language":[{"iso":"eng"}],"issue":"PLDI","article_type":"original","date_published":"2024-06-20T00:00:00Z","main_file_link":[{"open_access":"1","url":"https://doi.org/10.1145/3656413"}],"day":"20","status":"public","oa_version":"Published Version","date_updated":"2024-09-10T12:00:57Z","citation":{"ieee":"S. Spies, L. Gäher, M. J. Sammler, and D. Dreyer, “Quiver: Guided abductive inference of separation logic specifications in coq,” Proceedings of the ACM on Programming Languages, vol. 8, no. PLDI. Association for Computing Machinery, pp. 889–913, 2024.","ista":"Spies S, Gäher L, Sammler MJ, Dreyer D. 2024. Quiver: Guided abductive inference of separation logic specifications in coq. Proceedings of the ACM on Programming Languages. 8(PLDI), 889–913.","apa":"Spies, S., Gäher, L., Sammler, M. J., & Dreyer, D. (2024). Quiver: Guided abductive inference of separation logic specifications in coq. Proceedings of the ACM on Programming Languages. Association for Computing Machinery. https://doi.org/10.1145/3656413","short":"S. Spies, L. Gäher, M.J. Sammler, D. Dreyer, Proceedings of the ACM on Programming Languages 8 (2024) 889–913.","ama":"Spies S, Gäher L, Sammler MJ, Dreyer D. Quiver: Guided abductive inference of separation logic specifications in coq. Proceedings of the ACM on Programming Languages. 2024;8(PLDI):889-913. doi:10.1145/3656413","chicago":"Spies, Simon, Lennard Gäher, Michael Joachim Sammler, and Derek Dreyer. “Quiver: Guided Abductive Inference of Separation Logic Specifications in Coq.” Proceedings of the ACM on Programming Languages. Association for Computing Machinery, 2024. https://doi.org/10.1145/3656413.","mla":"Spies, Simon, et al. “Quiver: Guided Abductive Inference of Separation Logic Specifications in Coq.” Proceedings of the ACM on Programming Languages, vol. 8, no. PLDI, Association for Computing Machinery, 2024, pp. 889–913, doi:10.1145/3656413."},"type":"journal_article","publisher":"Association for Computing Machinery","oa":1,"doi":"10.1145/3656413","publication_identifier":{"issn":["2475-1421"]},"publication":"Proceedings of the ACM on Programming Languages","year":"2024","scopus_import":"1","month":"06","quality_controlled":"1","article_processing_charge":"No","intvolume":" 8","abstract":[{"lang":"eng","text":"Over the past two decades, there has been a great deal of progress on verification of full functional correctness of programs using separation logic, sometimes even producing “foundational” proofs in proof assistants like Coq. Unfortunately, even though existing approaches to this problem provide significant support for automated verification, they still incur a significant specification overhead: the user must supply the specification against which the program is verified, and the specification may be long, complex, or tedious to formulate. In this paper, we introduce Quiver, the first technique for inferring functional correctness specifications in separation logic while simultaneously verifying foundationally that they are correct. To guide Quiver towards the final specification, we take hints from the user in the form of a specification sketch, and then complete the sketch using inference. To do so, Quiver introduces a new abductive deductive verification technique, which integrates ideas from abductive inference (for specification inference) together with deductive separation logic automation (for foundational verification). The result is that users have to provide some guidance, but significantly less than with traditional deductive verification techniques based on separation logic. We have evaluated Quiver on a range of case studies, including code from popular open-source libraries."}],"publication_status":"published","title":"Quiver: Guided abductive inference of separation logic specifications in coq","extern":"1","_id":"17497","volume":8}