Publication Details
What else is decidable about integer arrays?
mathematical logic, arrays, decidability, decision procedure, formal verification, automata
We introduce a new decidable logic for reasoning about infinite arrays of integers. The logic is in the $\exists^* \forall^*$ first-order fragment and allows (1) Presburger constraints on existentially quantified variables, (2) difference constraints as well as periodicity constraints on universally quantified indices, and (3) difference constraints on values. In particular, using our logic, one can express constraints on consecutive elements of arrays (e.g., $\forall i ~.~ 0 \leq i < n \rightarrow a[i+1]=a[i]-1$) as well as periodic facts (e.g., $\forall i ~.~ i \equiv_2 0 \rightarrow a[i] = 0$). The decision procedure follows the automata-theoretic approach: we translate formulae into a special class of B\"uchi counter automata such that any model of a formula corresponds to an accepting run of an automaton, and vice versa. The emptiness problem for this class of counter automata is shown to be
decidable as a consequence of earlier results on counter automata with a flat control structure and transitions based on
difference constraints.
@INPROCEEDINGS{FITPUB8574, author = "Peter Habermehl and Radu Iosif and Tom\'{a}\v{s} Vojnar", title = "What else is decidable about integer arrays?", pages = "475--490", booktitle = "Foundations of Software Science and Computation Structures", series = "Lecture Notes in Computer Science", volume = 4962, year = 2008, location = "Berlin, DE", publisher = "Springer Verlag", ISBN = "978-3-540-78497-5", language = "english", url = "https://www.fit.vut.cz/research/publication/8574" }