A Module-Based Framework for Multi-language Constraint Modeling

  • Matti Järvisalo
  • Emilia Oikarinen
  • Tomi Janhunen
  • Ilkka Niemelä
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5753)


We develop a module-based framework for constraint modeling where it is possible to combine different constraint modeling languages and exploit their strengths in a flexible way. In the framework a constraint model consists of modules with clear input/output interfaces. When combining modules, apart from the interface, a module is a black box whose internals are invisible to the outside world. Inside a module a chosen constraint language (approaches such as CP, ASP, SAT, and MIP) can be used. This leads to a clear modular semantics where the overall semantics of the whole constraint model is obtained from the semantics of individual modules. The framework supports multi-language modeling without the need to develop a complicated joint semantics and enables the use of alternative semantical underpinnings such as default negation and classical negation in the same model. Furthermore, computational aspects of the framework are considered and, in particular, possibilities of benefiting from the known module structure in solving constraint models are studied.


Module System Mixed Integer Programming Constraint Programming Conjunctive Normal Form Constraint Model 
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.
    Eiter, T., Gottlob, G., Veith, H.: Modular logic programming and generalized quantifiers. In: Fuhrbach, U., Dix, J., Nerode, A. (eds.) LPNMR 1997. LNCS, vol. 1265, pp. 290–309. Springer, Heidelberg (1997)Google Scholar
  2. 2.
    Baral, C., Dzifcak, J., Takahashi, H.: Macros, macro calls and use of ensembles in modular answer set programming. In: Etalle, S., Truszczyński, M. (eds.) ICLP 2006. LNCS, vol. 4079, pp. 376–390. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  3. 3.
    Balduccini, M.: Modules and signature declarations for A-Prolog: Progress report. In: SEA, pp. 41–55 (2007)Google Scholar
  4. 4.
    Oikarinen, E., Janhunen, T.: Achieving compositionality of the stable model semantics for smodels programs. Theory and Practice of Logic Programming 8(5-6), 717–761 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Janhunen, T.: Modular equivalence in general. In: ECAI, pp. 75–79. IOS Press, Amsterdam (2008)Google Scholar
  6. 6.
    Eiter, T., Ianni, G., Schindlauer, R., Tompits, H.: A uniform integration of higher-order reasoning and external evaluations in answer-set programming. In: IJCAI, pp. 90–96 (2005)Google Scholar
  7. 7.
    Elkabani, I., Pontelli, E., Son, T.: Smodelsa - a system for computing answer sets of logic programs with aggregates. In: Baral, C., Greco, G., Leone, N., Terracina, G. (eds.) LPNMR 2005. LNCS (LNAI), vol. 3662, pp. 427–431. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Gebser, M., et al.: Clingcon (2009),
  9. 9.
    Tari, L., Baral, C., Anwar, S.: A language for modular answer set programming: Application to ACC tournament scheduling. In: ASP, pp. 277–292 (2005)Google Scholar
  10. 10.
    Baselice, S., Bonatti, P.A., Gelfond, M.: Towards an integration of answer set and constraint solving. In: Gabbrielli, M., Gupta, G. (eds.) ICLP 2005. LNCS, vol. 3668, pp. 52–66. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  11. 11.
    Mellarkod, V., Gelfond, M., Zhang, Y.: Integrating answer set programming and constraint logic programming. Ann. Math. Artif. Intell. 53(1-4), 251–287 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Castro, L., Swift, T., Warren, D.: Xasp (2009),
  13. 13.
    El-Khatib, O., Pontelli, E., Son, T.: Integrating an answer set solver into Prolog: ASP-PROLOG. In: Baral, C., Greco, G., Leone, N., Terracina, G. (eds.) LPNMR 2005. LNCS (LNAI), vol. 3662, pp. 399–404. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  14. 14.
    Pontelli, E., Son, T., Baral, C.: A logic programming based framework for intelligent web services composition. In: Managing Web Services Quality: Measuring Outcomes and Effectiveness. IDEA Group Publishing (2008)Google Scholar
  15. 15.
    Flener, P., Pearson, J., Ågren, M.: Introducing ESRA, a relational language for modelling combinatorial problems. In: Bruynooghe, M. (ed.) LOPSTR 2004. LNCS, vol. 3018, pp. 214–232. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  16. 16.
    Frisch, A., Harvey, W., Jefferson, C., Hernández, B.M., Miguel, I.: ESSENCE: A constraint language for specifying combinatorial problems. Constraints 13(3), 268–306 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Marriott, K., Nethercote, N., Rafeh, R., Stuckey, P., de la Banda, M.G., Wallace, M.: The design of the Zinc modelling language. Constraints 13(3), 229–267 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Goltz, H.J., Matzke, D.: University timetabling using constraint logic programming. In: Gupta, G. (ed.) PADL 1999. LNCS, vol. 1551, pp. 320–334. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  19. 19.
    Perri, S., Scarcello, F., Catalano, G., Leone, N.: Enhancing DLV instantiator by backjumping techniques. Ann. Math. Artif. Intell. 51(2-4), 195–228 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Huang, J.: Universal Booleanization of constraint models. In: Stuckey, P.J. (ed.) CP 2008. LNCS, vol. 5202, pp. 144–158. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  21. 21.
    Niemelä, I.: Stable models and difference logic. Ann. Math. Artif. Intell. 53(1-4), 313–329 (2008)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Matti Järvisalo
    • 1
  • Emilia Oikarinen
    • 1
  • Tomi Janhunen
    • 1
  • Ilkka Niemelä
    • 1
  1. 1.Department of Information and Computer ScienceHelsinki University of Technology TKKTKKFinland

Personalised recommendations