Abstract
This paper introduces a finite-automata based representation of Presburger arithmetic definable sets of integer vectors. The representation consists of concurrent automata operating on the binary encodings of the elements of the represented sets. This representation has several advantages. First, being automata-based it is operational in nature and hence leads directly to algorithms, for instance all usual operations on sets of integer vectors translate naturally to operations on automata. Second, the use of concurrent automata makes it compact. Third, it is insensitive to the representation size of integers. Our representation can be used whenever arithmetic constraints are needed. To illustrate its possibilities we show that it can handle integer programming optimally, and that it leads to a new original algorithm for the satisfiability of arithmetic inequalities.
“Aspirant” for the National Fund for Scientific Research (Belgium).
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
R. Alur, C. Courcoubetis, and D. Dill. Model-checking for real-time systems. In Proceedings of the 5th Symposium on Logic in Computer Science, pages 414–425, Philadelphia, June 1990.
R. Alur and T. Henzinger. Real-time logics: complexity and expressiveness. In Proceedings of the 5th Symposium on Logic in Computer Science, pages 390–401, Philadelphia, June 1990.
B. Aspvall, M. Plass, and R. Tarjan. A linear-time algorithm for testing the truth of certain quantified boolean formulas. Information Processing Letters, 8(3):121–123, 1979.
J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and L.J. Hwang. Symbolic model checking: 1020 states and beyond. Information and Computation, 98(2):142–170, June 1992.
V. Bruyère, G. Hansel, C. Michaux, and R. Villemaire. Logic and p-recognizable sets of integers. In Bulletin of the Belgian Mathematical Society, volume 1, pages 191–238, Mar 1994.
R. E. Bryant. Graph based algorithms for boolean function manipulation. IEEE Transactions on Computers, 35(8):677–691, 1986.
R.E. Bryant. Symbolic boolean manipulation with ordered binary-decision diagrams. ACM Computing Surveys, 24(3):293–318, 1992.
J.R. Büchi. On a decision method in restricted second order arithmetic. In Proc. Internat. Congr. Logic, Method and Philos. Sci. 1960, pages 1–12, Stanford, 1962. Stanford University Press.
O. Bernholtz, M.Y. Vardi, and P. Wolper. An automata-theoretic approach to branching-time model checking. In Computer Aided Verification, Proc. 6th Int. Workshop, Stanford, California, June 1994. Lecture Notes in Computer Science, Springer-Verlag. full version available from authors.
B. Boigelot and P. Wolper. Symbolic verification with periodic sets. In Computer Aided Verification, Proc. 6th Int. Workshop, Stanford, California, June 1994. Lecture Notes in Computer Science, Springer-Verlag.
A. Cobham. On the base-dependence of sets of numbers recognizable by finite automata. Mathematical Systems Theory, 3, 1969.
P. Godefroid and P. Wolper. Using partial orders for the efficient verification of deadlock freedom and safety properties. Formal Methods in System Design, 2(2):149–164, April 1993.
Pascal Van Hentenryck. Constraint Satisfaction in Logic Programming. MIT Press, 1989.
Paris C. Kanellakis, Gabriel M. Kuper, and Peter Revesz. Constraint query languages. In Ninth ACM Symposium on Principles of Database Systems, pages 299–313, Nashville, Tennessee, April 1990.
A. Klug. On conjunctive queries containing inequalities. Journal of the ACM, 35(1), January 1988.
F. Kabanza, J.-M. Stévenne, and P. Wolper. Handling infinite temporal data. In Proc. of the 9th ACM Symposium on Principles of Database Systems, pages 392–403, Nashville Tennessee, 1990.
R. Milner. Communication and Concurrency. Prentice Hall, 1989.
C. Papadimitriou. On the complexity of integer programming. Journal of the ACM, 28:765–768, Oct 1981.
A. Rabinovich. Checking equivalences between concurrent systems of finite agents. In International Colloquium on Automata, Languages and Programming, volume 623 of Lecture Notes in Computer Science, pages 696–707. Springer-Verlag, 1992.
A. Schrijver. Theory of Linear and Integer Programming. A Wiley-Interscience publication. Wiley, Chichester, New York, 1986.
A. L. Semenov. The presburger nature of predicates that are regular in two number systems. Siberian Math. J., 18(2):289–299, 1977.
W. Sun and M. A. Weiss. An improved algorithm for implication testing involving arithmetic inequalities. In IEEE Transactions on Knowledge and Data Engineering, volume 6, pages 997–1001, Dec 1994.
Wolfgang Thomas. Automata on infinite objects. In J. Van Leeuwen, editor, Handbook of Theoretical Computer Science — Volume B: Formal Models and Semantics, chapter 4, pages 133–191. Elsevier Science Publishers, Amsterdam, 1990.
Jeffrey D. Ullman. Principles of Database and Knowledge-Base Systems — Volume II: The New Technologies. Computer Science Press, 1989.
M.Y. Vardi and P. Wolper. An automata-theoretic approach to automatic program verification. In Proceedings of the First Symposium on Logic in Computer Science, pages 322–331, Cambridge, June 1986.
M.Y. Vardi and P. Wolper. Automata-theoretic techniques for modal logics of programs. Journal of Computer and System Science, 32(2):182–21, April 1986.
M.Y. Vardi and P. Wolper. Reasoning about infinite computations. Information and Computation, 115(1):1–37, November 1994.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Wolper, P., Boigelot, B. (1995). An automata-theoretic approach to Presburger arithmetic constraints. In: Mycroft, A. (eds) Static Analysis. SAS 1995. Lecture Notes in Computer Science, vol 983. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60360-3_30
Download citation
DOI: https://doi.org/10.1007/3-540-60360-3_30
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60360-3
Online ISBN: 978-3-540-45050-4
eBook Packages: Springer Book Archive