LLM-Generated Invariants for Bounded Model Checking Without Loop Unrolling
We investigate a modification of the classical Bounded Model Checking (BMC) procedure that does not handle loops through unrolling but via modifications to the control flow graph (CFG). A portion of the CFG representing a loop is replaced by a node asserting invariants of the loop. We generate these...
Uloženo v:
| Vydáno v: | IEEE/ACM International Conference on Automated Software Engineering : [proceedings] s. 1395 - 1407 |
|---|---|
| Hlavní autoři: | , , , |
| Médium: | Konferenční příspěvek |
| Jazyk: | angličtina |
| Vydáno: |
ACM
27.10.2024
|
| Témata: | |
| ISSN: | 2643-1572 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
| Abstract | We investigate a modification of the classical Bounded Model Checking (BMC) procedure that does not handle loops through unrolling but via modifications to the control flow graph (CFG). A portion of the CFG representing a loop is replaced by a node asserting invariants of the loop. We generate these invariants using Large Language Models (LLMs) and use a first-order theorem prover to ensure the correctness of the generated statements. We thus transform programs to loop-free variants in a sound manner. Our experimental results show that the resulting tool, ESBMC ibmc, is competitive with state-of-the-art formal verifiers for programs with unbounded loops, significantly improving the number of programs verified by the industrial-strength software verifier ESBMC and verifying programs that state-of-the-art software verifiers such as SeaHorn and VeriAbs could not. |
|---|---|
| AbstractList | We investigate a modification of the classical Bounded Model Checking (BMC) procedure that does not handle loops through unrolling but via modifications to the control flow graph (CFG). A portion of the CFG representing a loop is replaced by a node asserting invariants of the loop. We generate these invariants using Large Language Models (LLMs) and use a first-order theorem prover to ensure the correctness of the generated statements. We thus transform programs to loop-free variants in a sound manner. Our experimental results show that the resulting tool, ESBMC ibmc, is competitive with state-of-the-art formal verifiers for programs with unbounded loops, significantly improving the number of programs verified by the industrial-strength software verifier ESBMC and verifying programs that state-of-the-art software verifiers such as SeaHorn and VeriAbs could not. |
| Author | Bhayat, Ahmed Reger, Giles Pirzada, Muhammad A. A. Cordeiro, Lucas C. |
| Author_xml | – sequence: 1 givenname: Muhammad A. A. surname: Pirzada fullname: Pirzada, Muhammad A. A. email: muhammad.pirzada@manchester.ac.uk organization: The University of Manchester,Manchester,UK – sequence: 2 givenname: Ahmed surname: Bhayat fullname: Bhayat, Ahmed email: ahmed_bhayat@hotmail.com organization: The University of Manchester,Manchester,UK – sequence: 3 givenname: Lucas C. surname: Cordeiro fullname: Cordeiro, Lucas C. email: lucas.cordeiro@manchester.ac.uk organization: The University of Manchester,Manchester,UK – sequence: 4 givenname: Giles surname: Reger fullname: Reger, Giles email: giles.reger@manchester.ac.uk organization: The University of Manchester,Manchester,UK |
| BookMark | eNotjE1Lw0AURUdRsNas3biYP5CaN5-ZpRZbKyluLC7LS-bFDsaZkqSC_96Ars69B-69ZhcxRWLsFooFgNL30jgwolhM1BrEGcucdaUqCgtClfaczYRRMgdtxRXLhiHUxRS1ATAz9lJV23xNkXocyfNN_MY-YBwH3qaeP6ZT9JPeJk8dXx6o-Qzxg7-H8ZBOI69SOvJd7FPXTfqGXbbYDZT9c852q6e35XNeva43y4cqR1G6MbeAvgavvddUE1hwrVHoXFMLRJKFNS1CA1o2HpVQzjaorJ26VVIDopyzu7_fQET7Yx--sP_ZwzRUTgj5C1pCTu4 |
| CODEN | IEEPAD |
| ContentType | Conference Proceeding |
| DBID | 6IE 6IL CBEJK RIE RIL |
| DOI | 10.1145/3691620.3695512 |
| DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Xplore POP ALL IEEE Xplore All Conference Proceedings IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP All) 1998-Present |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISBN | 9798400712487 |
| EISSN | 2643-1572 |
| EndPage | 1407 |
| ExternalDocumentID | 10764922 |
| Genre | orig-research |
| GrantInformation_xml | – fundername: Engineering and Physical Sciences Research Council funderid: 10.13039/501100000266 |
| GroupedDBID | 6IE 6IF 6IH 6IK 6IL 6IM 6IN 6J9 AAJGR AAWTH ABLEC ACREN ADYOE ADZIZ AFYQB ALMA_UNASSIGNED_HOLDINGS AMTXH BEFXN BFFAM BGNUA BKEBE BPEOZ CBEJK CHZPO IEGSK IPLJI M43 OCL RIE RIL |
| ID | FETCH-LOGICAL-a289t-71adb1d5dd5ebe1719f64a99cb2aae3076fa1c153cda42497ca47715374351aa3 |
| IEDL.DBID | RIE |
| ISICitedReferencesCount | 1 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=001353105400112&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| IngestDate | Wed Jan 15 06:20:43 EST 2025 |
| IsDoiOpenAccess | false |
| IsOpenAccess | true |
| IsPeerReviewed | false |
| IsScholarly | true |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-a289t-71adb1d5dd5ebe1719f64a99cb2aae3076fa1c153cda42497ca47715374351aa3 |
| OpenAccessLink | https://doi.org/10.1145/3691620.3695512 |
| PageCount | 13 |
| ParticipantIDs | ieee_primary_10764922 |
| PublicationCentury | 2000 |
| PublicationDate | 2024-Oct.-27 |
| PublicationDateYYYYMMDD | 2024-10-27 |
| PublicationDate_xml | – month: 10 year: 2024 text: 2024-Oct.-27 day: 27 |
| PublicationDecade | 2020 |
| PublicationTitle | IEEE/ACM International Conference on Automated Software Engineering : [proceedings] |
| PublicationTitleAbbrev | ASE |
| PublicationYear | 2024 |
| Publisher | ACM |
| Publisher_xml | – name: ACM |
| SSID | ssib057256116 ssj0051577 |
| Score | 2.335519 |
| Snippet | We investigate a modification of the classical Bounded Model Checking (BMC) procedure that does not handle loops through unrolling but via modifications to the... |
| SourceID | ieee |
| SourceType | Publisher |
| StartPage | 1395 |
| SubjectTerms | Benchmark testing Bounded Model Checking Closed box Flow graphs Glass box Invariant Generation Large language models Model checking Program Verification Software engineering Transforms |
| Title | LLM-Generated Invariants for Bounded Model Checking Without Loop Unrolling |
| URI | https://ieeexplore.ieee.org/document/10764922 |
| WOSCitedRecordID | wos001353105400112&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV09T8MwELWgYmAqH0V8ywNroE6cXLxSgQCVqgMV3arL2VEroaQqaX8_5yQFMTCwxZ4sO3fvnX13T4gblTid24jYxFPiACWyQaYMBdA3aabJ6TSnWmwCRqN0OjXjtli9roVxztXJZ-7Wf9Zv-baktb8qYwuHRJuQPe4uADTFWtufJwYGb-W5TuOGGacB2l4-Ssd3UcJEKOQYNTFMEsJfYio1ljx2_7mKA9H7qcqT42-8ORQ7rjgS3a0sg2yt9Fi8DIevQdNOmumkfC42HA_7dBfJBFXeex0lnvYiaB9yMHfkL8vl-6Kal-tKDstyKSfFqunV3ROTx4e3wVPQSiYEyJFTFYBCmykbWxvz6ShQJk80GkNZiOjYnpMcFbGXI4uaIy8g1AA8ZiIRK8ToRHSKsnCnPucpzl2UEIJjBMO-IZdmFGeIfYrQuDPR83szWzZdMWbbbTn_Y_5C7IdMCLzfD-FSdKrV2l2JPdpUi8_VdX2WX5Z8n6E |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV09T8MwELVQQYKpfBTxjQfWQJ3YcbxSUbWQVh1a0a1yzo5aCSVVSfr7OScpiIGBLfZk2bl77-y7e4Q8sNDy1ASAJh4BBiiB8RKmwJNdFSUcLI9SqMQm5Hgczedq0hSrV7Uw1toq-cw-us_qLd_kULqrMrRwGXLlo8fdF5z7rC7X2v0-QiJ8M8d2akeMSC1l082HcfEUhEiFfIxSQ4U0wf8lp1KhSb_9z3Uck85PXR6dfCPOCdmz2Slp74QZaGOnZ-Q1jkde3VAaCSUdZluMiF3CC0WKSp-dkhJOOxm0D9pbWnDX5fR9VSzzsqBxnq_pLNvU3bo7ZNZ_mfYGXiOa4GmMnQpPMm0SZoQxAs-HSabSkGulIPG1tmjRYaoZoJ8DoznGXhI0lxLHSCUE0zo4J60sz-yFy3oSqQ1C0NIihumuAhslIBKtuxBoZS9Jx-3NYl33xVjstuXqj_l7cjiYjuJFPBy_XZMjH-mBQwFf3pBWsSntLTmAbbH63NxV5_oFFG-i6A |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=IEEE%2FACM+International+Conference+on+Automated+Software+Engineering+%3A+%5Bproceedings%5D&rft.atitle=LLM-Generated+Invariants+for+Bounded+Model+Checking+Without+Loop+Unrolling&rft.au=Pirzada%2C+Muhammad+A.+A.&rft.au=Bhayat%2C+Ahmed&rft.au=Cordeiro%2C+Lucas+C.&rft.au=Reger%2C+Giles&rft.date=2024-10-27&rft.pub=ACM&rft.eissn=2643-1572&rft.spage=1395&rft.epage=1407&rft_id=info:doi/10.1145%2F3691620.3695512&rft.externalDocID=10764922 |