Hostname: page-component-848d4c4894-p2v8j Total loading time: 0 Render date: 2024-05-02T13:58:09.531Z Has data issue: false hasContentIssue false

Achieving compositionality of the stable model semantics for smodels programs1

Published online by Cambridge University Press:  01 November 2008

EMILIA OIKARINEN
Affiliation:
Helsinki University of Technology, TKK, Department of Information and Computer Science, P.O. Box 5400, FI-02015 TKK, Finland (e-mail: Emilia.Oikarinen@tkk.fi, Tomi.Janhunen@tkk.fi)
TOMI JANHUNEN
Affiliation:
Helsinki University of Technology, TKK, Department of Information and Computer Science, P.O. Box 5400, FI-02015 TKK, Finland (e-mail: Emilia.Oikarinen@tkk.fi, Tomi.Janhunen@tkk.fi)

Abstract

In this paper, a Gaifman–Shapiro-style module architecture is tailored to the case of smodels programs under the stable model semantics. The composition of smodels program modules is suitably limited by module conditions which ensure the compatibility of the module system with stable models. Hence the semantics of an entire smodels program depends directly on stable models assigned to its modules. This result is formalized as a module theorem which truly strengthens V. Lifschitz and H. Turner's splitting-set theorem (June 1994, Splitting a logic program. In Logic Programming: Proceedings of the Eleventh International Conference on Logic Programming, Santa Margherita Ligure, Italy, P. V. Hentenryck, Ed. MIT Press, 23–37) for the class of smodels programs. To streamline generalizations in the future, the module theorem is first proved for normal programs and then extended to cover smodels programs using a translation from the latter class of programs to the former class. Moreover, the respective notion of module-level equivalence, namely modular equivalence, is shown to be a proper congruence relation: it is preserved under substitutions of modules that are modularly equivalent. Principles for program decomposition are also addressed. The strongly connected components of the respective dependency graph can be exploited in order to extract a module structure when there is no explicit a priori knowledge about the modules of a program. The paper includes a practical demonstration of tools that have been developed for automated (de)composition of smodels programs.

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2008

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

