On incorrectness logic and Kleene algebra with top and tests

Kleene algebra with tests (KAT) is a foundational equational framework for reasoning about programs, which has found applications in program transformations, networking and compiler optimizations, among many other areas. In his seminal work, Kozen proved that KAT subsumes propositional Hoare logic,...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Proceedings of ACM on programming languages 2022-01, Vol.6 (POPL), p.1-30
Hauptverfasser: Zhang, Cheng, de Amorim, Arthur Azevedo, Gaboardi, Marco
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 30
container_issue POPL
container_start_page 1
container_title Proceedings of ACM on programming languages
container_volume 6
creator Zhang, Cheng
de Amorim, Arthur Azevedo
Gaboardi, Marco
description Kleene algebra with tests (KAT) is a foundational equational framework for reasoning about programs, which has found applications in program transformations, networking and compiler optimizations, among many other areas. In his seminal work, Kozen proved that KAT subsumes propositional Hoare logic, showing that one can reason about the (partial) correctness of while programs by means of the equational theory of KAT. In this work, we investigate the support that KAT provides for reasoning about incorrectness, instead, as embodied by O'Hearn's recently proposed incorrectness logic. We show that KAT cannot directly express incorrectness logic. The main reason for this limitation can be traced to the fact that KAT cannot express explicitly the notion of codomain, which is essential to express incorrectness triples. To address this issue, we study Kleene Algebra with Top and Tests (TopKAT), an extension of KAT with a top element. We show that TopKAT is powerful enough to express a codomain operation, to express incorrectness triples, and to prove all the rules of incorrectness logic sound. This shows that one can reason about the incorrectness of while-like programs by means of the equational theory of TopKAT.
doi_str_mv 10.1145/3498690
format Article
fullrecord <record><control><sourceid>crossref</sourceid><recordid>TN_cdi_crossref_primary_10_1145_3498690</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>10_1145_3498690</sourcerecordid><originalsourceid>FETCH-LOGICAL-c258t-cc372869a8f0b27c9016e3b77f449f93434b3cb82963c2987918ddf6d5ad335b3</originalsourceid><addsrcrecordid>eNpNj01LAzEURYMoWGrxL2TnajTJSyYJuJGiVix0066HfLzUkXGmJAHx31u1C1f3woXLOYRcc3bLuVR3IK1pLTsjMyG1argU_PxfvySLUt4ZY9yCNGBn5H4z0n4MU84Y6oil0GHa94G6MdLXAXFE6oY9-uzoZ1_faJ0Ov1vFUssVuUhuKLg45Zzsnh63y1Wz3jy_LB_WTRDK1CYE0OKI5UxiXuhgGW8RvNZJSpuOJCA9BG-EbSEIa7TlJsbURuUigPIwJzd_vyFPpWRM3SH3Hy5_dZx1P97dyRu-AfAUSGY</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>On incorrectness logic and Kleene algebra with top and tests</title><source>ACM Digital Library Complete</source><source>EZB-FREE-00999 freely available EZB journals</source><creator>Zhang, Cheng ; de Amorim, Arthur Azevedo ; Gaboardi, Marco</creator><creatorcontrib>Zhang, Cheng ; de Amorim, Arthur Azevedo ; Gaboardi, Marco</creatorcontrib><description>Kleene algebra with tests (KAT) is a foundational equational framework for reasoning about programs, which has found applications in program transformations, networking and compiler optimizations, among many other areas. In his seminal work, Kozen proved that KAT subsumes propositional Hoare logic, showing that one can reason about the (partial) correctness of while programs by means of the equational theory of KAT. In this work, we investigate the support that KAT provides for reasoning about incorrectness, instead, as embodied by O'Hearn's recently proposed incorrectness logic. We show that KAT cannot directly express incorrectness logic. The main reason for this limitation can be traced to the fact that KAT cannot express explicitly the notion of codomain, which is essential to express incorrectness triples. To address this issue, we study Kleene Algebra with Top and Tests (TopKAT), an extension of KAT with a top element. We show that TopKAT is powerful enough to express a codomain operation, to express incorrectness triples, and to prove all the rules of incorrectness logic sound. This shows that one can reason about the incorrectness of while-like programs by means of the equational theory of TopKAT.</description><identifier>ISSN: 2475-1421</identifier><identifier>EISSN: 2475-1421</identifier><identifier>DOI: 10.1145/3498690</identifier><language>eng</language><ispartof>Proceedings of ACM on programming languages, 2022-01, Vol.6 (POPL), p.1-30</ispartof><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c258t-cc372869a8f0b27c9016e3b77f449f93434b3cb82963c2987918ddf6d5ad335b3</citedby><cites>FETCH-LOGICAL-c258t-cc372869a8f0b27c9016e3b77f449f93434b3cb82963c2987918ddf6d5ad335b3</cites><orcidid>0000-0002-8197-6181</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,776,780,27901,27902</link.rule.ids></links><search><creatorcontrib>Zhang, Cheng</creatorcontrib><creatorcontrib>de Amorim, Arthur Azevedo</creatorcontrib><creatorcontrib>Gaboardi, Marco</creatorcontrib><title>On incorrectness logic and Kleene algebra with top and tests</title><title>Proceedings of ACM on programming languages</title><description>Kleene algebra with tests (KAT) is a foundational equational framework for reasoning about programs, which has found applications in program transformations, networking and compiler optimizations, among many other areas. In his seminal work, Kozen proved that KAT subsumes propositional Hoare logic, showing that one can reason about the (partial) correctness of while programs by means of the equational theory of KAT. In this work, we investigate the support that KAT provides for reasoning about incorrectness, instead, as embodied by O'Hearn's recently proposed incorrectness logic. We show that KAT cannot directly express incorrectness logic. The main reason for this limitation can be traced to the fact that KAT cannot express explicitly the notion of codomain, which is essential to express incorrectness triples. To address this issue, we study Kleene Algebra with Top and Tests (TopKAT), an extension of KAT with a top element. We show that TopKAT is powerful enough to express a codomain operation, to express incorrectness triples, and to prove all the rules of incorrectness logic sound. This shows that one can reason about the incorrectness of while-like programs by means of the equational theory of TopKAT.</description><issn>2475-1421</issn><issn>2475-1421</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2022</creationdate><recordtype>article</recordtype><recordid>eNpNj01LAzEURYMoWGrxL2TnajTJSyYJuJGiVix0066HfLzUkXGmJAHx31u1C1f3woXLOYRcc3bLuVR3IK1pLTsjMyG1argU_PxfvySLUt4ZY9yCNGBn5H4z0n4MU84Y6oil0GHa94G6MdLXAXFE6oY9-uzoZ1_faJ0Ov1vFUssVuUhuKLg45Zzsnh63y1Wz3jy_LB_WTRDK1CYE0OKI5UxiXuhgGW8RvNZJSpuOJCA9BG-EbSEIa7TlJsbURuUigPIwJzd_vyFPpWRM3SH3Hy5_dZx1P97dyRu-AfAUSGY</recordid><startdate>20220101</startdate><enddate>20220101</enddate><creator>Zhang, Cheng</creator><creator>de Amorim, Arthur Azevedo</creator><creator>Gaboardi, Marco</creator><scope>AAYXX</scope><scope>CITATION</scope><orcidid>https://orcid.org/0000-0002-8197-6181</orcidid></search><sort><creationdate>20220101</creationdate><title>On incorrectness logic and Kleene algebra with top and tests</title><author>Zhang, Cheng ; de Amorim, Arthur Azevedo ; Gaboardi, Marco</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c258t-cc372869a8f0b27c9016e3b77f449f93434b3cb82963c2987918ddf6d5ad335b3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2022</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Zhang, Cheng</creatorcontrib><creatorcontrib>de Amorim, Arthur Azevedo</creatorcontrib><creatorcontrib>Gaboardi, Marco</creatorcontrib><collection>CrossRef</collection><jtitle>Proceedings of ACM on programming languages</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Zhang, Cheng</au><au>de Amorim, Arthur Azevedo</au><au>Gaboardi, Marco</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>On incorrectness logic and Kleene algebra with top and tests</atitle><jtitle>Proceedings of ACM on programming languages</jtitle><date>2022-01-01</date><risdate>2022</risdate><volume>6</volume><issue>POPL</issue><spage>1</spage><epage>30</epage><pages>1-30</pages><issn>2475-1421</issn><eissn>2475-1421</eissn><abstract>Kleene algebra with tests (KAT) is a foundational equational framework for reasoning about programs, which has found applications in program transformations, networking and compiler optimizations, among many other areas. In his seminal work, Kozen proved that KAT subsumes propositional Hoare logic, showing that one can reason about the (partial) correctness of while programs by means of the equational theory of KAT. In this work, we investigate the support that KAT provides for reasoning about incorrectness, instead, as embodied by O'Hearn's recently proposed incorrectness logic. We show that KAT cannot directly express incorrectness logic. The main reason for this limitation can be traced to the fact that KAT cannot express explicitly the notion of codomain, which is essential to express incorrectness triples. To address this issue, we study Kleene Algebra with Top and Tests (TopKAT), an extension of KAT with a top element. We show that TopKAT is powerful enough to express a codomain operation, to express incorrectness triples, and to prove all the rules of incorrectness logic sound. This shows that one can reason about the incorrectness of while-like programs by means of the equational theory of TopKAT.</abstract><doi>10.1145/3498690</doi><tpages>30</tpages><orcidid>https://orcid.org/0000-0002-8197-6181</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2475-1421
ispartof Proceedings of ACM on programming languages, 2022-01, Vol.6 (POPL), p.1-30
issn 2475-1421
2475-1421
language eng
recordid cdi_crossref_primary_10_1145_3498690
source ACM Digital Library Complete; EZB-FREE-00999 freely available EZB journals
title On incorrectness logic and Kleene algebra with top and tests
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-01T00%3A34%3A29IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-crossref&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=On%20incorrectness%20logic%20and%20Kleene%20algebra%20with%20top%20and%20tests&rft.jtitle=Proceedings%20of%20ACM%20on%20programming%20languages&rft.au=Zhang,%20Cheng&rft.date=2022-01-01&rft.volume=6&rft.issue=POPL&rft.spage=1&rft.epage=30&rft.pages=1-30&rft.issn=2475-1421&rft.eissn=2475-1421&rft_id=info:doi/10.1145/3498690&rft_dat=%3Ccrossref%3E10_1145_3498690%3C/crossref%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true