ReLoC Reloaded: A Mechanized Relational Logic for Fine-Grained Concurrency and Logical Atomicity
We present a new version of ReLoC: a relational separation logic for proving refinements of programs with higher-order state, fine-grained concurrency, polymorphism and recursive types. The core of ReLoC is its refinement judgment $e \precsim e' : \tau$, which states that a program $e$ refines...
Uložené v:
| Vydané v: | Logical methods in computer science Ročník 17, Issue 3 |
|---|---|
| Hlavní autori: | , , |
| Médium: | Journal Article |
| Jazyk: | English |
| Vydavateľské údaje: |
Logical Methods in Computer Science e.V
01.01.2021
|
| Predmet: | |
| ISSN: | 1860-5974, 1860-5974 |
| On-line prístup: | Získať plný text |
| Tagy: |
Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
|
| Abstract | We present a new version of ReLoC: a relational separation logic for proving
refinements of programs with higher-order state, fine-grained concurrency,
polymorphism and recursive types. The core of ReLoC is its refinement judgment
$e \precsim e' : \tau$, which states that a program $e$ refines a program $e'$
at type $\tau$. ReLoC provides type-directed structural rules and symbolic
execution rules in separation-logic style for manipulating the judgment,
whereas in prior work on refinements for languages with higher-order state and
concurrency, such proofs were carried out by unfolding the judgment into its
definition in the model. ReLoC's abstract proof rules make it simpler to carry
out refinement proofs, and enable us to generalize the notion of logically
atomic specifications to the relational case, which we call logically atomic
relational specifications.
We build ReLoC on top of the Iris framework for separation logic in Coq,
allowing us to leverage features of Iris to prove soundness of ReLoC, and to
carry out refinement proofs in ReLoC. We implement tactics for interactive
proofs in ReLoC, allowing us to mechanize several case studies in Coq, and
thereby demonstrate the practicality of ReLoC.
ReLoC Reloaded extends ReLoC (LICS'18) with various technical improvements, a
new Coq mechanization, and support for Iris's prophecy variables. The latter
allows us to carry out refinement proofs that involve reasoning about the
program's future. We also expand ReLoC's notion of logically atomic relational
specifications with a new flavor based on the HOCAP pattern by Svendsen et al. |
|---|---|
| AbstractList | We present a new version of ReLoC: a relational separation logic for proving refinements of programs with higher-order state, fine-grained concurrency, polymorphism and recursive types. The core of ReLoC is its refinement judgment $e \precsim e' : \tau$, which states that a program $e$ refines a program $e'$ at type $\tau$. ReLoC provides type-directed structural rules and symbolic execution rules in separation-logic style for manipulating the judgment, whereas in prior work on refinements for languages with higher-order state and concurrency, such proofs were carried out by unfolding the judgment into its definition in the model. ReLoC's abstract proof rules make it simpler to carry out refinement proofs, and enable us to generalize the notion of logically atomic specifications to the relational case, which we call logically atomic relational specifications. We build ReLoC on top of the Iris framework for separation logic in Coq, allowing us to leverage features of Iris to prove soundness of ReLoC, and to carry out refinement proofs in ReLoC. We implement tactics for interactive proofs in ReLoC, allowing us to mechanize several case studies in Coq, and thereby demonstrate the practicality of ReLoC. ReLoC Reloaded extends ReLoC (LICS'18) with various technical improvements, a new Coq mechanization, and support for Iris's prophecy variables. The latter allows us to carry out refinement proofs that involve reasoning about the program's future. We also expand ReLoC's notion of logically atomic relational specifications with a new flavor based on the HOCAP pattern by Svendsen et al. We present a new version of ReLoC: a relational separation logic for proving refinements of programs with higher-order state, fine-grained concurrency, polymorphism and recursive types. The core of ReLoC is its refinement judgment $e \precsim e' : \tau$, which states that a program $e$ refines a program $e'$ at type $\tau$. ReLoC provides type-directed structural rules and symbolic execution rules in separation-logic style for manipulating the judgment, whereas in prior work on refinements for languages with higher-order state and concurrency, such proofs were carried out by unfolding the judgment into its definition in the model. ReLoC's abstract proof rules make it simpler to carry out refinement proofs, and enable us to generalize the notion of logically atomic specifications to the relational case, which we call logically atomic relational specifications. We build ReLoC on top of the Iris framework for separation logic in Coq, allowing us to leverage features of Iris to prove soundness of ReLoC, and to carry out refinement proofs in ReLoC. We implement tactics for interactive proofs in ReLoC, allowing us to mechanize several case studies in Coq, and thereby demonstrate the practicality of ReLoC. ReLoC Reloaded extends ReLoC (LICS'18) with various technical improvements, a new Coq mechanization, and support for Iris's prophecy variables. The latter allows us to carry out refinement proofs that involve reasoning about the program's future. We also expand ReLoC's notion of logically atomic relational specifications with a new flavor based on the HOCAP pattern by Svendsen et al. |
| Author | Birkedal, Lars Frumin, Dan Krebbers, Robbert |
| Author_xml | – sequence: 1 givenname: Dan surname: Frumin fullname: Frumin, Dan – sequence: 2 givenname: Robbert surname: Krebbers fullname: Krebbers, Robbert – sequence: 3 givenname: Lars surname: Birkedal fullname: Birkedal, Lars |
| BookMark | eNpNkE1Lw0AQhhepYK39Ad5y1EN0v7IfvZViqxARip7Xze6kbkmzsomH-utNWxHnMsPLywPzXKJRG1tA6JrgOy6oVvfNznU5kTdspm8ppuQMjYkSOC-05KN_9wWadt0WD8MYUVSM0fsayrjI1tBE68HPsnn2DO7DtuEb_CG2fYitbbIyboLL6piyZWghXyU7LJ8tYuu-UoLW7TPb-lNtqM_7uAsu9PsrdF7bpoPp756gt-XD6-IxL19WT4t5mTuGRZ-zonIaoGbEU8u4JAWTwKUl2ulKCK8qL521vGKYU6sFKbh3UgvPoPCMSDZBTyeuj3ZrPlPY2bQ30QZzDGLaGJv64Boww_MgKuZwJRUHDAp7yRVVfHDCKSYDi5xYLsWuS1D_8Qg2R-PmYNwQaZjR5mCc_QBIkHU7 |
| ContentType | Journal Article |
| DBID | AAYXX CITATION DOA |
| DOI | 10.46298/lmcs-17(3:9)2021 |
| DatabaseName | CrossRef DOAJ Open Access Full Text |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| Database_xml | – sequence: 1 dbid: DOA name: DOAJ Directory of Open Access Journals url: https://www.doaj.org/ sourceTypes: Open Website |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1860-5974 |
| ExternalDocumentID | oai_doaj_org_article_033e6b3c0b784e0e80d7482843184201 10_46298_lmcs_17_3_9_2021 |
| GroupedDBID | .4S .DC 29L 2WC 5GY 5VS AAFWJ AAYXX ADBBV ADMLS ADQAK AENEX AFPKN ALMA_UNASSIGNED_HOLDINGS ARCSS BCNDV CITATION EBS EJD FRP GROUPED_DOAJ J9A KQ8 MK~ ML~ M~E OK1 OVT P2P TR2 TUS XSB |
| ID | FETCH-LOGICAL-c306t-35bc9eef31d2a3471537e47a19c9b66d8bd7caa4b3042a96154dc796d3e5d3173 |
| IEDL.DBID | DOA |
| ISICitedReferencesCount | 14 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000679383000003&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 1860-5974 |
| IngestDate | Fri Oct 03 12:52:01 EDT 2025 Sat Nov 29 06:21:51 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Language | English |
| License | https://creativecommons.org/licenses/by/4.0 |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c306t-35bc9eef31d2a3471537e47a19c9b66d8bd7caa4b3042a96154dc796d3e5d3173 |
| OpenAccessLink | https://doaj.org/article/033e6b3c0b784e0e80d7482843184201 |
| ParticipantIDs | doaj_primary_oai_doaj_org_article_033e6b3c0b784e0e80d7482843184201 crossref_primary_10_46298_lmcs_17_3_9_2021 |
| PublicationCentury | 2000 |
| PublicationDate | 2021-01-01 |
| PublicationDateYYYYMMDD | 2021-01-01 |
| PublicationDate_xml | – month: 01 year: 2021 text: 2021-01-01 day: 01 |
| PublicationDecade | 2020 |
| PublicationTitle | Logical methods in computer science |
| PublicationYear | 2021 |
| Publisher | Logical Methods in Computer Science e.V |
| Publisher_xml | – name: Logical Methods in Computer Science e.V |
| SSID | ssj0000331826 |
| Score | 2.303008 |
| Snippet | We present a new version of ReLoC: a relational separation logic for proving
refinements of programs with higher-order state, fine-grained concurrency,... We present a new version of ReLoC: a relational separation logic for proving refinements of programs with higher-order state, fine-grained concurrency,... |
| SourceID | doaj crossref |
| SourceType | Open Website Index Database |
| SubjectTerms | computer science - logic in computer science computer science - programming languages d.2.4 f.3.1 |
| Title | ReLoC Reloaded: A Mechanized Relational Logic for Fine-Grained Concurrency and Logical Atomicity |
| URI | https://doaj.org/article/033e6b3c0b784e0e80d7482843184201 |
| Volume | 17, Issue 3 |
| WOSCitedRecordID | wos000679383000003&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: PRVAON databaseName: DOAJ Directory of Open Access Journals customDbUrl: eissn: 1860-5974 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000331826 issn: 1860-5974 databaseCode: DOA dateStart: 20040101 isFulltext: true titleUrlDefault: https://www.doaj.org/ providerName: Directory of Open Access Journals – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 1860-5974 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000331826 issn: 1860-5974 databaseCode: M~E dateStart: 20040101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrV09T8MwELVQxcDCN-JbHhgAKWoSO3HcDSoKA0UIgcRmbN9FqlRSVAoSDPx2zkmLysTCkiE6OdZdknvP9t1j7EjI0lNec5F3mggK5mVkS9BRCmmQn3KltLYWm1A3N8Xjo76dk_oKZ8Ka9sCN49qxEJg74WOnCokxFjEoSTSBEl8h06ZyK1Z6jkzV_2AhAnButjFlnuqiPXz2r1GijkVHnxDjT34lorl-_XVi6a2y5Ski5GfNTNbYAlbrbGWmtsCnH98Ge7rD61GX3-FwZAGhw894H0Pd7uATgc8OtdFIQT7ZcwKjvEcQMroMIhBk0R1Vvm7G5D-4raAxCw-ehMJkAuOb7KF3cd-9iqb6CJEnoD-JROa8RixFAqkVlGUyoVAqm2ivXZ5D4UB5a6ULSxZWE3aR4JXOQWAGhBvEFmtVowq3GQdZQmjVDi5DabXSVgifEXVWKRBmLHbY6cxZ5qVpg2GIPtSeNcGzJlFGGG2CZ3fYeXDnj2HoYF3foLiaaVzNX3Hd_Y9B9thSmFCzZLLPWpPxGx6wRf8-GbyOD-tXhq79r4tvl8DE5w |
| linkProvider | Directory of Open Access Journals |
| 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=ReLoC+Reloaded%3A+A+Mechanized+Relational+Logic+for+Fine-Grained+Concurrency+and+Logical+Atomicity&rft.jtitle=Logical+methods+in+computer+science&rft.au=Dan+Frumin&rft.au=Robbert+Krebbers&rft.au=Lars+Birkedal&rft.date=2021-01-01&rft.pub=Logical+Methods+in+Computer+Science+e.V&rft.eissn=1860-5974&rft.volume=17%2C+Issue+3&rft_id=info:doi/10.46298%2Flmcs-17%283%3A9%292021&rft.externalDBID=DOA&rft.externalDocID=oai_doaj_org_article_033e6b3c0b784e0e80d7482843184201 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1860-5974&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1860-5974&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1860-5974&client=summon |