Layered and object-based game semantics
Large-scale software verification relies critically on the use of compositional languages, semantic models, specifications, and verification techniques. Recent work on certified abstraction layers synthesizes game semantics, the refinement calculus, and algebraic effects to enable the composition of...
Gespeichert in:
| Veröffentlicht in: | Proceedings of ACM on programming languages Jg. 6; H. POPL; S. 1 - 32 |
|---|---|
| Hauptverfasser: | , , , , |
| Format: | Journal Article |
| Sprache: | Englisch |
| Veröffentlicht: |
ACM
16.01.2022
|
| Schlagworte: | |
| ISSN: | 2475-1421, 2475-1421 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Abstract | Large-scale software verification relies critically on the use of compositional languages, semantic models, specifications, and verification techniques. Recent work on certified abstraction layers synthesizes game semantics, the refinement calculus, and algebraic effects to enable the composition of heterogeneous components into larger certified systems. However, in existing models of certified abstraction layers, compositionality is restricted by the lack of encapsulation of state.
In this paper, we present a novel game model for certified abstraction layers where the semantics of layer interfaces and implementations are defined solely based on their observable behaviors. Our key idea is to leverage Reddy's pioneer work on modeling the semantics of imperative languages not as functions on global states but as objects with their observable behaviors. We show that a layer interface can be modeled as an object type (i.e., a layer signature) plus an object strategy. A layer implementation is then essentially a regular map, in the sense of Reddy, from an object with the underlay signature to that with the overlay signature. A layer implementation is certified when its composition with the underlay object strategy implements the overlay object strategy. We also describe an extension that allows for non-determinism in layer interfaces.
After formulating layer implementations as regular maps between object spaces, we move to concurrency and design a notion of concurrent object space, where sequential traces may be identified modulo permutation of independent operations. We show how to express protected shared object concurrency, and a ticket lock implementation, in a simple model based on regular maps between concurrent object spaces. |
|---|---|
| AbstractList | Large-scale software verification relies critically on the use of compositional languages, semantic models, specifications, and verification techniques. Recent work on certified abstraction layers synthesizes game semantics, the refinement calculus, and algebraic effects to enable the composition of heterogeneous components into larger certified systems. However, in existing models of certified abstraction layers, compositionality is restricted by the lack of encapsulation of state. In this paper, we present a novel game model for certified abstraction layers where the semantics of layer interfaces and implementations are defined solely based on their observable behaviors. Our key idea is to leverage Reddy's pioneer work on modeling the semantics of imperative languages not as functions on global states but as objects with their observable behaviors. We show that a layer interface can be modeled as an object type (i.e., a layer signature) plus an object strategy. A layer implementation is then essentially a regular map, in the sense of Reddy, from an object with the underlay signature to that with the overlay signature. A layer implementation is certified when its composition with the underlay object strategy implements the overlay object strategy. We also describe an extension that allows for non-determinism in layer interfaces. After formulating layer implementations as regular maps between object spaces, we move to concurrency and design a notion of concurrent object space, where sequential traces may be identified modulo permutation of independent operations. We show how to express protected shared object concurrency, and a ticket lock implementation, in a simple model based on regular maps between concurrent object spaces. Large-scale software verification relies critically on the use of compositional languages, semantic models, specifications, and verification techniques. Recent work on certified abstraction layers synthesizes game semantics, the refinement calculus, and algebraic effects to enable the composition of heterogeneous components into larger certified systems. However, in existing models of certified abstraction layers, compositionality is restricted by the lack of encapsulation of state. In this paper, we present a novel game model for certified abstraction layers where the semantics of layer interfaces and implementations are defined solely based on their observable behaviors. Our key idea is to leverage Reddy's pioneer work on modeling the semantics of imperative languages not as functions on global states but as objects with their observable behaviors. We show that a layer interface can be modeled as an object type (i.e., a layer signature) plus an object strategy. A layer implementation is then essentially a regular map, in the sense of Reddy, from an object with the underlay signature to that with the overlay signature. A layer implementation is certified when its composition with the underlay object strategy implements the overlay object strategy. We also describe an extension that allows for non-determinism in layer interfaces. After formulating layer implementations as regular maps between object spaces, we move to concurrency and design a notion of concurrent object space, where sequential traces may be identified modulo permutation of independent operations. We show how to express protected shared object concurrency, and a ticket lock implementation, in a simple model based on regular maps between concurrent object spaces. |
| Author | Koenig, Jérémie Oliveira Vale, Arthur Shao, Zhong Stefanesco, Léo Melliès, Paul-André |
| Author_xml | – sequence: 1 givenname: Arthur orcidid: 0000-0003-1091-7560 surname: Oliveira Vale fullname: Oliveira Vale, Arthur organization: Yale University, USA – sequence: 2 givenname: Paul-André orcidid: 0000-0001-6180-2275 surname: Melliès fullname: Melliès, Paul-André organization: CNRS, France / Université de Paris, France – sequence: 3 givenname: Zhong orcidid: 0000-0001-8184-7649 surname: Shao fullname: Shao, Zhong organization: Yale University, USA – sequence: 4 givenname: Jérémie orcidid: 0000-0002-3168-5925 surname: Koenig fullname: Koenig, Jérémie organization: Yale University, USA – sequence: 5 givenname: Léo orcidid: 0000-0002-4719-2922 surname: Stefanesco fullname: Stefanesco, Léo organization: MPI-SWS, Germany |
| BackLink | https://inria.hal.science/hal-03456034$$DView record in HAL |
| BookMark | eNplkEtLAzEUhYNUsNbiX5hdcRHNzWPSLEvRVhhwo-twJ5PRlHlIMgj9987QIqKL--Dw3cPlXJNZ13eekFtg9wBSPQhp1pqJCzLnUisKksPs135FlikdGGNghFwLMyerAo8--irDrsr68uDdQEtMo_COrc-Sb7Ebgks35LLGJvnleS7I29Pj63ZPi5fd83ZTUMcNH2iOXHuOtal0xbQ2ueAAynitcwmeO416_A9LKRmUCh0op_yoTaWxRrEgdyffD2zsZwwtxqPtMdj9prCTxoRU-di-YGRXJ9bFPqXo658DYHaKw57jGEn6h3RhwCH03RAxNP_4bwNrXx4 |
| CitedBy_id | crossref_primary_10_1145_3498703 crossref_primary_10_1145_3571220 crossref_primary_10_1145_3571231 crossref_primary_10_1017_S0956796825100105 crossref_primary_10_1145_3571254 crossref_primary_10_1145_3704900 crossref_primary_10_1145_3689792 crossref_primary_10_1145_3643668 |
| Cites_doi | 10.1145/2980983.2908100 10.1007/BF01304852 10.1016/j.entcs.2005.11.060 10.1016/0304-3975(87)90045-4 10.1145/3453483.3454097 10.1145/2908080.2908101 10.1016/S0304-3975(98)00360-0 10.1016/j.entcs.2013.09.020 10.1007/BF01806032 10.1145/3360562 10.1016/j.tcs.2006.12.034 10.1007/978-3-642-00590-9_7 10.1142/9789814261456_0001 10.1007/978-1-4757-3851-3_10 10.1145/3110268 10.1006/inco.2001.2927 10.1098/rsta.2016.0331 10.1145/3371088 10.1145/3192366.3192381 10.1007/978-3-642-19718-5_1 10.1145/3209108.3209116 10.1145/3356903 10.1016/j.jlamp.2019.01.002 10.1145/2815400.2815402 10.1145/2676726.2676970 10.1145/3373718.3394799 10.1145/3498703 10.1145/78969.78972 10.1016/0168-0072(92)90073-9 10.1145/3373718.3394762 10.1007/978-1-4612-1674-2 10.1006/inco.2000.2930 10.1145/1859204.1859226 10.1016/j.entcs.2010.08.014 10.1016/j.apal.2007.10.005 10.1145/2676726.2676975 10.1006/inco.2000.2917 10.1016/B978-0-12-374957-4.00010-4 10.1145/2535838.2535880 10.1109/LICS.1994.316055 10.1145/1538788.1538814 10.1007/3-540-45315-6_1 |
| ContentType | Journal Article |
| Copyright | Distributed under a Creative Commons Attribution 4.0 International License |
| Copyright_xml | – notice: Distributed under a Creative Commons Attribution 4.0 International License |
| DBID | AAYXX CITATION 1XC VOOES |
| DOI | 10.1145/3498703 |
| DatabaseName | CrossRef Hyper Article en Ligne (HAL) Hyper Article en Ligne (HAL) (Open Access) |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science Mathematics |
| EISSN | 2475-1421 |
| EndPage | 32 |
| ExternalDocumentID | oai:HAL:hal-03456034v1 10_1145_3498703 |
| GroupedDBID | AAKMM AAYFX AAYXX ACM AEFXT AEJOY AIKLT AKRVB ALMA_UNASSIGNED_HOLDINGS CITATION GUFHI LHSKQ M~E OK1 ROL 1XC VOOES |
| ID | FETCH-LOGICAL-c292t-6a27e2af9d7d07796321159e77641e2c7a7870ab4401b5ac15c5ea78ea787afa3 |
| ISICitedReferencesCount | 6 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000777820900043&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 Oct 14 20:39:08 EDT 2025 Tue Nov 18 20:41:49 EST 2025 Sat Nov 29 07:53:19 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | POPL |
| Keywords | certified abstraction layers Linear logic Software and its engineering → Correctness object-based semantics program refinement CCS Concepts: • Theory of computation → Program verification Program specifications Program semantics Logic and verification game semantics Abstraction |
| Language | English |
| License | Distributed under a Creative Commons Attribution 4.0 International License: http://creativecommons.org/licenses/by/4.0 |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-c292t-6a27e2af9d7d07796321159e77641e2c7a7870ab4401b5ac15c5ea78ea787afa3 |
| ORCID | 0000-0003-1091-7560 0000-0002-3168-5925 0000-0001-8184-7649 0000-0002-4719-2922 0000-0001-6180-2275 |
| OpenAccessLink | https://inria.hal.science/hal-03456034 |
| PageCount | 32 |
| ParticipantIDs | hal_primary_oai_HAL_hal_03456034v1 crossref_primary_10_1145_3498703 crossref_citationtrail_10_1145_3498703 |
| PublicationCentury | 2000 |
| PublicationDate | 2022-01-16 |
| PublicationDateYYYYMMDD | 2022-01-16 |
| PublicationDate_xml | – month: 01 year: 2022 text: 2022-01-16 day: 16 |
| PublicationDecade | 2020 |
| PublicationTitle | Proceedings of ACM on programming languages |
| PublicationYear | 2022 |
| Publisher | ACM |
| Publisher_xml | – name: ACM |
| References | e_1_2_2_24_1 Reddy Uday S. (e_1_2_2_49_1) 2012 e_1_2_2_6_1 e_1_2_2_20_1 O’Hearn Peter W. (e_1_2_2_39_1) 2004 e_1_2_2_2_1 e_1_2_2_41_1 Filipović Ivana (e_1_2_2_17_1) e_1_2_2_43_1 e_1_2_2_8_1 e_1_2_2_28_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 Abramsky Samson (e_1_2_2_4_1) Retoré Christian (e_1_2_2_50_1) e_1_2_2_30_1 e_1_2_2_51_1 e_1_2_2_19_1 e_1_2_2_32_1 e_1_2_2_53_1 e_1_2_2_34_1 e_1_2_2_15_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 Reddy Uday S. (e_1_2_2_45_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_46_1 Gu Ronghui (e_1_2_2_22_1) 2016 e_1_2_2_14_1 e_1_2_2_37_1 Melliès Paul-André (e_1_2_2_36_1) e_1_2_2_10_1 e_1_2_2_52_1 e_1_2_2_31_1 e_1_2_2_18_1 e_1_2_2_33_1 e_1_2_2_16_1 e_1_2_2_35_1 Koenig Jérémie (e_1_2_2_27_1) 2021 Cerone Andrea (e_1_2_2_12_1) |
| References_xml | – ident: e_1_2_2_16_1 doi: 10.1145/2980983.2908100 – ident: e_1_2_2_26_1 doi: 10.1007/BF01304852 – ident: e_1_2_2_9_1 doi: 10.1016/j.entcs.2005.11.060 – ident: e_1_2_2_19_1 doi: 10.1016/0304-3975(87)90045-4 – volume-title: Interactive Models of Computation and Program Behaviour, Panoramas et Synthèses 27. Société Mathématique de France ident: e_1_2_2_36_1 – ident: e_1_2_2_29_1 doi: 10.1145/3453483.3454097 – volume-title: A Linear Logic Model of State. Dept. of Computer Science ident: e_1_2_2_45_1 – volume-title: Pomset logic: A non-commutative extension of classical linear logic ident: e_1_2_2_50_1 – ident: e_1_2_2_13_1 doi: 10.1145/2908080.2908101 – ident: e_1_2_2_40_1 doi: 10.1016/S0304-3975(98)00360-0 – volume-title: Game Semantics ident: e_1_2_2_4_1 – ident: e_1_2_2_48_1 doi: 10.1016/j.entcs.2013.09.020 – ident: e_1_2_2_46_1 doi: 10.1007/BF01806032 – ident: e_1_2_2_53_1 doi: 10.1145/3360562 – ident: e_1_2_2_10_1 doi: 10.1016/j.tcs.2006.12.034 – ident: e_1_2_2_43_1 doi: 10.1007/978-3-642-00590-9_7 – ident: e_1_2_2_32_1 doi: 10.1142/9789814261456_0001 – ident: e_1_2_2_3_1 doi: 10.1007/978-1-4757-3851-3_10 – ident: e_1_2_2_15_1 doi: 10.1145/3110268 – ident: e_1_2_2_47_1 doi: 10.1006/inco.2001.2927 – volume-title: Proceedings of the Fourth International Conference on Applied Category Theory, Kohei Kishida (Ed.) (ACT year: 2021 ident: e_1_2_2_27_1 – ident: e_1_2_2_6_1 doi: 10.1098/rsta.2016.0331 – ident: e_1_2_2_31_1 doi: 10.1145/3371088 – ident: e_1_2_2_23_1 doi: 10.1145/3192366.3192381 – ident: e_1_2_2_5_1 doi: 10.1007/978-3-642-19718-5_1 – ident: e_1_2_2_1_1 – ident: e_1_2_2_33_1 doi: 10.1145/3209108.3209116 – volume-title: Parameterised Linearisability ident: e_1_2_2_12_1 – volume-title: Concurrency and Local Reasoning. In CONCUR 2004 - Concurrency Theory, Philippa Gardner and Nobuko Yoshida (Eds.). Springer Berlin Heidelberg year: 2004 ident: e_1_2_2_39_1 – ident: e_1_2_2_21_1 doi: 10.1145/3356903 – volume-title: Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation (OSDI’16) year: 2016 ident: e_1_2_2_22_1 – ident: e_1_2_2_38_1 doi: 10.1016/j.jlamp.2019.01.002 – ident: e_1_2_2_14_1 doi: 10.1145/2815400.2815402 – ident: e_1_2_2_35_1 doi: 10.1145/2676726.2676970 – ident: e_1_2_2_28_1 doi: 10.1145/3373718.3394799 – ident: e_1_2_2_41_1 doi: 10.1145/3498703 – ident: e_1_2_2_24_1 doi: 10.1145/78969.78972 – volume-title: Abstraction for Concurrent Objects ident: e_1_2_2_17_1 – ident: e_1_2_2_8_1 doi: 10.1016/0168-0072(92)90073-9 – volume-title: Dunphy year: 2012 ident: e_1_2_2_49_1 – ident: e_1_2_2_34_1 doi: 10.1145/3373718.3394762 – ident: e_1_2_2_7_1 doi: 10.1007/978-1-4612-1674-2 – ident: e_1_2_2_2_1 doi: 10.1006/inco.2000.2930 – ident: e_1_2_2_52_1 doi: 10.1145/1859204.1859226 – ident: e_1_2_2_11_1 doi: 10.1016/j.entcs.2010.08.014 – ident: e_1_2_2_18_1 doi: 10.1016/j.apal.2007.10.005 – ident: e_1_2_2_20_1 doi: 10.1145/2676726.2676975 – ident: e_1_2_2_25_1 doi: 10.1006/inco.2000.2917 – ident: e_1_2_2_51_1 doi: 10.1016/B978-0-12-374957-4.00010-4 – ident: e_1_2_2_37_1 doi: 10.1145/2535838.2535880 – ident: e_1_2_2_44_1 doi: 10.1109/LICS.1994.316055 – ident: e_1_2_2_30_1 doi: 10.1145/1538788.1538814 – ident: e_1_2_2_42_1 doi: 10.1007/3-540-45315-6_1 |
| SSID | ssj0001934839 |
| Score | 2.2313652 |
| Snippet | Large-scale software verification relies critically on the use of compositional languages, semantic models, specifications, and verification techniques. Recent... |
| SourceID | hal crossref |
| SourceType | Open Access Repository Enrichment Source Index Database |
| StartPage | 1 |
| SubjectTerms | Algebraic Geometry Algebraic Topology Category Theory Computation and Language Computer Science Computer Science and Game Theory Formal Languages and Automata Theory Logic Logic in Computer Science Mathematical Software Mathematics Programming Languages Quantum Algebra |
| Title | Layered and object-based game semantics |
| URI | https://inria.hal.science/hal-03456034 |
| Volume | 6 |
| WOSCitedRecordID | wos000777820900043&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/eLvHCXMwtV3NbhMxELbSwoEL_4jSglYIwSEy7HrX6_gYVa16SNocCqq4RF6vt4mUbKokjcqlL8BLd8b2ukuLBBw4xIom9irxTGbGM994CPmQZWkutRS0NJxR8G8LKjU31BgtiqQqmIhL22xCHB_3zs7kqNP52dTCbGairntXV_Liv7IaaMBsLJ39B3aHhwIB3gPTYQS2w_hXjB-oH9h_02YFFgWGWSiaqrJ7ruamuzJz2MsG4u690lGwYhbY0d8fYg7BQ7fmGExowprBAz-ZgZqcLlX3mwck95fryWVA-g7xnk-bhO-tGgAiRfCkS8yHuM5E2VDt98nCW1BbhWPqqcMJu9l-0Xxq2jEKhmAP6koonSpjmeA0yVwt9GfzG5rXxXlL5EYno0FLtSYtG-1Cove1f4YXZaSZBCWU3hq4Jql_x-4FNKKrzeZjv3CLPGCCS8QHDq9bATuZZj3bmS58c1eEjWu_-LW_eDdbkyY4b52V06fksT9lRH0nHc9Ix9TPyZOmg0fkFfoL8skLSwTCErWFJUJhiYKwvCRfDw9O94-ob51BNZNsTXPFhGGqkqUoYyFAy8JBn0sjRJ4lhmmhUFGrIoPjdcGVTjj8QYGGL6Eqlb4i2_WiNq9JlJSxKvNYVyVXmAZXRcWrXOhcFLEoVbVDPjY_eaz9vfLY3mQ2vrOvOyQKEy_cVSr3p7yHPQuf4tXnR_3BGGlxCq4-DJvkzZ-fs0se3YrhHtleLy_NW_JQb9bT1fKd5esNWwJs-g |
| 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=Layered+and+object-based+game+semantics&rft.jtitle=Proceedings+of+ACM+on+programming+languages&rft.au=Oliveira+Vale%2C+Arthur&rft.au=Melli%C3%A8s%2C+Paul-Andr%C3%A9&rft.au=Shao%2C+Zhong&rft.au=Koenig%2C+J%C3%A9r%C3%A9mie&rft.date=2022-01-16&rft.issn=2475-1421&rft.eissn=2475-1421&rft.volume=6&rft.issue=POPL&rft.spage=1&rft.epage=32&rft_id=info:doi/10.1145%2F3498703&rft.externalDBID=n%2Fa&rft.externalDocID=10_1145_3498703 |
| 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 |