Asynchronous Probabilistic Couplings in Higher-Order Separation Logic
Probabilistic couplings are the foundation for many probabilistic relational program logics and arise when relating random sampling statements across two programs. In relational program logics, this manifests as dedicated coupling rules that, e.g., say we may reason as if two sampling statements ret...
Gespeichert in:
Veröffentlicht in: | arXiv.org 2023-11 |
---|---|
Hauptverfasser: | , , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | |
---|---|
container_issue | |
container_start_page | |
container_title | arXiv.org |
container_volume | |
creator | Simon Oddershede Gregersen Aguirre, Alejandro Haselwarter, Philipp G Tassarotti, Joseph Birkedal, Lars |
description | Probabilistic couplings are the foundation for many probabilistic relational program logics and arise when relating random sampling statements across two programs. In relational program logics, this manifests as dedicated coupling rules that, e.g., say we may reason as if two sampling statements return the same value. However, this approach fundamentally requires aligning or "synchronizing" the sampling statements of the two programs which is not always possible. In this paper, we develop Clutch, a higher-order probabilistic relational separation logic that addresses this issue by supporting asynchronous probabilistic couplings. We use Clutch to develop a logical step-indexed logical relational to reason about contextual refinement and equivalence of higher-order programs written in a rich language with higher-order local state and impredicative polymorphism. Finally, we demonstrate the usefulness of our approach on a number of case studies. All the results that appear in the paper have been formalized in the Coq proof assistant using the Coquelicot library and the Iris separation logic framework. |
doi_str_mv | 10.48550/arxiv.2301.10061 |
format | Article |
fullrecord | <record><control><sourceid>proquest_arxiv</sourceid><recordid>TN_cdi_arxiv_primary_2301_10061</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2769437538</sourcerecordid><originalsourceid>FETCH-LOGICAL-a528-74561f7896e34fced7bced92034f7514220ad45e27bdac4b112dd5d44c0fc17b3</originalsourceid><addsrcrecordid>eNotj0tLw0AAhBdBsNT-AE8ueE7cZzY5llCtEKhg72FfSbfE3bjbiP33xtbLDAPDMB8ADxjlrOQcPcv4475zQhHOMUIFvgELQinOSkbIHVildEQIkUIQzukCbNbp7PUhBh-mBN9jUFK5waWT07AO0zg43yfoPNy6_mBjtovGRvhhRxnlyQUPm9A7fQ9uOzkku_r3Jdi_bPb1Nmt2r2_1uskkJ2UmGC9wJ8qqsJR12hqhZqkImpPgeP6HpGHcEqGM1ExhTIzhhjGNOo2FokvweJ29MLZjdJ8ynts_1vbCOjeero0xhq_JplN7DFP086eWiKJiVHBa0l84YFcR</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2769437538</pqid></control><display><type>article</type><title>Asynchronous Probabilistic Couplings in Higher-Order Separation Logic</title><source>arXiv.org</source><source>Free E- Journals</source><creator>Simon Oddershede Gregersen ; Aguirre, Alejandro ; Haselwarter, Philipp G ; Tassarotti, Joseph ; Birkedal, Lars</creator><creatorcontrib>Simon Oddershede Gregersen ; Aguirre, Alejandro ; Haselwarter, Philipp G ; Tassarotti, Joseph ; Birkedal, Lars</creatorcontrib><description>Probabilistic couplings are the foundation for many probabilistic relational program logics and arise when relating random sampling statements across two programs. In relational program logics, this manifests as dedicated coupling rules that, e.g., say we may reason as if two sampling statements return the same value. However, this approach fundamentally requires aligning or "synchronizing" the sampling statements of the two programs which is not always possible. In this paper, we develop Clutch, a higher-order probabilistic relational separation logic that addresses this issue by supporting asynchronous probabilistic couplings. We use Clutch to develop a logical step-indexed logical relational to reason about contextual refinement and equivalence of higher-order programs written in a rich language with higher-order local state and impredicative polymorphism. Finally, we demonstrate the usefulness of our approach on a number of case studies. All the results that appear in the paper have been formalized in the Coq proof assistant using the Coquelicot library and the Iris separation logic framework.</description><identifier>EISSN: 2331-8422</identifier><identifier>DOI: 10.48550/arxiv.2301.10061</identifier><language>eng</language><publisher>Ithaca: Cornell University Library, arXiv.org</publisher><subject>Clutches ; Computer Science - Logic in Computer Science ; Computer Science - Programming Languages ; Couplings ; Logic ; Polymorphism ; Probability theory ; Random sampling ; Separation ; Synchronism</subject><ispartof>arXiv.org, 2023-11</ispartof><rights>2023. This work is published under http://creativecommons.org/licenses/by/4.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.</rights><rights>http://creativecommons.org/licenses/by/4.0</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>228,230,780,784,885,27925</link.rule.ids><backlink>$$Uhttps://doi.org/10.1145/3632868$$DView published paper (Access to full text may be restricted)$$Hfree_for_read</backlink><backlink>$$Uhttps://doi.org/10.48550/arXiv.2301.10061$$DView paper in arXiv$$Hfree_for_read</backlink></links><search><creatorcontrib>Simon Oddershede Gregersen</creatorcontrib><creatorcontrib>Aguirre, Alejandro</creatorcontrib><creatorcontrib>Haselwarter, Philipp G</creatorcontrib><creatorcontrib>Tassarotti, Joseph</creatorcontrib><creatorcontrib>Birkedal, Lars</creatorcontrib><title>Asynchronous Probabilistic Couplings in Higher-Order Separation Logic</title><title>arXiv.org</title><description>Probabilistic couplings are the foundation for many probabilistic relational program logics and arise when relating random sampling statements across two programs. In relational program logics, this manifests as dedicated coupling rules that, e.g., say we may reason as if two sampling statements return the same value. However, this approach fundamentally requires aligning or "synchronizing" the sampling statements of the two programs which is not always possible. In this paper, we develop Clutch, a higher-order probabilistic relational separation logic that addresses this issue by supporting asynchronous probabilistic couplings. We use Clutch to develop a logical step-indexed logical relational to reason about contextual refinement and equivalence of higher-order programs written in a rich language with higher-order local state and impredicative polymorphism. Finally, we demonstrate the usefulness of our approach on a number of case studies. All the results that appear in the paper have been formalized in the Coq proof assistant using the Coquelicot library and the Iris separation logic framework.</description><subject>Clutches</subject><subject>Computer Science - Logic in Computer Science</subject><subject>Computer Science - Programming Languages</subject><subject>Couplings</subject><subject>Logic</subject><subject>Polymorphism</subject><subject>Probability theory</subject><subject>Random sampling</subject><subject>Separation</subject><subject>Synchronism</subject><issn>2331-8422</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2023</creationdate><recordtype>article</recordtype><sourceid>ABUWG</sourceid><sourceid>AFKRA</sourceid><sourceid>AZQEC</sourceid><sourceid>BENPR</sourceid><sourceid>CCPQU</sourceid><sourceid>DWQXO</sourceid><sourceid>GOX</sourceid><recordid>eNotj0tLw0AAhBdBsNT-AE8ueE7cZzY5llCtEKhg72FfSbfE3bjbiP33xtbLDAPDMB8ADxjlrOQcPcv4475zQhHOMUIFvgELQinOSkbIHVildEQIkUIQzukCbNbp7PUhBh-mBN9jUFK5waWT07AO0zg43yfoPNy6_mBjtovGRvhhRxnlyQUPm9A7fQ9uOzkku_r3Jdi_bPb1Nmt2r2_1uskkJ2UmGC9wJ8qqsJR12hqhZqkImpPgeP6HpGHcEqGM1ExhTIzhhjGNOo2FokvweJ29MLZjdJ8ynts_1vbCOjeero0xhq_JplN7DFP086eWiKJiVHBa0l84YFcR</recordid><startdate>20231114</startdate><enddate>20231114</enddate><creator>Simon Oddershede Gregersen</creator><creator>Aguirre, Alejandro</creator><creator>Haselwarter, Philipp G</creator><creator>Tassarotti, Joseph</creator><creator>Birkedal, Lars</creator><general>Cornell University Library, arXiv.org</general><scope>8FE</scope><scope>8FG</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>HCIFZ</scope><scope>L6V</scope><scope>M7S</scope><scope>PIMPY</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>PTHSS</scope><scope>AKY</scope><scope>GOX</scope></search><sort><creationdate>20231114</creationdate><title>Asynchronous Probabilistic Couplings in Higher-Order Separation Logic</title><author>Simon Oddershede Gregersen ; Aguirre, Alejandro ; Haselwarter, Philipp G ; Tassarotti, Joseph ; Birkedal, Lars</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a528-74561f7896e34fced7bced92034f7514220ad45e27bdac4b112dd5d44c0fc17b3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2023</creationdate><topic>Clutches</topic><topic>Computer Science - Logic in Computer Science</topic><topic>Computer Science - Programming Languages</topic><topic>Couplings</topic><topic>Logic</topic><topic>Polymorphism</topic><topic>Probability theory</topic><topic>Random sampling</topic><topic>Separation</topic><topic>Synchronism</topic><toplevel>online_resources</toplevel><creatorcontrib>Simon Oddershede Gregersen</creatorcontrib><creatorcontrib>Aguirre, Alejandro</creatorcontrib><creatorcontrib>Haselwarter, Philipp G</creatorcontrib><creatorcontrib>Tassarotti, Joseph</creatorcontrib><creatorcontrib>Birkedal, Lars</creatorcontrib><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Materials Science & Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Engineering Collection</collection><collection>Engineering Database</collection><collection>Publicly Available Content Database</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>Engineering Collection</collection><collection>arXiv Computer Science</collection><collection>arXiv.org</collection><jtitle>arXiv.org</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Simon Oddershede Gregersen</au><au>Aguirre, Alejandro</au><au>Haselwarter, Philipp G</au><au>Tassarotti, Joseph</au><au>Birkedal, Lars</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Asynchronous Probabilistic Couplings in Higher-Order Separation Logic</atitle><jtitle>arXiv.org</jtitle><date>2023-11-14</date><risdate>2023</risdate><eissn>2331-8422</eissn><abstract>Probabilistic couplings are the foundation for many probabilistic relational program logics and arise when relating random sampling statements across two programs. In relational program logics, this manifests as dedicated coupling rules that, e.g., say we may reason as if two sampling statements return the same value. However, this approach fundamentally requires aligning or "synchronizing" the sampling statements of the two programs which is not always possible. In this paper, we develop Clutch, a higher-order probabilistic relational separation logic that addresses this issue by supporting asynchronous probabilistic couplings. We use Clutch to develop a logical step-indexed logical relational to reason about contextual refinement and equivalence of higher-order programs written in a rich language with higher-order local state and impredicative polymorphism. Finally, we demonstrate the usefulness of our approach on a number of case studies. All the results that appear in the paper have been formalized in the Coq proof assistant using the Coquelicot library and the Iris separation logic framework.</abstract><cop>Ithaca</cop><pub>Cornell University Library, arXiv.org</pub><doi>10.48550/arxiv.2301.10061</doi><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | EISSN: 2331-8422 |
ispartof | arXiv.org, 2023-11 |
issn | 2331-8422 |
language | eng |
recordid | cdi_arxiv_primary_2301_10061 |
source | arXiv.org; Free E- Journals |
subjects | Clutches Computer Science - Logic in Computer Science Computer Science - Programming Languages Couplings Logic Polymorphism Probability theory Random sampling Separation Synchronism |
title | Asynchronous Probabilistic Couplings in Higher-Order Separation Logic |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-28T14%3A25%3A31IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_arxiv&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Asynchronous%20Probabilistic%20Couplings%20in%20Higher-Order%20Separation%20Logic&rft.jtitle=arXiv.org&rft.au=Simon%20Oddershede%20Gregersen&rft.date=2023-11-14&rft.eissn=2331-8422&rft_id=info:doi/10.48550/arxiv.2301.10061&rft_dat=%3Cproquest_arxiv%3E2769437538%3C/proquest_arxiv%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2769437538&rft_id=info:pmid/&rfr_iscdi=true |