Mechanically verifying concurrent programs with the Boyer-Moore prover
A proof system suitable for the mechanical verification of concurrent programs is described. This proof system is based on Unity, and may be used to specify and verify both safety and liveness properties. However, it is defined with respect to an operational semantics of the transition system model...
Gespeichert in:
Veröffentlicht in: | IEEE transactions on software engineering 1990-09, Vol.16 (9), p.1005-1023 |
---|---|
1. Verfasser: | |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 1023 |
---|---|
container_issue | 9 |
container_start_page | 1005 |
container_title | IEEE transactions on software engineering |
container_volume | 16 |
creator | Goldschlag, D.M. |
description | A proof system suitable for the mechanical verification of concurrent programs is described. This proof system is based on Unity, and may be used to specify and verify both safety and liveness properties. However, it is defined with respect to an operational semantics of the transition system model of concurrency. Proof rules are simply theorems of this operational semantics. This methodology makes a clear distinction between the theorems in the proof system and the logical inference rules and syntax which define the underlying logic. Since this proof system essentially encodes Unity in another sound logic, and this encoding has been mechanically verified, this encoding proves the soundness of this formalization of Unity. This proof system has been mechanically verified by the Boyer-Moore prover. This proof system has been used to mechanically verify the correctness of a distributed algorithm that computes the minimum node value in a tree.< > |
doi_str_mv | 10.1109/32.58787 |
format | Article |
fullrecord | <record><control><sourceid>proquest_RIE</sourceid><recordid>TN_cdi_proquest_journals_195583051</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>58787</ieee_id><sourcerecordid>25719022</sourcerecordid><originalsourceid>FETCH-LOGICAL-c331t-cd46388eda5d96504e3a63a945739be95c3864ba73485f34276087c885363c263</originalsourceid><addsrcrecordid>eNpdkMFLwzAUh4MoOKfg1VsRFC-dSV7TJEcdToUNL3ouWfa6ZXTtTFql_72ZEwVP7_D73u89PkLOGR0xRvUt8JFQUskDMmAadAqC00MyoFSrVAilj8lJCGtKqZBSDMhkhnZlamdNVfXJB3pX9q5eJrapbec91m2y9c3Sm01IPl27StoVJvdNjz6dNY3HXRq3TslRaaqAZz9zSN4mD6_jp3T68vg8vpumFoC1qV1kOSiFCyMWOhc0QzA5GJ0JCXqOWlhQeTY3EjIlSsi4zKmSVikBOView5Bc73vj2fcOQ1tsXLBYVabGpgsFF5JpynkEL_-B66bzdfytYDp6ACpYhG72kPVNCB7LYuvdxvi-YLTY2SyAF982I3r102dCdFV6U1sX_nidAWdMRO5izzlE_I33HV8kWnpI</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>195583051</pqid></control><display><type>article</type><title>Mechanically verifying concurrent programs with the Boyer-Moore prover</title><source>IEEE Electronic Library (IEL)</source><creator>Goldschlag, D.M.</creator><creatorcontrib>Goldschlag, D.M.</creatorcontrib><description>A proof system suitable for the mechanical verification of concurrent programs is described. This proof system is based on Unity, and may be used to specify and verify both safety and liveness properties. However, it is defined with respect to an operational semantics of the transition system model of concurrency. Proof rules are simply theorems of this operational semantics. This methodology makes a clear distinction between the theorems in the proof system and the logical inference rules and syntax which define the underlying logic. Since this proof system essentially encodes Unity in another sound logic, and this encoding has been mechanically verified, this encoding proves the soundness of this formalization of Unity. This proof system has been mechanically verified by the Boyer-Moore prover. This proof system has been used to mechanically verify the correctness of a distributed algorithm that computes the minimum node value in a tree.< ></description><identifier>ISSN: 0098-5589</identifier><identifier>EISSN: 1939-3520</identifier><identifier>DOI: 10.1109/32.58787</identifier><identifier>CODEN: IESEDJ</identifier><language>eng</language><publisher>New York, NY: IEEE</publisher><subject>Algorithms ; Applied sciences ; Computer architecture ; Computer languages ; Computer programming ; Computer science; control theory; systems ; Computers ; Concurrent computing ; Distributed algorithms ; Distributed computing ; Encoding ; Exact sciences and technology ; Formal specifications ; Logic ; Programming languages ; Runtime ; Safety ; Semantics ; Software ; Software engineering ; Software packages ; Specifications ; Syntax ; Techniques ; Theorems ; Theory ; Verification</subject><ispartof>IEEE transactions on software engineering, 1990-09, Vol.16 (9), p.1005-1023</ispartof><rights>1991 INIST-CNRS</rights><rights>Copyright Institute of Electrical and Electronics Engineers, Inc. (IEEE) Sep 1990</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c331t-cd46388eda5d96504e3a63a945739be95c3864ba73485f34276087c885363c263</citedby><cites>FETCH-LOGICAL-c331t-cd46388eda5d96504e3a63a945739be95c3864ba73485f34276087c885363c263</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/58787$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>314,780,784,796,27924,27925,54758</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/58787$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc><backlink>$$Uhttp://pascal-francis.inist.fr/vibad/index.php?action=getRecordDetail&idt=19432115$$DView record in Pascal Francis$$Hfree_for_read</backlink></links><search><creatorcontrib>Goldschlag, D.M.</creatorcontrib><title>Mechanically verifying concurrent programs with the Boyer-Moore prover</title><title>IEEE transactions on software engineering</title><addtitle>TSE</addtitle><description>A proof system suitable for the mechanical verification of concurrent programs is described. This proof system is based on Unity, and may be used to specify and verify both safety and liveness properties. However, it is defined with respect to an operational semantics of the transition system model of concurrency. Proof rules are simply theorems of this operational semantics. This methodology makes a clear distinction between the theorems in the proof system and the logical inference rules and syntax which define the underlying logic. Since this proof system essentially encodes Unity in another sound logic, and this encoding has been mechanically verified, this encoding proves the soundness of this formalization of Unity. This proof system has been mechanically verified by the Boyer-Moore prover. This proof system has been used to mechanically verify the correctness of a distributed algorithm that computes the minimum node value in a tree.< ></description><subject>Algorithms</subject><subject>Applied sciences</subject><subject>Computer architecture</subject><subject>Computer languages</subject><subject>Computer programming</subject><subject>Computer science; control theory; systems</subject><subject>Computers</subject><subject>Concurrent computing</subject><subject>Distributed algorithms</subject><subject>Distributed computing</subject><subject>Encoding</subject><subject>Exact sciences and technology</subject><subject>Formal specifications</subject><subject>Logic</subject><subject>Programming languages</subject><subject>Runtime</subject><subject>Safety</subject><subject>Semantics</subject><subject>Software</subject><subject>Software engineering</subject><subject>Software packages</subject><subject>Specifications</subject><subject>Syntax</subject><subject>Techniques</subject><subject>Theorems</subject><subject>Theory</subject><subject>Verification</subject><issn>0098-5589</issn><issn>1939-3520</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>1990</creationdate><recordtype>article</recordtype><sourceid>8G5</sourceid><sourceid>ABUWG</sourceid><sourceid>AFKRA</sourceid><sourceid>AZQEC</sourceid><sourceid>BENPR</sourceid><sourceid>CCPQU</sourceid><sourceid>DWQXO</sourceid><sourceid>GNUQQ</sourceid><sourceid>GUQSH</sourceid><sourceid>M2O</sourceid><recordid>eNpdkMFLwzAUh4MoOKfg1VsRFC-dSV7TJEcdToUNL3ouWfa6ZXTtTFql_72ZEwVP7_D73u89PkLOGR0xRvUt8JFQUskDMmAadAqC00MyoFSrVAilj8lJCGtKqZBSDMhkhnZlamdNVfXJB3pX9q5eJrapbec91m2y9c3Sm01IPl27StoVJvdNjz6dNY3HXRq3TslRaaqAZz9zSN4mD6_jp3T68vg8vpumFoC1qV1kOSiFCyMWOhc0QzA5GJ0JCXqOWlhQeTY3EjIlSsi4zKmSVikBOView5Bc73vj2fcOQ1tsXLBYVabGpgsFF5JpynkEL_-B66bzdfytYDp6ACpYhG72kPVNCB7LYuvdxvi-YLTY2SyAF982I3r102dCdFV6U1sX_nidAWdMRO5izzlE_I33HV8kWnpI</recordid><startdate>19900901</startdate><enddate>19900901</enddate><creator>Goldschlag, D.M.</creator><general>IEEE</general><general>Institute of Electrical and Electronics Engineers</general><general>IEEE Computer Society</general><scope>IQODW</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>3V.</scope><scope>7WY</scope><scope>7WZ</scope><scope>7X7</scope><scope>7XB</scope><scope>87Z</scope><scope>88E</scope><scope>88F</scope><scope>88I</scope><scope>88K</scope><scope>8AL</scope><scope>8FE</scope><scope>8FG</scope><scope>8FI</scope><scope>8FJ</scope><scope>8FK</scope><scope>8FL</scope><scope>8G5</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>ARAPS</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BEZIV</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>FRNLG</scope><scope>FYUFA</scope><scope>F~G</scope><scope>GHDGH</scope><scope>GNUQQ</scope><scope>GUQSH</scope><scope>HCIFZ</scope><scope>JQ2</scope><scope>K60</scope><scope>K6~</scope><scope>K7-</scope><scope>K9.</scope><scope>L.-</scope><scope>L6V</scope><scope>M0C</scope><scope>M0N</scope><scope>M0S</scope><scope>M1P</scope><scope>M1Q</scope><scope>M2O</scope><scope>M2P</scope><scope>M2T</scope><scope>M7S</scope><scope>MBDVC</scope><scope>P5Z</scope><scope>P62</scope><scope>PQBIZ</scope><scope>PQBZA</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>PTHSS</scope><scope>Q9U</scope><scope>7SC</scope><scope>8FD</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>19900901</creationdate><title>Mechanically verifying concurrent programs with the Boyer-Moore prover</title><author>Goldschlag, D.M.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c331t-cd46388eda5d96504e3a63a945739be95c3864ba73485f34276087c885363c263</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>1990</creationdate><topic>Algorithms</topic><topic>Applied sciences</topic><topic>Computer architecture</topic><topic>Computer languages</topic><topic>Computer programming</topic><topic>Computer science; control theory; systems</topic><topic>Computers</topic><topic>Concurrent computing</topic><topic>Distributed algorithms</topic><topic>Distributed computing</topic><topic>Encoding</topic><topic>Exact sciences and technology</topic><topic>Formal specifications</topic><topic>Logic</topic><topic>Programming languages</topic><topic>Runtime</topic><topic>Safety</topic><topic>Semantics</topic><topic>Software</topic><topic>Software engineering</topic><topic>Software packages</topic><topic>Specifications</topic><topic>Syntax</topic><topic>Techniques</topic><topic>Theorems</topic><topic>Theory</topic><topic>Verification</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Goldschlag, D.M.</creatorcontrib><collection>Pascal-Francis</collection><collection>CrossRef</collection><collection>ProQuest Central (Corporate)</collection><collection>Access via ABI/INFORM (ProQuest)</collection><collection>ABI/INFORM Global (PDF only)</collection><collection>Health & Medical Collection</collection><collection>ProQuest Central (purchase pre-March 2016)</collection><collection>ABI/INFORM Global (Alumni Edition)</collection><collection>Medical Database (Alumni Edition)</collection><collection>Military Database (Alumni Edition)</collection><collection>Science Database (Alumni Edition)</collection><collection>Telecommunications (Alumni Edition)</collection><collection>Computing Database (Alumni Edition)</collection><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Hospital Premium Collection</collection><collection>Hospital Premium Collection (Alumni Edition)</collection><collection>ProQuest Central (Alumni) (purchase pre-March 2016)</collection><collection>ABI/INFORM Collection (Alumni Edition)</collection><collection>Research Library (Alumni Edition)</collection><collection>Materials Science & Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>Advanced Technologies & Aerospace Collection</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Business Premium Collection</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>Business Premium Collection (Alumni)</collection><collection>Health Research Premium Collection</collection><collection>ABI/INFORM Global (Corporate)</collection><collection>Health Research Premium Collection (Alumni)</collection><collection>ProQuest Central Student</collection><collection>Research Library Prep</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Computer Science Collection</collection><collection>ProQuest Business Collection (Alumni Edition)</collection><collection>ProQuest Business Collection</collection><collection>Computer Science Database</collection><collection>ProQuest Health & Medical Complete (Alumni)</collection><collection>ABI/INFORM Professional Advanced</collection><collection>ProQuest Engineering Collection</collection><collection>ABI/INFORM Global</collection><collection>Computing Database</collection><collection>Health & Medical Collection (Alumni Edition)</collection><collection>Medical Database</collection><collection>Military Database</collection><collection>Research Library</collection><collection>Science Database</collection><collection>Telecommunications Database</collection><collection>Engineering Database</collection><collection>Research Library (Corporate)</collection><collection>Advanced Technologies & Aerospace Database</collection><collection>ProQuest Advanced Technologies & Aerospace Collection</collection><collection>ProQuest One Business</collection><collection>ProQuest One Business (Alumni)</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><collection>ProQuest Central Basic</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>IEEE transactions on software engineering</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Goldschlag, D.M.</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Mechanically verifying concurrent programs with the Boyer-Moore prover</atitle><jtitle>IEEE transactions on software engineering</jtitle><stitle>TSE</stitle><date>1990-09-01</date><risdate>1990</risdate><volume>16</volume><issue>9</issue><spage>1005</spage><epage>1023</epage><pages>1005-1023</pages><issn>0098-5589</issn><eissn>1939-3520</eissn><coden>IESEDJ</coden><abstract>A proof system suitable for the mechanical verification of concurrent programs is described. This proof system is based on Unity, and may be used to specify and verify both safety and liveness properties. However, it is defined with respect to an operational semantics of the transition system model of concurrency. Proof rules are simply theorems of this operational semantics. This methodology makes a clear distinction between the theorems in the proof system and the logical inference rules and syntax which define the underlying logic. Since this proof system essentially encodes Unity in another sound logic, and this encoding has been mechanically verified, this encoding proves the soundness of this formalization of Unity. This proof system has been mechanically verified by the Boyer-Moore prover. This proof system has been used to mechanically verify the correctness of a distributed algorithm that computes the minimum node value in a tree.< ></abstract><cop>New York, NY</cop><pub>IEEE</pub><doi>10.1109/32.58787</doi><tpages>19</tpages></addata></record> |
fulltext | fulltext_linktorsrc |
identifier | ISSN: 0098-5589 |
ispartof | IEEE transactions on software engineering, 1990-09, Vol.16 (9), p.1005-1023 |
issn | 0098-5589 1939-3520 |
language | eng |
recordid | cdi_proquest_journals_195583051 |
source | IEEE Electronic Library (IEL) |
subjects | Algorithms Applied sciences Computer architecture Computer languages Computer programming Computer science control theory systems Computers Concurrent computing Distributed algorithms Distributed computing Encoding Exact sciences and technology Formal specifications Logic Programming languages Runtime Safety Semantics Software Software engineering Software packages Specifications Syntax Techniques Theorems Theory Verification |
title | Mechanically verifying concurrent programs with the Boyer-Moore prover |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-20T20%3A37%3A46IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_RIE&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Mechanically%20verifying%20concurrent%20programs%20with%20the%20Boyer-Moore%20prover&rft.jtitle=IEEE%20transactions%20on%20software%20engineering&rft.au=Goldschlag,%20D.M.&rft.date=1990-09-01&rft.volume=16&rft.issue=9&rft.spage=1005&rft.epage=1023&rft.pages=1005-1023&rft.issn=0098-5589&rft.eissn=1939-3520&rft.coden=IESEDJ&rft_id=info:doi/10.1109/32.58787&rft_dat=%3Cproquest_RIE%3E25719022%3C/proquest_RIE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=195583051&rft_id=info:pmid/&rft_ieee_id=58787&rfr_iscdi=true |