Baral, C. 2003. Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge University Press, Cambridge, UK.CrossRefGoogle Scholar
Brain, M., Crick, T., Vos, M. D. and Fitch, J. August 2006. TOAST: Applying answer set programming to superoptimisation. In Logic Programming: 22nd International Conference, ICLP 2006, Seattle, WA, Etalle, S. and Truszczynski, M., Eds. Lecture Notes in Computer Science, vol. 4079. Springer, Heidelberg, Germany, 270284.CrossRefGoogle Scholar
Brogi, A., Mancarella, P., Pedreschi, D. and Turini, F. 1994. Modular logic programming. ACM Transactions on Programming Languages and Systems 16 (4), 13611398.CrossRefGoogle Scholar
Brooks, D. R., Erdem, E., Erdogan, S. T., Minett, J. W. and Ringe, D. 2007. Inferring phylogenetic trees using answer set programming. Journal of Automated Reasoning 39 (4), 471511.CrossRefGoogle Scholar
Bugliesi, M., Lamma, E. and Mello, P. 1994. Modularity in logic programming. Journal of Logic Programming 19/20, 443502.CrossRefGoogle Scholar
Clark, K. L. 1978. Negation as failure. In Logic and Data Bases, Gallaire, H. and Minker, J., Eds. Plenum Press, New York, 293322.CrossRefGoogle Scholar
Eiter, T. and Fink, M. December 2003. Uniform equivalence of logic programs under the stable model semantics. In Logic Programming: Nineteenth International Conference, ICLP 2003, Mumbai, India, Palamidessi, C., Ed. Lecture Notes in Computer Science, vol. 2916. Springer, Heidelberg, Germany, 224238.CrossRefGoogle Scholar
Eiter, T., Fink, M., Tompits, H. and Woltran, S. January 2004. Simplifying logic programs under uniform and strong equivalence. In Logic Programming and Nonmonotonic Reasoning: Seventh International Conference, LPNMR 2004, Fort Lauderdale, FL, Lifschitz, V. and Niemelä, I., Eds. Lecture Notes in Artificial Intelligence, vol. 2923. Springer, Heidelberg, Germany, 8799.Google Scholar
Eiter, T., Gottlob, G. and Mannila, H. 1997a. Disjunctive datalog. ACM Transactions on Database Systems 22 (3), 364418.CrossRefGoogle Scholar
Eiter, T., Gottlob, G. and Veith, H. July 1997b. Modular logic programming and generalized quantifiers. In Logic Programming and Nonmonotonic Reasoning: Fourth International Conference, LPNMR'97, Dagstuhl Castle, Germany, Dix, J., Furbach, U. and Nerode, A., Eds. Lecture Notes in Artificial Intelligence, vol. 1265. Springer, Heidelberg, Germany, 290309.Google Scholar
Eiter, T., Tompits, H. and Woltran, S. July–August 2005. On solution correspondences in answer-set programming. In IJCAI-05, Proceedings of the Nineteenth International Joint Conference on Artificial Intelligence, Edinburgh, Scotland, UK, Kaelbling, L. P. and Saffiotti, A., Eds. Professional Book Center, 97102.Google Scholar
Erdem, E., Lifschitz, V. and Ringe, D. 2006. Temporal phylogenetic networks and logic programming. Theory and Practice of Logic Programming 6 (5), 539558.CrossRefGoogle Scholar
Etalle, S. and Gabbrielli, M. 1996. Transformations of CLP modules. Theoretical Computer Science 166 (1–2), 101146.CrossRefGoogle Scholar
Faber, W., Greco, G. and Leone, N. January 2005. Magic sets and their application to data integration. In Database Theory—ICDT 2005: Tenth International Conference, Edinburgh, UK, Eiter, T. and Libkin, L., Eds. Lecture Notes in Computer Science, vol. 3363. Springer, Heidelberg, Germany, 306320.Google Scholar
Fages, F. 1994. Consistency of Clark's completion and existence of stable models. Journal of Methods of Logic in Computer Science 1, 5160.Google Scholar
Ferraris, P. and Lifschitz, V. 2005. Weight constraints as nested expressions. Theory and Practice of Logic Programming 5 (1–2), 4574.CrossRefGoogle Scholar
Gaifman, H. and Shapiro, E. Y. 1989. Fully abstract compositional semantics for logic programs. In Conference Record of the Sixteenth Annual ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages. ACM Press, Austin, TX, 134142.Google Scholar
Gebser, M., Kaufmann, B., Neumann, A. and Schaub, T. May 2007. clasp: A conflict-driven answer set solver. In Logic Programming and Nonmonotonic Reasoning: Ninth International Conference, LPNMR 2007, Tempe, AZ, USA, Baral, C., Brewka, G. and Schlipf, J. S., Eds. Lecture Notes in Artificial Intelligence, vol. 4483. Springer, Heidelberg, Germany, 260265.CrossRefGoogle Scholar
Gelfond, M. and Gabaldon, A. 1999. Building a knowledge base: An example. Annals of Mathematics and Artificial Intelligence 25 (3–4), 165199.CrossRefGoogle Scholar
Gelfond, M. and Leone, N. 2002. Logic programming and knowledge representation—the A-Prolog perspective. Artificial Intelligence 138 (1–2), 338.CrossRefGoogle Scholar
Gelfond, M. and Lifschitz, V. August 1988. The stable model semantics for logic programming. In Logic Programming: Proceedings of the Fifth International Conference and Symposium, Seattle, WA, Kowalski, R. A. and Bowen, K. A., Eds. MIT Press, Cambridge, MA, 10701080.Google Scholar
Gelfond, M. and Lifschitz, V. June 1990. Logic programs with classical negation. In Logic programming: Proceedings of the Seventh International Conference, Jerusalem, Israel, Warren, D. H. D. and Szeredi, P., Eds. MIT Press, Cambridge, MA, 579597.Google Scholar
Giordano, L. and Martelli, A. 1994. Structuring logic programs: A modal approach. Journal of Logic Programming 21 (2), 5994.CrossRefGoogle Scholar
Heljanko, K. and Ştefănescu, A. 2004. Complexity results for checking distributed implementability. Technical Report 05/2004, Institute of Formal Methods in Computer Science, University of Stuttgart, Stuttgart, Germany.Google Scholar
Heljanko, K. and Ştefănescu, A. June 2005. Complexity results for checking distributed implementability. In Fifth International Conference on Application of Concurrency to System Design, ACSD 2005, St.France, Malo, Desel, J. and Watanabe, Y., Eds. IEEE Computer Society, 7887.Google Scholar
Ianni, G., Ielpa, G., Pietramala, A., Santoro, M. C. and Calimeri, F. June 2004. Enhancing answer set programming with templates. In Tenth International Workshop on Non-Monotonic Reasoning (NMR 2004), Whistler, Canada, Delgrande, J. P. and Schaub, T., Eds. 233239.Google Scholar
Jaffar, J. and Maher, M. J. 1994. Constraint logic programming: A survey. Journal of Logic Programming 19/20, 503581.CrossRefGoogle Scholar
Janhunen, T. 2006. Some (in)translatability results for normal logic programs and propositional theories. Journal of Applied Non-Classical Logics 16 (1–2), 3586.CrossRefGoogle Scholar
Janhunen, T. 2007. Intermediate languages of ASP systems and tools. In Proceedings of the First International Workshop on Software Engineering for Answer Set Programming, De Vos, M. and Schaub, T., Eds. Number CSBU-2007-05 in Deparment of Computer Science, University of Bath, Technical Report Series. Tempe, AZ, Heidelberg, Germany, 1225.Google Scholar
Janhunen, T. and Oikarinen, E. September 2002. Testing the equivalence of logic programs under stable model semantics. In Logics in Artificial Intelligence, Eighth European Conference, JELIA 2002, Cosenza, Italy, Flesca, S., Greco, S., Leone, N. and Ianni, G., Eds. Lecture Notes in Artificial Intelligence, vol. 2424. Springer, Heidelberg, Germany, 493504.Google Scholar
Janhunen, T. and Oikarinen, E. 2007. Automated verification of weak equivalence within the Smodels system. Theory and Practice of Logic Programming 7 (6), Heidelberg, Germany, 697744.CrossRefGoogle Scholar
Janhunen, T., Oikarinen, E., Tompits, H. and Woltran, S. May 2007. Modularity aspects of disjunctive stable models. In Logic Programming and Nonmonotonic Reasoning: Ninth International Conference, LPNMR 2007, Tempe, AZ, USA, Baral, C., Brewka, G. and Schlipf, J., Eds. Lecture Notes in Artificial Intelligence, vol. 4483. Springer, 175187.CrossRefGoogle Scholar
Järvisalo, M. and Oikarinen, E. September 2007. Extended ASP tableaux and rule redundancy in normal logic programs. In Logic Programming: 23rd International Conference, ICLP 2007, Porto, Portugal, Dahl, V. and Niemelä, I., Eds. Lecture Notes in Computer Science, vol. 4670. Springer, Heidelberg, Germany, 134148. To appear in Theory and Practice of Logic Programming, arXiv:cs.AI/0809.3204.CrossRefGoogle Scholar
Lierler, Y. September 2005. cmodels—SAT-based disjunctive answer set solver. In Logic Programming and Nonmonotonic Reasoning, Eighth International Conference, LPNMR 2005, Diamante, Italy, Baral, C., Greco, G., Leone, N. and Terracina, G., Eds. Lecture Notes in Artificial Intelligence, vol. 3662. Springer, Heidelberg, Germany, 447451.Google Scholar
Lifschitz, V. August 1985. Computing circumscription. In Proceedings of the Ninth International Joint Conference on Artificial Intelligence, Los Angeles, CA, Joshi, A. K., Ed. Morgan Kaufmann, San Francisco, CA, 121127.Google Scholar
Lifschitz, V., Pearce, D. and Valverde, A. 2001. Strongly equivalent logic programs. ACM Transactions on Computational Logic 2 (4), 526541.CrossRefGoogle Scholar
Lifschitz, V. and Turner, H. June 1994. Splitting a logic program. In Logic Programming: Proceedings of the Eleventh International Conference on Logic Programming, Santa Margherita Ligure, Italy, Hentenryck, P. V., Ed. MIT Press, Cambridge, MA, 2337.Google Scholar
Lin, F. and Zhao, Y. 2004. ASSAT: Computing answer sets of a logic program by SAT solvers. Artificial Intelligence 157 (1–2), 115137.CrossRefGoogle Scholar
Maher, M. J. 1993. A transformation system for deductive database modules with perfect model semantics. Theoretical Computer Science 110 (2), 377403.CrossRefGoogle Scholar
Mancarella, P. and Pedreschi, D. August 1988. An algebra of logic programs. In Logic Programming: Proceedings of the Fifth International Conference and Symposium, Seattle, WA, Kowalski, R. A. and Bowen, K. A., Eds. MIT Press, Cambridge, MA, 10061023.Google Scholar
Marek, V. W. and Truszczyński, M. 1991. Autoepistemic logic. Journal of the ACM 38 (3), 588619.CrossRefGoogle Scholar
Marek, V. W. and Truszczyński, M. 1999. Stable models and an alternative logic programming paradigm. In The Logic Programming Paradigm: A 25-Year Perspective, Apt, K. R., Marek, V. W., Truszczyński, M. and Warren, D. S., Eds. Springer, Heidelberg, Germany, 375398.CrossRefGoogle Scholar
Meyer, A. R. July 1988. Semantical paradigms: Notes for an invited lecture, with two appendices by Stavros S. Cosmadakis. In Third Annual Symposium on Logic in Computer Science, Edinburgh, Scotland, UK, Gurevich, Y., Ed. IEEE Computer Society, 236253.Google Scholar
Miller, D. 1989. A logical analysis of modules in logic programming. Journal of Logic Programming 6 (1–2), 79108.CrossRefGoogle Scholar
Mostowski, A. 1957. On a generalization of quantifiers. Fundamenta Mathematicae 44, 1236.CrossRefGoogle Scholar
Niemelä, I. 1999. Logic programming with stable model semantics as a constraint programming paradigm. Annals of Mathematics and Artificial Intelligence 25 (3–4), 241273.CrossRefGoogle Scholar
Nogueira, M., Balduccini, M., Gelfond, M., Watson, R. and Barry, M. March 2001. An A-Prolog decision support system for the space shuttle. In Practical Aspects of Declarative Languages, Third International Symposium, PADL 2001, Las Vegas, NV, Ramakrishnan, I. V., Ed. Lecture Notes in Computer Science, vol. 1990. Springer, Heidelberg, Germany, 169183.Google Scholar
Oikarinen, E. May 2007. Modularity in smodels programs. In Logic Programming and Nonmonotonic Reasoning: Ninth International Conference, LPNMR 2007, Tempe, AZ, Baral, C., Brewka, G. and Schlipf, J., Eds. Lecture Notes in Artificial Intelligence, vol. 4483. Springer, Heidelberg, Germany, 321326.CrossRefGoogle Scholar
Oikarinen, E. and Janhunen, T. August–Sepetember 2006. Modular equivalence for normal logic programs. In ECAI 2006, Seventeenth European Conference on Artificial Intelligence, Riva del Garda, Italy, Brewka, G., Coradeschi, S., Perini, A. and Traverso, P., Eds. IOS Press, Amsterdam, the Netherlands, 412416.Google Scholar
Oikarinen, E. and Janhunen, T. September 2008. Implementing prioritized circumscription by computing disjunctive stable models. In Artificial Intelligence: Methodology, Systems, and Applications, Thirteenth International Conference, AIMSA 2008, Varna, Bulgaria, Dochev, D., Pistore, M. and Traverso, P., Eds. Lecture Notes in Artificial Intelligence, vol. 5223. Springer, Heidelberg, Germany, 167180.Google Scholar
Oikarinen, E. and Janhunen, T. August 2008. A translation-based approach to the verification of modular equivalence. Journal of Logic and Computation, Advance Access published, doi:10.1093/logcom/exn039.CrossRefGoogle Scholar
O'Keefe, R. A. 1985. Towards an algebra for constructing logic programs. In Proceedings of the 1985 Symposium on Logic Programming, Boston, MA, 152–160.Google Scholar
Pearce, D., Tompits, H. and Woltran, S. December 2001. Encodings for equilibrium logic and logic programs with nested expressions. In Progress in Artificial Intelligence, Knowledge Extraction, Multi-agent Systems, Logic Programming and Constraint Solving, Tenth Portuguese Conference on Artificial Intelligence, EPIA 2001, Porto, Portugal, Brazdil, P. and Jorge, A., Eds. Lecture Notes in Artificial Intelligence, vol. 2258. Springer, Heidelberg, Germany, 306320.Google Scholar
Przymusinski, T. C. August 1988. Perfect model semantics. In Logic Programming: Proceedings of the Fifth International Conference and Symposium, Seattle, WA, Kowalski, R. A. and Bowen, K. A., Eds. MIT Press, Cambridge, MA, 10811096.Google Scholar
Sagiv, Y. March 1987. Optimizing datalog programs. In Proceedings of the Sixth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, San Diego, CA. ACM Press, New York, 349362.CrossRefGoogle Scholar
Simons, P., Niemelä, I. and Soininen, T. 2002. Extending and implementing the stable model semantics. Artificial Intelligence 138 (1–2), 181234.CrossRefGoogle Scholar
Soininen, T., Niemelä, I., Tiihonen, J. and Sulonen, R. 2001. Representing configuration knowledge with weight constraint rules. In Proceedings of the First International Workshop on Answer Set Programming: Towards Efficient and Scalable Knowledge (ASP 2001), Provetti, A. and Son, T. C., Eds. AAAI Press, Stanford, CA.Google Scholar
Tari, L., Baral, C. and Anwar, S. September 2005. A language for modular answer set programming: Application to ACC tournament scheduling. In Answer Set Programming, Advances in Theory and Implementation, Proceedings of the Third International ASP'05 Workshop, Bath, UK, Vos, M. D. and Provetti, A., Eds. CEUR Workshop Proceedings, vol. 142. CEUR-WS.org.Google Scholar
Tarjan, R. 1972. Depth-first search and linear graph algorithms. SIAM Journal on Computing 1 (2), 146160.CrossRefGoogle Scholar
Turner, H. 2003. Strong equivalence made easy: Nested expressions and weight constraints. Theory and Practice of Logic Programming 3 (4–5), 609622.CrossRefGoogle Scholar
Valiant, L. G. 1979. The complexity of enumeration and reliability problems. SIAM Journal on Computing 8 (3), 410421.CrossRefGoogle Scholar
Woltran, S. September 2004. Characterizations for relativized notions of equivalence in answer set programming. In Logics in Artificial Intelligence: Ninth European Conference, JELIA 2004, Lisbon, Portugal, Alferes, J. J. and Leite, J. A., Eds. Lecture Notes in Artificial Intelligence, vol. 3229. Springer, Heidelberg, Germany, 161173.CrossRefGoogle Scholar
Woltran, S. May 2007. A common view on strong, uniform, and other notions of equivalence in answer-set programming. In Proceedings of the LPNMR'07 Workshop on Correspondence and Equivalence for Nonmonotonic Theories (CENT2007), Tempe, AZ, Pearce, D., Polleres, A., Valverde, A., and Woltran, S., Eds. CEUR Workshop Proceedings, vol. 265. CEUR-WS.org, 1324.Google Scholar