Skip to main content

Experimenting on Solving Nonlinear Integer Arithmetic with Incremental Linearization

  • Conference paper
  • First Online:
Theory and Applications of Satisfiability Testing – SAT 2018 (SAT 2018)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,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.

This work was funded in part by the H2020-FETOPEN-2016-2017-CSA project SC\(^2\) (712689).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    In the following, we only consider quantifier-free theories, and we abuse the accepted notation by omitting the “QF_” prefix in the names of the theories.

  2. 2.

    In the rest of the paper, for simplifying the presentation we assume that an equality constraint is written as a conjunction of weak inequality constraints, and an inequality constraint is written as a disjunction of strict inequality constraints.

  3. 3.

    This can happen when the tangent lemmas (see Fig. 8) are not used.

  4. 4.

    We are grateful to Andrew Reynolds for fruitful discussions about this.

  5. 5.

    It is important to stress here that we keep the monomials in a normal form by reordering their variables, although this is not shown explicitly in the pseudo-code.

  6. 6.

    In our implementation we use a bounded (dichotomic) search for this. For example, for the ‘UU’ direction we try increasing both a and b until either the tangent plane passing through (ab) cannot separate the multiplication curve from the bad point c anymore, or we reach a maximum bound on the number of iterations.

References

  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)

    Chapter  Google Scholar 

  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. 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)

    Article  MathSciNet  Google Scholar 

  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. 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_4

    Chapter  Google Scholar 

  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_7

    Chapter  Google Scholar 

  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_7

    Chapter  MATH  Google Scholar 

  8. Collins, G.E.: Quantifier Elimination for Real Closed Fields by Cylindrical Algebraic Decomposition-preliminary Report. SIGSAM Bull. 8(3), 80–90 (1974)

    Article  Google Scholar 

  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)

    Chapter  Google Scholar 

  10. De Moura, L., Bjørner, N.: Z3: An efficient SMT solver. In: TACAS. pp. 337–340. Springer (2008)

    Google Scholar 

  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. 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_33

    Chapter  MATH  Google Scholar 

  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_18

    Chapter  Google Scholar 

  14. Jovanović, D., De Moura, L.: Solving non-linear arithmetic. In: IJCAR. pp. 339–354. Springer (2012)

    Chapter  Google Scholar 

  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_21

    Chapter  MATH  Google Scholar 

  16. Matiyasevich, Y.V.: Hilbert’s Tenth Problem. MIT Press, Foundations of computing (1993)

    MATH  Google Scholar 

  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_2

    Chapter  Google Scholar 

  18. SMT-LIB, The Satisfiability Modulo Theories Library. http://smtlib.org

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ahmed Irfan .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Cimatti, A., Griggio, A., Irfan, A., Roveri, M., Sebastiani, R. (2018). Experimenting on Solving Nonlinear Integer Arithmetic with Incremental Linearization. In: Beyersdorff, O., Wintersteiger, C. (eds) Theory and Applications of Satisfiability Testing – SAT 2018. SAT 2018. Lecture Notes in Computer Science(), vol 10929. Springer, Cham. https://doi.org/10.1007/978-3-319-94144-8_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-94144-8_23

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-94143-1

  • Online ISBN: 978-3-319-94144-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics