On Solving Presburger and Linear Arithmetic with SAT

  • Ofer Strichman
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2517)


We show a reduction to propositional logic from quantifier-free Presburger arithmetic, and disjunctive linear arithmetic, based on Fourier-Motzkin elimination. While the complexity of this procedure is not better than competing techniques, it has practical advantages in solving verification problems. It also promotes the option of deciding a combination of theories by reducing them to this logic.


Decision Procedure Propositional Logic Integer Variable Parse Tree Disjunctive Normal Form 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    C. Barrett, D. Dill, and J. Levitt. Validity checking for combinations of theories with equality. In M. Srivas and A. Camilleri, editors, Proc. FMCAD 1996, volume 1166 of LNCS. Springer-Verlag, 1996.Google Scholar
  2. 2.
    A.J.C. Bik and H.A.G. Wijshoff. Implementation of Fourier-Motzkin elimination. Technical Report 94-42, Dept. of Computer Science, Leiden University, 1994.Google Scholar
  3. 3.
    R.E. Bryant, S. German, and M. Velev. Exploiting positive equality in a logic of equality with uninterpreted functions. In Proc. 11 th Intl. Conference on Computer Aided Verification (CAV’99), 1999.Google Scholar
  4. 4.
    R.E. Bryant, S. German, and M. Velev. Processor verification using efficient reductions of the logic of uninterpreted functions to propositional logic. ACM Transactions on Computational Logic, 2(1):1–41, 2001.CrossRefMathSciNetGoogle Scholar
  5. 5.
    R.E. Bryant and M. Velev. Boolean satisfiability with transitivity constraints. In E.A. Emerson and A.P. Sistla, editors, Proc. 12 th Intl. Conference on Computer Aided Verification (CAV’00), volume 1855 of Lect. Notes in Comp. Sci. Springer-Verlag, 2000.Google Scholar
  6. 6.
    G. Dantzig. Linear Programming and Extensions. Princeton University Press, Princeton, New Jersey., 1963.zbMATHGoogle Scholar
  7. 7.
    W. M. Farmer, J. D. Guttman, and F. J. Thayer. IMPS: System description. In D. Kapur, editor, Automated Deduction-CADE-11, volume 607 of Lect. Notes in Comp. Sci., pages 701–705. Springer-Verlag, 1992.Google Scholar
  8. 8.
    J.C. Filliatre, S. Owre, H. Rueb, and N. Shankar. ICS: Integrated canonizer and solver. In G. Berry, H. Comon, and A. Finkel, editors, Proc. 13th Intl. Conference on Computer Aided Verification (CAV’01), LNCS. Springer-Verlag, 2001.Google Scholar
  9. 9.
    A. Goel, K. Sajid, H. Zhou, A. Aziz, and V. Singhal. BDD based procedures for a theory of equality with uninterpreted functions. In A.J. Hu and M.Y. Vardi, editors, CAV98, volume 1427 of LNCS. Springer-Verlag, 1998.Google Scholar
  10. 10.
    P. Johannsen. Reducing bitvector satisfiability problems to scale down design sizes for rtl property checking. In IEEE Proc. HLDVT’01, 2001.Google Scholar
  11. 11.
    L. G. Khachiyan. A polynomial algorithm in linear programming. Soviet Mathematics Doklady, 1979.Google Scholar
  12. 12.
    M. Moskewicz, C. Madigan, Y. Zhao, L. Zhang, and S. Malik. Chaff: Engineering an efficient SAT solver. In Proc. Design Automation Conference 2001 (DAC’01), 2001.Google Scholar
  13. 13.
    G. Nelson and D. C. Oppen. Simplification by cooperating decision procedures. ACM Transactions on Programming Languages and Systems, 1979.Google Scholar
  14. 14.
    S. Owre, N. Shankar, and J.M. Rushby. User guide for the PVS specification and verification system. Technical report, SRI International, 1993.Google Scholar
  15. 15.
    A. Pnueli, Y. Rodeh, O. Shtrichman, and M. Siegel. Deciding equality formulas by small-domains instantiations. In Proc. 11 th Intl. Conference on Computer Aided Verification (CAV’99), Lect. Notes in Comp. Sci. Springer-Verlag, 1999.Google Scholar
  16. 16.
  17. 17.
    W. Pugh. The omega test: a fast and practical integer programming algorithm for dependence analysis. Communications of the ACM, pages 102–114, 1992.Google Scholar
  18. 18.
    W. Pugh and D. Wonnacott. Experiences with constraint-based array dependence analysis. In Principles and Practice of Constraint Programming, pages 312–325, 1994.Google Scholar
  19. 19.
    O. Strichman. Optimizations in decision procedures for propositional linear inequalities. Technical Report CMU-CS-02-133, Carnegie Mellon University, 2002.Google Scholar
  20. 20.
    O. Strichman, S.A. Seshia, and R.E. Bryant. Deciding separation formulas with SAT. In Proc. 14th Intl. Conference on Computer Aided Verification (CAV’02), LNCS, Copenhagen, Denmark, July 2002. Springer-Verlag.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Ofer Strichman
    • 1
  1. 1.Computer ScienceCarnegie Mellon UniversityPittsburgh

Personalised recommendations