Skip to main content

Scarab: A Rapid Prototyping Tool for SAT-Based Constraint Programming Systems

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7962))

Abstract

In this paper, we present the Scarab system which is a prototyping tool for developing SAT-based systems. It provides a rich constraint modeling language on Scala and enables a programmer to rapidly specify problems and to experiment with different modelings. Scarab also provides a simple way to realize incremental solving, solution enumeration, and dynamic addition and/or removal of constraints. In Scarab, we can use integer variables and arithmetic constraints, and all of them are encoded into SAT without the need of developing dedicated encoder. SAT solvers are then used for finding solutions.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Biere, A., Heule, M., van Maaren, H., Walsh, T.: Handbook of Satisfiability. IOS Press (2009)

    Google Scholar 

  2. Odersky, M., Altherr, P., Cremet, V., Emir, B., Maneth, S., Micheloud, S., Mihaylov, N., Schinz, M., Stenman, E., Zenger, M.: An overview of the scala programming language. Technical Report IC/2004/64, École Polytechnique Fédérale de Lausanne, Switzerland (2004)

    Google Scholar 

  3. Odersky, M., Spoon, L., Venners, B.: Programming in Scala, 2nd edn. Artima, Inc. (2010)

    Google Scholar 

  4. Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Computing Surveys 37(4), 316–344 (2005)

    Article  Google Scholar 

  5. Tamura, N., Taga, A., Kitagawa, S., Banbara, M.: Compiling finite linear CSP into SAT. In: Benhamou, F. (ed.) CP 2006. LNCS, vol. 4204, pp. 590–603. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  6. Tamura, N., Taga, A., Kitagawa, S., Banbara, M.: Compiling finite linear CSP into SAT. Constraints 14(2), 254–272 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  7. Tamura, N., Tanjo, T., Banbara, M.: System description of a SAT-based CSP solver sugar. In: Proceedings of the 3rd International CSP Solver Competition, pp. 71–75 (2008)

    Google Scholar 

  8. Berre, D.L., Parrain, A.: The Sat4j library, release 2. 2. Journal on Satisfiability, Boolean Modeling and Computation 7, 59–64 (2010) system description

    Google Scholar 

  9. van Dongen, M.R.C., Lecoutre, C., Roussel, O. (eds.): Proceedings of the Second International CSP Solver Competition (2008)

    Google Scholar 

  10. Régin, J.C.: A filtering algorithm for constraints of difference in CSPs. In: AAAI 1994, pp. 362–367 (1994)

    Google Scholar 

  11. Rossi, F., van Beek, P., Walsh, T. (eds.): Handbook of Constraint Programming. Elsevier (2006)

    Google Scholar 

  12. Tseitin, G.S.: On the complexity of derivations in the propositional calculus. Studies in Mathematics and Mathematical Logic Part II, 115–125 (1968)

    Google Scholar 

  13. Prestwich, S.: 12: CNF encodings. In: Handbook of Satisfiability, pp. 75–97. IOS Press (2009)

    Google Scholar 

  14. Iwama, K., Miyazaki, S.: SAT-variable complexity of hard combinatorial problems. In: Proceedings of the World Computer Congress of the IFIP, pp. 253–258 (1994)

    Google Scholar 

  15. Walsh, T.: SAT v CSP. In: Dechter, R. (ed.) CP 2000. LNCS, vol. 1894, pp. 441–456. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  16. Gent, I.P.: Arc consistency in SAT. In: Proceedings of the 15th Eureopean Conference on Artificial Intelligence, ECAI 2002, pp. 121–125 (2002)

    Google Scholar 

  17. Gent, I.P., Nightingale, P.: A new encoding of alldifferent into SAT. In: Proceedings of the 3rd International Workshop on Modelling and Reformulating Constraint Satisfaction Problems, pp. 95–110 (2004)

    Google Scholar 

  18. Ansótegui, C., Manyà, F.: Mapping problems with finite-domain variables to problems with boolean variables. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542, pp. 1–15. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  19. Gavanelli, M.: The log-support encoding of CSP into SAT. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 815–822. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  20. Tanjo, T., Tamura, N., Banbara, M.: Proposal of a compact and efficient SAT encoding using a numeral system of any base. In: Proceedings of the 1st International Workshop on the Cross-Fertilization Between CSP and SAT, p. 15 (2011)

    Google Scholar 

  21. Hebrard, E., O’Mahony, E., O’Sullivan, B.: Constraint programming and combinatorial optimisation in numberjack. In: Lodi, A., Milano, M., Toth, P. (eds.) CPAIOR 2010. LNCS, vol. 6140, pp. 181–185. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  22. Copris: http://bach.istc.kobe-u.ac.jp/copris/

  23. SCP: http://lara.epfl.ch/web2010/scp

  24. scalasmt: http://code.google.com/p/scalasmt/

  25. OscaR Team: Oscar: Scala in or (2012), https://bitbucket.org/oscarlib/oscar

  26. JaCoP: web page, http://jacop.osolpro.com

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Soh, T., Tamura, N., Banbara, M. (2013). Scarab: A Rapid Prototyping Tool for SAT-Based Constraint Programming Systems. In: Järvisalo, M., Van Gelder, A. (eds) Theory and Applications of Satisfiability Testing – SAT 2013. SAT 2013. Lecture Notes in Computer Science, vol 7962. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39071-5_34

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-39071-5_34

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-39070-8

  • Online ISBN: 978-3-642-39071-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics