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...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE transactions on software engineering 1990-09, Vol.16 (9), p.1005-1023
1. Verfasser: Goldschlag, D.M.
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.&lt; &gt;</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&amp;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.&lt; &gt;</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 &amp; 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 &amp; Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>Advanced Technologies &amp; 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 &amp; 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 &amp; 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 &amp; Aerospace Database</collection><collection>ProQuest Advanced Technologies &amp; 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.&lt; &gt;</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