On decidability within the arithmetic of addition and divisibility

  • Authors:
  • Marius Bozga;Radu Iosif

  • Affiliations:
  • Verimag/CNRS, Gières, France;Verimag/CNRS, Gières, France

  • Venue:
  • FOSSACS'05 Proceedings of the 8th international conference on Foundations of Software Science and Computation Structures
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

The arithmetic of natural numbers with addition and divisibility has been shown undecidable as a consequence of the fact that multiplication of natural numbers can be interpreted into this theory, as shown by J. Robinson [14]. The most important decidable subsets of the arithmetic of addition and divisibility are the arithmetic of addition, proved by M. Presburger [13], and the purely existential subset, proved by L. Lipshitz [11]. In this paper we define a new decidable fragment of the form QzQ1x1 ... Qnxnϕ(x,z) where the only variable allowed to occur to the left of the divisibility sign is z. For this form, called ${\mathcal L}{_{\mid}^{(1)}}$ in the paper, we show the existence of a quantifier elimination procedure which always leads to formulas of Presburger arithmetic. We generalize the ${\mathcal L}{_{\mid}^{(1)}}$ form to ∃z1,...∃zmQ1x1...Qnxnϕ(x,z), where the only variables appearing on the left of divisibility are z1, ..., zm. For this form, called $\exists {\mathcal L}{_{\mid}^{(*)}}$, we show decidability of the positive fragment, namely by reduction to the existential theory of the arithmetic with addition and divisibility. The ${\mathcal L}{_{\mid}^{(1)}}$, $\exists {\mathcal L}{_{\mid}^{(*)}}$ fragments were inspired by a real application in the field of program verification. We considered the satisfiability problem for a program logic used for quantitative reasoning about memory shapes, in the case where each record has at most one pointer field. The reduction of this problem to the positive subset of $\exists {\mathcal L}{_{\mid}^{(*)}}$ is sketched in the end of the paper.