Abstract
Felicitous models were defined by Kit Fine in 1987 for the purpose of describing the semantics of negation in the programming language Prolog. They are often referred to as stable models, or answer sets. Years later, sophisticated software systems for generating answer sets were designed, and they became the basis of a new programming paradigm, called answer set programming. That programming method is used now for solving computational problems in many areas of science and technology. This chapter traces the early history of felicitous models and the ways in which that idea contributed to computer science.
To the memory of Brian Michael Goldberg.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
Fine’s paper was presented at the Eighth International Congress of Logic, Methodology and Philosophy of Science, held in 1987. Bidoit and Froidevaix described their work at the Second Annual IEEE Symposium on Logic in Computer Science the same year. Gelfond’s paper was given at the AAAI National Conference on Artificial Intelligence, in 1987 as well. The paper by Gelfond and Lifschitz was initially submitted to the Seventh ACM Symposium on Principles of Database Systems and became “one of the papers which time considerations prevented from being presented at the Symposium”; in 1988 it was contributed to the International Logic Programming Conference and Symposium.
References
Apt, K., Blair, H., & Walker, A. (1988). Towards a theory of declarative knowledge. In J. Minker (Ed.), Foundations of deductive databases and logic programming (pp. 89–148). Morgan Kaufmann.
Bidoit, N., & Froidevaux, C. (1987). Minimalism subsumes default logic and circumscription in stratified logic programming. In Proceedings of the Second Annual IEEE Symposium on Logic in Computer Science (pp. 89–97).
Brooks, D. R., Erdem, E., Erdoğan, S. T., Minett, J. W., & Ringe, D. (2007). Inferring phylogenetic trees using answer set programming. Journal of Automated Reasoning, 39, 471–511.
Clark, K. (1978). Negation as failure. In H. Gallaire & J. Minker (Eds.), Logic and data bases (pp. 293–322). Plenum Press.
Dimopoulos, Y., Nebel, B., & Koehler, J. (1997). Encoding planning problems in non-monotonic logic programs. In S. Steel & R. Alami (Eds.), Proceedings of European Conference on Planning (pp. 169–181). Springer.
Erdem, E., Gelfond, M., & Leone, N. (2016). Applications of answer set programming. AI Magazine, 37, 53–68.
Falkner, A., Friedrich, G., Schekotihin, K., Taupe, R., & Teppan, E. (2018). Industrial applications of answer set programming. Künstliche Intelligenz, 32, 165–176.
Fandinno, J., Lifschitz, V., Lühne, P., & Schaub, T. (2020). Verifying tight programs with anthem and vampire. Theory and Practice of Logic Programming,20.
Fine, K. (1989). The justification of negation as failure. In Proceedings of the Eighth International Congress of Logic, Methodology and Philosophy of Science (pp. 263–301).
Gebser, M., Harrison, A., Kaminski, R., Lifschitz, V., & Schaub, T. (2015). Abstract gringo. Theory and Practice of Logic Programming,15, 449–463.
Gebser, M., Kaminski, R., Kaufmann, B., & Schaub, T. (2012). Answer set solving in practice. In Synthesis Lectures on Artificial Intelligence and Machine Learning. Morgan and Claypool Publishers.
Gebser, M., Maratea, M., & Ricca, F. (2017). The design of the seventh answer set programming competition. In Proceedings of the Fourteenth International Conference on Logic Programming and Nonmonotonic Reasoning (pp. 3–9). Springer.
Gelfond, M. (1987). On stratified autoepistemic theories. In Proceedings of National Conference on Artificial Intelligence (AAAI) (pp. 207–211).
Gelfond, M., & Lifschitz, V. (1988). The stable model semantics for logic programming. In R. Kowalski & K. Bowen (Eds.) Proceedings of International Logic Programming Conference and Symposium (pp. 1070–1080). MIT Press.
Heyting, A. (1930). Die formalen Regeln der intuitionistischen Logik. Sitzungsberichte der Preussischen Akademie von Wissenschaften. Physikalisch-mathematische Klasse, 42–56.
Karp, R. (1972). Reducibility among combinatorial problems. In R. E. Miller & J. W. Thatcher (Eds.), Complexity of computer computations (pp. 85–103). Plenum.
Leone, N., Pfeifer, G., Faber, W., Eiter, T., Gottlob, G., Perri, S., & Scarcello, F. (2006). The DLV system for knowledge representation and reasoning. ACM Transactions on Computational Logic, 7(3), 499–562.
Lifschitz, V. (2019). Answer set programming. Springer.
Lifschitz, V., Pearce, D., & Valverde, A. (2001). Strongly equivalent logic programs. ACM Transactions on Computational Logic, 2, 526–541.
Lifschitz, V., Tang, L. R., & Turner, H. (1999). Nested expressions in logic programs. Annals of Mathematics and Artificial Intelligence, 25, 369–389.
Marek, V., & Truszczynski, M. (1999). Stable models and an alternative logic programming paradigm. In The logic programming paradigm: A 25-year perspective (pp. 375–398). Springer Verlag.
Moore, R. (1984). Possible-world semantics for autoepistemic logic. In Proceedings 1984 Non-monotonic Reasoning Workshop.
Niemelä, I. (1999). Logic programs with stable model semantics as a constraint programming paradigm. Annals of Mathematics and Artificial Intelligence,25, 241–273.
Niemelä, I., & Simons, P. (1996). Efficient implementation of the well-founded and stable model semantics. In Proceedings Joint International Conference and Symposium on Logic Programming (pp. 289–303).
Nogueira, M., Balduccini, M., Gelfond, M., Watson, R., & Barry, M. (2001). An A-prolog decision support system for the space shuttle. In Proceedings of International Symposium on Practical Aspects of Declarative Languages (PADL) (pp. 169–183).
Pearce, D. (1997). A new logical characterization of stable models and answer sets. In J. Dix, L. Pereira, & T. Przymusinski (Eds.), Non-monotonic extensions of logic programming. Lecture Notes in Artificial Intelligence (Vol. 1216, pp. 57–70). Springer.
Reiter, R. (1980). A logic for default reasoning. Artificial Intelligence, 13, 81–132.
Truszczynski, M. (2012). Connecting first-order ASP and the logic FO(ID) through reducts. In E. Erdem, J. Lee, Y. Lierler, & D. Pearce (Eds.), Correct reasoning: Essays on logic-based AI in honor of Vladimir Lifschitz (pp. 543–559). Springer.
van Emden, M., & Kowalski, R. (1976). The semantics of predicate logic as a programming language. Journal of ACM, 23(4), 733–742.
Van Gelder, A. (1988). Negation as failure using tight derivations for general logic programs. In J. Minker (Ed.), Foundations of deductive databases and logic programming (pp. 149–176). Morgan Kaufmann.
Acknowledgements
The author is grateful to Federico Faroldi, Kit Fine, Michael Gelfond, Frederik Van De Putte, and the anonymous referees for their comments on drafts of this chapter.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Lifschitz, V. (2023). From Felicitous Models to Answer Set Programming. In: Faroldi, F.L.G., Van De Putte, F. (eds) Kit Fine on Truthmakers, Relevance, and Non-classical Logic. Outstanding Contributions to Logic, vol 26. Springer, Cham. https://doi.org/10.1007/978-3-031-29415-0_5
Download citation
DOI: https://doi.org/10.1007/978-3-031-29415-0_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-29414-3
Online ISBN: 978-3-031-29415-0
eBook Packages: Religion and PhilosophyPhilosophy and Religion (R0)