A Program Instrumentation Framework for Automatic Verification
In deductive verification and software model checking, dealing with certain specification language constructs can be problematic when the back-end solver is not sufficiently powerful or lacks the required theories. One way to deal with this is to transform, for verification purposes, the program to...
Gespeichert in:
Veröffentlicht in: | arXiv.org 2024-12 |
---|---|
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 | Amilon, Jesper Esen, Zafer Gurov, Dilian Lidström, Christian Rümmer, Philipp Voorberg, Marten |
description | In deductive verification and software model checking, dealing with certain specification language constructs can be problematic when the back-end solver is not sufficiently powerful or lacks the required theories. One way to deal with this is to transform, for verification purposes, the program to an equivalent one not using the problematic constructs, and to reason about this equivalent program instead. In this article, we propose program instrumentation as a unifying verification paradigm that subsumes various existing ad-hoc approaches, has a clear formal correctness criterion, can be applied automatically, and can transfer back witnesses and counterexamples. We illustrate our approach on the automated verification of programs that involve quantification and aggregation operations over arrays, such as the maximum value or sum of the elements in a given segment of the array, which are known to be difficult to reason about automatically. We implement our approach in the MonoCera tool, which is tailored to the verification of programs with aggregation, and evaluate it on example programs, including SV-COMP programs. |
format | Article |
fullrecord | <record><control><sourceid>proquest</sourceid><recordid>TN_cdi_proquest_journals_3142733919</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>3142733919</sourcerecordid><originalsourceid>FETCH-proquest_journals_31427339193</originalsourceid><addsrcrecordid>eNpjYuA0MjY21LUwMTLiYOAtLs4yMDAwMjM3MjU15mSwc1QIKMpPL0rMVfDMKy4pKs1NzStJLMnMz1NwAwqmlucXZSuk5RcpOJaW5OcCJZIVwlKLMtMyk8GKeBhY0xJzilN5oTQ3g7Kba4izh25BUX5haWpxSXxWfmlRHlAq3tjQxMjc2NjS0NKYOFUA50Q4ww</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>3142733919</pqid></control><display><type>article</type><title>A Program Instrumentation Framework for Automatic Verification</title><source>Freely Accessible Journals</source><creator>Amilon, Jesper ; Esen, Zafer ; Gurov, Dilian ; Lidström, Christian ; Rümmer, Philipp ; Voorberg, Marten</creator><creatorcontrib>Amilon, Jesper ; Esen, Zafer ; Gurov, Dilian ; Lidström, Christian ; Rümmer, Philipp ; Voorberg, Marten</creatorcontrib><description>In deductive verification and software model checking, dealing with certain specification language constructs can be problematic when the back-end solver is not sufficiently powerful or lacks the required theories. One way to deal with this is to transform, for verification purposes, the program to an equivalent one not using the problematic constructs, and to reason about this equivalent program instead. In this article, we propose program instrumentation as a unifying verification paradigm that subsumes various existing ad-hoc approaches, has a clear formal correctness criterion, can be applied automatically, and can transfer back witnesses and counterexamples. We illustrate our approach on the automated verification of programs that involve quantification and aggregation operations over arrays, such as the maximum value or sum of the elements in a given segment of the array, which are known to be difficult to reason about automatically. We implement our approach in the MonoCera tool, which is tailored to the verification of programs with aggregation, and evaluate it on example programs, including SV-COMP programs.</description><identifier>EISSN: 2331-8422</identifier><language>eng</language><publisher>Ithaca: Cornell University Library, arXiv.org</publisher><subject>Arrays ; Equivalence ; Instruments ; Specification and description languages ; Verification</subject><ispartof>arXiv.org, 2024-12</ispartof><rights>2024. 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><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>780,784</link.rule.ids></links><search><creatorcontrib>Amilon, Jesper</creatorcontrib><creatorcontrib>Esen, Zafer</creatorcontrib><creatorcontrib>Gurov, Dilian</creatorcontrib><creatorcontrib>Lidström, Christian</creatorcontrib><creatorcontrib>Rümmer, Philipp</creatorcontrib><creatorcontrib>Voorberg, Marten</creatorcontrib><title>A Program Instrumentation Framework for Automatic Verification</title><title>arXiv.org</title><description>In deductive verification and software model checking, dealing with certain specification language constructs can be problematic when the back-end solver is not sufficiently powerful or lacks the required theories. One way to deal with this is to transform, for verification purposes, the program to an equivalent one not using the problematic constructs, and to reason about this equivalent program instead. In this article, we propose program instrumentation as a unifying verification paradigm that subsumes various existing ad-hoc approaches, has a clear formal correctness criterion, can be applied automatically, and can transfer back witnesses and counterexamples. We illustrate our approach on the automated verification of programs that involve quantification and aggregation operations over arrays, such as the maximum value or sum of the elements in a given segment of the array, which are known to be difficult to reason about automatically. We implement our approach in the MonoCera tool, which is tailored to the verification of programs with aggregation, and evaluate it on example programs, including SV-COMP programs.</description><subject>Arrays</subject><subject>Equivalence</subject><subject>Instruments</subject><subject>Specification and description languages</subject><subject>Verification</subject><issn>2331-8422</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2024</creationdate><recordtype>article</recordtype><sourceid>ABUWG</sourceid><sourceid>AFKRA</sourceid><sourceid>AZQEC</sourceid><sourceid>BENPR</sourceid><sourceid>CCPQU</sourceid><sourceid>DWQXO</sourceid><recordid>eNpjYuA0MjY21LUwMTLiYOAtLs4yMDAwMjM3MjU15mSwc1QIKMpPL0rMVfDMKy4pKs1NzStJLMnMz1NwAwqmlucXZSuk5RcpOJaW5OcCJZIVwlKLMtMyk8GKeBhY0xJzilN5oTQ3g7Kba4izh25BUX5haWpxSXxWfmlRHlAq3tjQxMjc2NjS0NKYOFUA50Q4ww</recordid><startdate>20241209</startdate><enddate>20241209</enddate><creator>Amilon, Jesper</creator><creator>Esen, Zafer</creator><creator>Gurov, Dilian</creator><creator>Lidström, Christian</creator><creator>Rümmer, Philipp</creator><creator>Voorberg, Marten</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></search><sort><creationdate>20241209</creationdate><title>A Program Instrumentation Framework for Automatic Verification</title><author>Amilon, Jesper ; Esen, Zafer ; Gurov, Dilian ; Lidström, Christian ; Rümmer, Philipp ; Voorberg, Marten</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-proquest_journals_31427339193</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2024</creationdate><topic>Arrays</topic><topic>Equivalence</topic><topic>Instruments</topic><topic>Specification and description languages</topic><topic>Verification</topic><toplevel>online_resources</toplevel><creatorcontrib>Amilon, Jesper</creatorcontrib><creatorcontrib>Esen, Zafer</creatorcontrib><creatorcontrib>Gurov, Dilian</creatorcontrib><creatorcontrib>Lidström, Christian</creatorcontrib><creatorcontrib>Rümmer, Philipp</creatorcontrib><creatorcontrib>Voorberg, Marten</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 (ProQuest)</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></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Amilon, Jesper</au><au>Esen, Zafer</au><au>Gurov, Dilian</au><au>Lidström, Christian</au><au>Rümmer, Philipp</au><au>Voorberg, Marten</au><format>book</format><genre>document</genre><ristype>GEN</ristype><atitle>A Program Instrumentation Framework for Automatic Verification</atitle><jtitle>arXiv.org</jtitle><date>2024-12-09</date><risdate>2024</risdate><eissn>2331-8422</eissn><abstract>In deductive verification and software model checking, dealing with certain specification language constructs can be problematic when the back-end solver is not sufficiently powerful or lacks the required theories. One way to deal with this is to transform, for verification purposes, the program to an equivalent one not using the problematic constructs, and to reason about this equivalent program instead. In this article, we propose program instrumentation as a unifying verification paradigm that subsumes various existing ad-hoc approaches, has a clear formal correctness criterion, can be applied automatically, and can transfer back witnesses and counterexamples. We illustrate our approach on the automated verification of programs that involve quantification and aggregation operations over arrays, such as the maximum value or sum of the elements in a given segment of the array, which are known to be difficult to reason about automatically. We implement our approach in the MonoCera tool, which is tailored to the verification of programs with aggregation, and evaluate it on example programs, including SV-COMP programs.</abstract><cop>Ithaca</cop><pub>Cornell University Library, arXiv.org</pub><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | EISSN: 2331-8422 |
ispartof | arXiv.org, 2024-12 |
issn | 2331-8422 |
language | eng |
recordid | cdi_proquest_journals_3142733919 |
source | Freely Accessible Journals |
subjects | Arrays Equivalence Instruments Specification and description languages Verification |
title | A Program Instrumentation Framework for Automatic Verification |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-15T07%3A12%3A40IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=document&rft.atitle=A%20Program%20Instrumentation%20Framework%20for%20Automatic%20Verification&rft.jtitle=arXiv.org&rft.au=Amilon,%20Jesper&rft.date=2024-12-09&rft.eissn=2331-8422&rft_id=info:doi/&rft_dat=%3Cproquest%3E3142733919%3C/proquest%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=3142733919&rft_id=info:pmid/&rfr_iscdi=true |