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...
Gespeichert in:
| Veröffentlicht in: | IEEE/ACM International Conference on Automated Software Engineering : [proceedings] S. 1395 - 1407 |
|---|---|
| Hauptverfasser: | , , , |
| Format: | Tagungsbericht |
| Sprache: | Englisch |
| Veröffentlicht: |
ACM
27.10.2024
|
| Schlagworte: | |
| ISSN: | 2643-1572 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| 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 Proceedings Order Plan All Online (POP All Online) 1998-present by volume IEEE Xplore All Conference Proceedings IEEE Xplore 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.3355796 |
| 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/eLvHCXMwlV09T8MwELWgYmAqH0V8ywNroE5sX71SgQCFqgMV3aqL7aiVUFKVtL-fc5KCGBjYEg9RZOfu3nP87jF2Y8A45WMXOS1tJCWFVNb3GGUZWqqwgyR3tWtJCqPRYDo141asXmthvPf14TN_Gy7rf_mutOuwVUYRDlqamDLuLoBuxFrbj0cBPVoErNOkYarTAG0vHyHVXaIJCMXEUbUhkBD_MlOpa8lj959vccB6P6o8Pv6uN4dsxxdHrLu1ZeBtlB6zlzR9jZp20gQn-XOxIT4cjrtwAqj8Pvgo0XAwQfvgw7m3YbOcvy-qebmueFqWSz4pVk2v7h6bPD68DZ-i1jIhQmJOVQQCXSaccrQAmRcgTK4lGmOzGNFTPOschaUsZx1KYl5gUQLQPQEJJRCTE9YpysKfMi7QKpMM-okLOgWJ6DxxzVxrkyuNCZyxXpib2bLpijHbTsv5H-MXbD8mQBDyfgyXrFOt1v6K7dlNtfhcXddr-QWlzJ7C |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV09T8MwELVQQYKpfBTxjQdWQ504dr1SUbWQVh1a0a262I5aCSVVSfv7OScpiIGBLfEQRXbu3nuO7x4hD1ppG7nAMiuFYUJgSCVtByxJwCDCdsLUlq4lsRqNOrOZHtfF6mUtjHOuPHzmHv1l-S_f5mbjt8owwpUUOsCMu--ts-pyrd3nEyl8OPdsp0rEiNRK1d18uIieQolUKECVKjXShOCXnUqJJr3mP9_jmLR-6vLo-BtxTsiey05Jc2fMQOs4PSOvcTxkVUNpJJR0kG1REfsDLxQpKn32Tko47G3QPmh34YzfLqfvy2KRbwoa5_mKTrN11a27Raa9l0m3z2rTBAaonQqmONiE28jiEiSOK65TKUBrkwQADiNapsAN5jljQaD2UgaEUniPVCLiAOE5aWR55i4I5WAiHXbaofWVCgLAOlSbqZQ6jSSE6pK0_NzMV1VfjPluWq7-GL8nh_3JMJ7Hg9HbNTkKkB54FAjUDWkU6427JQdmWyw_13flun4BHXaiCw |
| 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 |