Fuhs, Carsten and Kop, C. and Nishida, N. (2017) Verifying procedural programs via constrained rewriting induction. ACM Transactions on Computational Logic 18 (2), ISSN 1529-3785.
|
Text
tocl-equivalence.pdf - Author's Accepted Manuscript Download (577kB) | Preview |
Abstract
This paper aims to develop a verification method for procedural programs via a transformation into Logically Constrained Term Rewriting Systems (LCTRSs). To this end, we extend transformation methods based on integer TRSs to handle arbitrary data types, global variables, function calls and arrays, as well as encode safety checks. Then we adapt existing rewriting induction methods to LCTRSs and propose a simple yet effective method to generalize equations. We show that we can automatically verify memory safety and prove correctness of realistic functions. Our approach proves equivalence between two implementations, so in contrast to other works, we do not require an explicit specification in a separate specification language.
Metadata
Item Type: | Article |
---|---|
Additional Information: | © ACM, 2017. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. |
School: | Birkbeck Faculties and Schools > Faculty of Science > School of Computing and Mathematical Sciences |
Depositing User: | Carsten Fuhs |
Date Deposited: | 08 May 2017 08:28 |
Last Modified: | 09 Aug 2023 12:41 |
URI: | https://eprints.bbk.ac.uk/id/eprint/18657 |
Statistics
Additional statistics are available via IRStats2.