Advertisement

Experimenting on Solving Nonlinear Integer Arithmetic with Incremental Linearization

  • Alessandro Cimatti
  • Alberto Griggio
  • Ahmed Irfan
  • Marco Roveri
  • Roberto Sebastiani
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10929)

Abstract

Incremental linearization is a conceptually simple, yet effective, technique that we have recently proposed for solving SMT problems over nonlinear real arithmetic constraints. In this paper, we show how the same approach can be applied successfully also to the harder case of nonlinear integer arithmetic problems. We describe in detail our implementation of the basic ideas inside the MathSAT SMT solver, and evaluate its effectiveness with an extensive experimental analysis over all nonlinear integer benchmarks in SMT-LIB. Our results show that MathSAT is very competitive with (and often outperforms) state-of-the-art SMT solvers based on alternative techniques.

References

  1. 1.
    Barrett, C., Conway, C.L., Deters, M., Hadarean, L., Jovanovic, D., King, T., Reynolds, A., Tinelli, C.: CVC4. In: CAV. pp. 171–177 (2011)CrossRefGoogle Scholar
  2. 2.
    Barrett, C.W., Sebastiani, R., Seshia, S.A., Tinelli, C.: Satisfiability modulo theories. In: Handbook of Satisfiability, Frontiers in Artificial Intelligence and Applications, vol. 185, pp. 825–885. IOS Press (2009)Google Scholar
  3. 3.
    Borralleras, C., Lucas, S., Oliveras, A., Rodríguez-Carbonell, E., Rubio, A.: Sat modulo linear arithmetic for solving polynomial constraints. J. Autom. Reason. 48(1), 107–131 (2012)MathSciNetCrossRefGoogle Scholar
  4. 4.
    Cimatti, A., Griggio, A., Irfan, A., Roveri, M., Sebastiani, R.: Incremental Linearization for Satisfiability and Verification Modulo Nonlinear Arithmetic and Transcendental Functions. Under Submission (2017), available at https://es.fbk.eu/people/irfan/papers/inclin-smt-vmt-nl-tf.pdf
  5. 5.
    Cimatti, Alessandro, Griggio, Alberto, Irfan, Ahmed, Roveri, Marco, Sebastiani, Roberto: Invariant Checking of NRA Transition Systems via Incremental Reduction to LRA with EUF. In: Legay, Axel, Margaria, Tiziana (eds.) TACAS 2017. LNCS, vol. 10205, pp. 58–75. Springer, Heidelberg (2017).  https://doi.org/10.1007/978-3-662-54577-5_4CrossRefGoogle Scholar
  6. 6.
    Cimatti, Alessandro, Griggio, Alberto, Irfan, Ahmed, Roveri, Marco, Sebastiani, Roberto: Satisfiability Modulo Transcendental Functions via Incremental Linearization. In: de Moura, Leonardo (ed.) CADE 2017. LNCS (LNAI), vol. 10395, pp. 95–113. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-63046-5_7CrossRefGoogle Scholar
  7. 7.
    Cimatti, Alessandro, Griggio, Alberto, Schaafsma, Bastiaan Joost, Sebastiani, Roberto: The MathSAT5 SMT Solver. In: Piterman, Nir, Smolka, Scott A. (eds.) TACAS 2013. LNCS, vol. 7795, pp. 93–107. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-36742-7_7CrossRefzbMATHGoogle Scholar
  8. 8.
    Collins, G.E.: Quantifier Elimination for Real Closed Fields by Cylindrical Algebraic Decomposition-preliminary Report. SIGSAM Bull. 8(3), 80–90 (1974)CrossRefGoogle Scholar
  9. 9.
    Corzilius, F., Loup, U., Junges, S., Ábrahám, E.: SMT-RAT: An SMT-compliant nonlinear real arithmetic toolbox. In: SAT. pp. 442–448. Springer (2012)CrossRefGoogle Scholar
  10. 10.
    De Moura, L., Bjørner, N.: Z3: An efficient SMT solver. In: TACAS. pp. 337–340. Springer (2008)Google Scholar
  11. 11.
    Dutertre, B.: Yices 2.2. In: Biere, A., Bloem, R. (eds.) Computer-Aided Verification (CAV’2014). LNCS, vol. 8559, pp. 737–744. Springer (July 2014)Google Scholar
  12. 12.
    Fuhs, Carsten, Giesl, Jürgen, Middeldorp, Aart, Schneider-Kamp, Peter, Thiemann, René, Zankl, Harald: SAT Solving for Termination Analysis with Polynomial Interpretations. In: Marques-Silva, João, Sakallah, Karem A. (eds.) SAT 2007. LNCS, vol. 4501, pp. 340–354. Springer, Heidelberg (2007).  https://doi.org/10.1007/978-3-540-72788-0_33CrossRefzbMATHGoogle Scholar
  13. 13.
    Jovanović, Dejan: Solving Nonlinear Integer Arithmetic with MCSAT. In: Bouajjani, Ahmed, Monniaux, David (eds.) VMCAI 2017. LNCS, vol. 10145, pp. 330–346. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-52234-0_18CrossRefGoogle Scholar
  14. 14.
    Jovanović, D., De Moura, L.: Solving non-linear arithmetic. In: IJCAR. pp. 339–354. Springer (2012)CrossRefGoogle Scholar
  15. 15.
    Kremer, Gereon, Corzilius, Florian, Ábrahám, Erika: A Generalised Branch-and-Bound Approach and Its Application in SAT Modulo Nonlinear Integer Arithmetic. In: Gerdt, Vladimir P., Koepf, Wolfram, Seiler, Werner M., Vorozhtsov, Evgenii V. (eds.) CASC 2016. LNCS, vol. 9890, pp. 315–335. Springer, Cham (2016).  https://doi.org/10.1007/978-3-319-45641-6_21CrossRefzbMATHGoogle Scholar
  16. 16.
    Matiyasevich, Y.V.: Hilbert’s Tenth Problem. MIT Press, Foundations of computing (1993)zbMATHGoogle Scholar
  17. 17.
    Reynolds, Andrew, Tinelli, Cesare, Jovanović, Dejan, Barrett, Clark: Designing Theory Solvers with Extensions. In: Dixon, Clare, Finger, Marcelo (eds.) FroCoS 2017. LNCS (LNAI), vol. 10483, pp. 22–40. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-66167-4_2CrossRefGoogle Scholar
  18. 18.
    SMT-LIB, The Satisfiability Modulo Theories Library. http://smtlib.org

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Alessandro Cimatti
    • 1
  • Alberto Griggio
    • 1
  • Ahmed Irfan
    • 1
    • 2
  • Marco Roveri
    • 1
  • Roberto Sebastiani
    • 2
  1. 1.Fondazione Bruno KesslerTrentoItaly
  2. 2.DISIUniversity of TrentoTrentoItaly

Personalised recommendations