Proceedings

Büchi, Lindenbaum, Tarski: A Program Analysis Appetizer

Download BibTeX Cite

Proceedings of the Twenty-Fifth International Joint Conference on Artificial Intelligence. Pages 4150-4153.

Abstract

One can prove that a program satisfies a correctness property in different ways. The deductive approach uses logic and is automated using decision procedures and proof assistants. The automata-theoretic approach reduces questions about programs to algorithmic questions about automata. In the abstract interpretation approach, programs and their properties are expressed in terms of fixed points in lattices and reasoning uses fixed point approximation techniques. We describe a research programme to establish precise, mathematical correspondences between these approaches and to develop new analyzers using these results. The theoretical tools we use are the theorems of Büchi that relate automata and logic and a construction of Lindenbaum and Tarski for generating lattices from logics. This research has lead to improvements in existing tools and we anticipate further theoretical and practical consequences.

  1. [Baier and Katoen, 2008] Christel Baier and Joost-Pieter Katoen. Principles of Model Checking. The MIT Press, 2008.
  2. [Bjørner and de Moura, 2014] N. Bjørner and L. de Moura. Applications of SMT solvers to program verification. In Notes for the Summer School on Formal Techniques, 2014.
  3. [Büchi, 1960] J. Richard Büchi. On a Decision Method in Restricted Second Order Arithmetic. In Logic, Methodol- ogy and Philosophy of Science, pages 1-11. Stanford Univ. Press, 1960.
  4. [Clarke et al., 1999] Edmund M. Clarke, Jr., Orna Grum- berg, and Doron A. Peled. Model Checking. MIT Press, Cambridge, MA, USA, 1999.
  5. [Clarke, 1977] Edmund M. Clarke. Program Invariants as Fixed Points. Foundations of Computer Science, pages 18- 29, 1977.
  6. [Cousot and Cousot, 1977] Patrick Cousot and Radhia Cousot. Abstract Interpretation: a Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Proc. of Principles of Programming Languages, pages 238-252. ACM Press, 1977.
  7. [D'Silva and Urban, 2015a] Vijay D'Silva and Caterina Ur- ban. Abstract Interpretation as Automated Deduction. In Proc. of Automated Deduction, pages 450-464. Springer, 2015.
  8. [D'Silva and Urban, 2015b] Vijay D'Silva and Caterina Ur- ban. Conflict-Driven Conditional Termination. In Proc. of Computer Aided Verification, pages 271-286. Springer, 2015.
  9. [Goldstine and von Neumann, 1947] Herman H. Goldstine and John von Neumann. Planning and Coding of Prob- lems for an Electronic Computing Instrument. Technical report, Institute for Advanced Study, 1947.
  10. [Knuth, 2003] Donald E. Knuth. Robert w floyd, in memo- riam. SIGACT News, 34(4):3-13, December 2003.
  11. [Rasiowa and Sikorski, 1963] H. Rasiowa and R. Sikorski. The Mathematics of Metamathematics. Polish Academy of Science, Warsaw, 1963.
  12. [Scott, 1971] Dana S. Scott. The Lattice of Flow Diagrams. Semantics of Algorithmic Languages, 188:311-366, 1971.
  13. [Turing, 1949] Alan Turing. Checking a Large Routine. Re- port of a Conference on High Speed Automatic Calculat- ing Machines, pages 67-69, 1949.
  14. [Vardi and Wolper, 1994] Moshe Y. Vardi and Pierre Wolper. Reasoning about Infinite Computations. Information and Computation, 115(1):1-37, 1994.

References were extracted automatically from the PDF and may contain errors.

Welcome Future Conferences AI Journal Division IJCAI Proceedings About IJCAI IJCAI Awards