Loading…

Abstract semantic diffing of evolving concurrent programs

We present an approach for comparing two closely related concurrent programs, whose goal is to give feedback about interesting differences without relying on user-provided assertions. This approach compares two programs in terms of cross-thread interferences and data-flow, under a parametrized abstr...

Full description

Saved in:
Bibliographic Details
Published in:Formal methods in system design 2019-08, Vol.54 (1), p.4-26
Main Authors: Bouajjani, Ahmed, Enea, Constantin, Lahiri, Shuvendu K.
Format: Article
Language:English
Subjects:
Citations: Items that this one cites
Items that cite this one
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
cited_by cdi_FETCH-LOGICAL-c316t-ef85a87fb87968a6a2fb481be47215b4dcf0313ef507f4e3451531119e97592d3
cites cdi_FETCH-LOGICAL-c316t-ef85a87fb87968a6a2fb481be47215b4dcf0313ef507f4e3451531119e97592d3
container_end_page 26
container_issue 1
container_start_page 4
container_title Formal methods in system design
container_volume 54
creator Bouajjani, Ahmed
Enea, Constantin
Lahiri, Shuvendu K.
description We present an approach for comparing two closely related concurrent programs, whose goal is to give feedback about interesting differences without relying on user-provided assertions. This approach compares two programs in terms of cross-thread interferences and data-flow, under a parametrized abstraction which can detect any difference in the limit. We introduce a partial order relation between these abstractions such that a program change that leads to a “smaller” abstraction is more likely to be regression-free from the perspective of concurrency. On the other hand, incomparable or bigger abstractions, which are an indication of introducing new, possibly undesired, behaviors, lead to succinct explanations of the semantic differences.
doi_str_mv 10.1007/s10703-018-0322-2
format article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2283389897</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2283389897</sourcerecordid><originalsourceid>FETCH-LOGICAL-c316t-ef85a87fb87968a6a2fb481be47215b4dcf0313ef507f4e3451531119e97592d3</originalsourceid><addsrcrecordid>eNp1kEFLAzEQhYMoWKs_wNuC5-jMZLNJjqWoFQpe9Byy2aRsaXdrsi34792ygidPM4f3vQcfY_cIjwignjKCAsEBNQdBxOmCzVAq4hqBLtkMDElutKyu2U3OWwDQWIkZM4s6D8n5ochh77qh9UXTxth2m6KPRTj1u9P5933njymFbigOqd8kt8-37Cq6XQ53v3fOPl-eP5Yrvn5_fVsu1twLrAYeopZOq1hrZSrtKkexLjXWoVSEsi4bH0GgCFGCimUQpUQpENEEo6ShRszZw9Q7Dn8dQx7stj-mbpy0RFoIbbRRYwqnlE99zilEe0jt3qVvi2DPhuxkyI6G7NmQpZGhicljttuE9Nf8P_QDeaBnuQ</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2283389897</pqid></control><display><type>article</type><title>Abstract semantic diffing of evolving concurrent programs</title><source>Springer Nature</source><creator>Bouajjani, Ahmed ; Enea, Constantin ; Lahiri, Shuvendu K.</creator><creatorcontrib>Bouajjani, Ahmed ; Enea, Constantin ; Lahiri, Shuvendu K.</creatorcontrib><description>We present an approach for comparing two closely related concurrent programs, whose goal is to give feedback about interesting differences without relying on user-provided assertions. This approach compares two programs in terms of cross-thread interferences and data-flow, under a parametrized abstraction which can detect any difference in the limit. We introduce a partial order relation between these abstractions such that a program change that leads to a “smaller” abstraction is more likely to be regression-free from the perspective of concurrency. On the other hand, incomparable or bigger abstractions, which are an indication of introducing new, possibly undesired, behaviors, lead to succinct explanations of the semantic differences.</description><identifier>ISSN: 0925-9856</identifier><identifier>EISSN: 1572-8102</identifier><identifier>DOI: 10.1007/s10703-018-0322-2</identifier><language>eng</language><publisher>New York: Springer US</publisher><subject>CAE) and Design ; Circuits and Systems ; Computer-Aided Engineering (CAD ; Concurrency ; Electrical Engineering ; Engineering ; Semantics ; Software Engineering/Programming and Operating Systems</subject><ispartof>Formal methods in system design, 2019-08, Vol.54 (1), p.4-26</ispartof><rights>Springer Science+Business Media, LLC, part of Springer Nature 2018</rights><rights>Copyright Springer Nature B.V. 2019</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c316t-ef85a87fb87968a6a2fb481be47215b4dcf0313ef507f4e3451531119e97592d3</citedby><cites>FETCH-LOGICAL-c316t-ef85a87fb87968a6a2fb481be47215b4dcf0313ef507f4e3451531119e97592d3</cites><orcidid>0000-0003-2727-8865</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27924,27925</link.rule.ids></links><search><creatorcontrib>Bouajjani, Ahmed</creatorcontrib><creatorcontrib>Enea, Constantin</creatorcontrib><creatorcontrib>Lahiri, Shuvendu K.</creatorcontrib><title>Abstract semantic diffing of evolving concurrent programs</title><title>Formal methods in system design</title><addtitle>Form Methods Syst Des</addtitle><description>We present an approach for comparing two closely related concurrent programs, whose goal is to give feedback about interesting differences without relying on user-provided assertions. This approach compares two programs in terms of cross-thread interferences and data-flow, under a parametrized abstraction which can detect any difference in the limit. We introduce a partial order relation between these abstractions such that a program change that leads to a “smaller” abstraction is more likely to be regression-free from the perspective of concurrency. On the other hand, incomparable or bigger abstractions, which are an indication of introducing new, possibly undesired, behaviors, lead to succinct explanations of the semantic differences.</description><subject>CAE) and Design</subject><subject>Circuits and Systems</subject><subject>Computer-Aided Engineering (CAD</subject><subject>Concurrency</subject><subject>Electrical Engineering</subject><subject>Engineering</subject><subject>Semantics</subject><subject>Software Engineering/Programming and Operating Systems</subject><issn>0925-9856</issn><issn>1572-8102</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2019</creationdate><recordtype>article</recordtype><recordid>eNp1kEFLAzEQhYMoWKs_wNuC5-jMZLNJjqWoFQpe9Byy2aRsaXdrsi34792ygidPM4f3vQcfY_cIjwignjKCAsEBNQdBxOmCzVAq4hqBLtkMDElutKyu2U3OWwDQWIkZM4s6D8n5ochh77qh9UXTxth2m6KPRTj1u9P5933njymFbigOqd8kt8-37Cq6XQ53v3fOPl-eP5Yrvn5_fVsu1twLrAYeopZOq1hrZSrtKkexLjXWoVSEsi4bH0GgCFGCimUQpUQpENEEo6ShRszZw9Q7Dn8dQx7stj-mbpy0RFoIbbRRYwqnlE99zilEe0jt3qVvi2DPhuxkyI6G7NmQpZGhicljttuE9Nf8P_QDeaBnuQ</recordid><startdate>20190831</startdate><enddate>20190831</enddate><creator>Bouajjani, Ahmed</creator><creator>Enea, Constantin</creator><creator>Lahiri, Shuvendu K.</creator><general>Springer US</general><general>Springer Nature B.V</general><scope>AAYXX</scope><scope>CITATION</scope><orcidid>https://orcid.org/0000-0003-2727-8865</orcidid></search><sort><creationdate>20190831</creationdate><title>Abstract semantic diffing of evolving concurrent programs</title><author>Bouajjani, Ahmed ; Enea, Constantin ; Lahiri, Shuvendu K.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c316t-ef85a87fb87968a6a2fb481be47215b4dcf0313ef507f4e3451531119e97592d3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2019</creationdate><topic>CAE) and Design</topic><topic>Circuits and Systems</topic><topic>Computer-Aided Engineering (CAD</topic><topic>Concurrency</topic><topic>Electrical Engineering</topic><topic>Engineering</topic><topic>Semantics</topic><topic>Software Engineering/Programming and Operating Systems</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Bouajjani, Ahmed</creatorcontrib><creatorcontrib>Enea, Constantin</creatorcontrib><creatorcontrib>Lahiri, Shuvendu K.</creatorcontrib><collection>CrossRef</collection><jtitle>Formal methods in system design</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Bouajjani, Ahmed</au><au>Enea, Constantin</au><au>Lahiri, Shuvendu K.</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Abstract semantic diffing of evolving concurrent programs</atitle><jtitle>Formal methods in system design</jtitle><stitle>Form Methods Syst Des</stitle><date>2019-08-31</date><risdate>2019</risdate><volume>54</volume><issue>1</issue><spage>4</spage><epage>26</epage><pages>4-26</pages><issn>0925-9856</issn><eissn>1572-8102</eissn><abstract>We present an approach for comparing two closely related concurrent programs, whose goal is to give feedback about interesting differences without relying on user-provided assertions. This approach compares two programs in terms of cross-thread interferences and data-flow, under a parametrized abstraction which can detect any difference in the limit. We introduce a partial order relation between these abstractions such that a program change that leads to a “smaller” abstraction is more likely to be regression-free from the perspective of concurrency. On the other hand, incomparable or bigger abstractions, which are an indication of introducing new, possibly undesired, behaviors, lead to succinct explanations of the semantic differences.</abstract><cop>New York</cop><pub>Springer US</pub><doi>10.1007/s10703-018-0322-2</doi><tpages>23</tpages><orcidid>https://orcid.org/0000-0003-2727-8865</orcidid></addata></record>
fulltext fulltext
identifier ISSN: 0925-9856
ispartof Formal methods in system design, 2019-08, Vol.54 (1), p.4-26
issn 0925-9856
1572-8102
language eng
recordid cdi_proquest_journals_2283389897
source Springer Nature
subjects CAE) and Design
Circuits and Systems
Computer-Aided Engineering (CAD
Concurrency
Electrical Engineering
Engineering
Semantics
Software Engineering/Programming and Operating Systems
title Abstract semantic diffing of evolving concurrent programs
url http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-07T13%3A28%3A12IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Abstract%20semantic%20diffing%20of%20evolving%20concurrent%20programs&rft.jtitle=Formal%20methods%20in%20system%20design&rft.au=Bouajjani,%20Ahmed&rft.date=2019-08-31&rft.volume=54&rft.issue=1&rft.spage=4&rft.epage=26&rft.pages=4-26&rft.issn=0925-9856&rft.eissn=1572-8102&rft_id=info:doi/10.1007/s10703-018-0322-2&rft_dat=%3Cproquest_cross%3E2283389897%3C/proquest_cross%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-c316t-ef85a87fb87968a6a2fb481be47215b4dcf0313ef507f4e3451531119e97592d3%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_pqid=2283389897&rft_id=info:pmid/&rfr_iscdi=true