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...
Saved in:
Published in: | Formal methods in system design 2019-08, Vol.54 (1), p.4-26 |
---|---|
Main Authors: | , , |
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 |