| Article ID | Journal | Published Year | Pages | File Type | 
|---|---|---|---|---|
| 6874843 | Journal of Logical and Algebraic Methods in Programming | 2018 | 26 Pages | 
Abstract
												In earlier work, we developed an approach for automated termination analysis of C programs with explicit pointer arithmetic, which is based on symbolic execution. However, similar to many other termination techniques, this approach assumed the program variables to range over mathematical integers instead of bitvectors. This eases mathematical reasoning but is unsound in general. In this paper, we extend our approach in order to handle fixed-width bitvector integers. Thus, we present the first technique for termination analysis of C programs that covers both byte-accurate pointer arithmetic and bit-precise modeling of integers. Moreover, we show that our approach can also be used to analyze the runtime complexity of bitvector programs. We implemented our contributions in the automated termination prover AProVE and evaluate its power by extensive experiments.
											Related Topics
												
													Physical Sciences and Engineering
													Computer Science
													Computational Theory and Mathematics
												
											Authors
												Jera Hensel, Jürgen Giesl, Florian Frohn, Thomas Ströder, 
											