Finite-Choice Logic Programming
Logic programming, as exemplified by datalog, defines the meaning of a program as its unique smallest model: the deductive closure of its inference rules. However, many problems call for an enumeration of models that vary along some set of choices while maintaining structural and logical constraints...
Saved in:
Published in | Proceedings of ACM on programming languages Vol. 9; no. POPL; pp. 362 - 390 |
---|---|
Main Authors | , , |
Format | Journal Article |
Language | English |
Published |
New York, NY, USA
ACM
07.01.2025
|
Subjects | |
Online Access | Get full text |
ISSN | 2475-1421 2475-1421 |
DOI | 10.1145/3704849 |
Cover
Loading…
Abstract | Logic programming, as exemplified by datalog, defines the meaning of a program as its unique smallest model: the deductive closure of its inference rules. However, many problems call for an enumeration of models that vary along some set of choices while maintaining structural and logical constraints—there is no single canonical model. The notion of stable models for logic programs with negation has successfully captured programmer intuition about the set of valid solutions for such problems, giving rise to a family of programming languages and associated solvers known as answer set programming. Unfortunately, the definition of a stable model is frustratingly indirect, especially in the presence of rules containing free variables. We propose a new formalism, finite-choice logic programming, that uses choice, not negation, to admit multiple solutions. Finite-choice logic programming contains all the expressive power of the stable model semantics, gives meaning to a new and useful class of programs, and enjoys a least-fixed-point interpretation over a novel domain. We present an algorithm for exploring the solution space and prove it correct with respect to our semantics. Our implementation, the Dusa logic programming language, has performance that compares favorably with state-of-the-art answer set solvers and exhibits more predictable scaling with problem size. |
---|---|
AbstractList | Logic programming, as exemplified by datalog, defines the meaning of a program as its unique smallest model: the deductive closure of its inference rules. However, many problems call for an enumeration of models that vary along some set of choices while maintaining structural and logical constraints—there is no single canonical model. The notion of stable models for logic programs with negation has successfully captured programmer intuition about the set of valid solutions for such problems, giving rise to a family of programming languages and associated solvers known as answer set programming. Unfortunately, the definition of a stable model is frustratingly indirect, especially in the presence of rules containing free variables. We propose a new formalism, finite-choice logic programming, that uses choice, not negation, to admit multiple solutions. Finite-choice logic programming contains all the expressive power of the stable model semantics, gives meaning to a new and useful class of programs, and enjoys a least-fixed-point interpretation over a novel domain. We present an algorithm for exploring the solution space and prove it correct with respect to our semantics. Our implementation, the Dusa logic programming language, has performance that compares favorably with state-of-the-art answer set solvers and exhibits more predictable scaling with problem size. |
ArticleNumber | 13 |
Author | Martens, Chris Arntzenius, Michael Simmons, Robert J. |
Author_xml | – sequence: 1 givenname: Chris orcidid: 0000-0002-7026-0348 surname: Martens fullname: Martens, Chris email: c.martens@northeastern.edu organization: Northeastern University, Boston, USA – sequence: 2 givenname: Robert J. orcidid: 0000-0003-2420-3067 surname: Simmons fullname: Simmons, Robert J. email: robsimmons@gmail.com organization: Unaffiliated, Boston, USA – sequence: 3 givenname: Michael orcidid: 0009-0002-0417-5636 surname: Arntzenius fullname: Arntzenius, Michael email: daekharel@gmail.com organization: Unaffiliated, Hamilton Township, USA |
BookMark | eNpNjz1LBDEURYOs4Lou9jZuZxV9-ZyklMFVYUALrYckkzdGnIkkNv57lV3F6l64hwvnmCzmPEdCThlcMibVlWhAGmkPyJLLRlEmOVv860dkXesrADArpBF2Sc63aU4fkbYvOYW46fKYwuax5LG4aUrzeEIO0b3VuN7nijxvb57aO9o93N631x11TElLtXcRvfRBoDXorQQ3ONYEtAq599brAc3gmdQmcDDAUQvnEGDQuuFKixW52P2GkmstEfv3kiZXPnsG_Y9av1f7Js92pAvTH_Q7fgF5dkjC |
Cites_doi | 10.1007/978-3-540-70583-3_28 10.2140/pjm.1955.5.285 10.1162/tacl_a_00588 10.1007/3-540-36208-8_2 10.1017/S1471068418000054 10.1017/S1471068401001090 10.1145/2723372.2742796 10.1006/jcss.1999.1699 10.1145/3414080.3414096 10.1145/581771.581774 10.1137/0205035 10.1613/jair.1.14091 10.1145/137097.137852 10.1609/aiide.v14i1.13026 10.1007/978-1-4684-3384-5_11 10.1145/3591239 10.1145/298514.298572 10.5281/zenodo.13983457 10.1109/CEEC.2015.7332726 10.1109/TCIAIG.2011.2158545 10.1007/3-540-07854-1_226 10.1145/116825.116838 10.1145/3158133 10.1145/3607842 10.1016/S0004-3702(02)00187-X 10.1609/aiide.v16i1.7406 10.1016/0743-1066(93)90031-B 10.1007/3-540-10003-2_82 10.1006/inco.1997.2630 10.1007/978-3-662-46669-8_33 10.1007/BF03037171 10.1609/aiide.v14i1.13013 10.1109/TCIAIG.2011.2149523 10.1016/j.artint.2012.04.001 10.1145/3428193 10.1016/B978-1-4832-1313-2.50038-X 10.1109/VLHCC.2011.6070391 10.7551/mitpress 10.1609/aimag.v37i3.2672 10.1007/978-3-030-89051-3_10 10.1145/3563291 10.1145/261124.261126 10.3233/AIC-2011-0491 10.1007/978-3-540-89982-2_15 10.1145/3519939.3523707 10.1007/978-3-031-31476-6_7 10.1016/0168-0072(91)90068-W 10.1007/978-3-540-28630-1_17 10.1016/j.entcs.2008.12.071 10.1007/BFb0012801 10.1007/978-3-642-24206-9_16 10.1007/978-3-319-42716-4 10.1145/2391229.2391230 10.1016/0743-1066(92)90007-P 10.1016/0743-1066(91)90014-G 10.1145/1988042.1988046 10.1007/978-3-319-61660-5_17 |
ContentType | Journal Article |
Copyright | Owner/Author |
Copyright_xml | – notice: Owner/Author |
DBID | AAYXX CITATION |
DOI | 10.1145/3704849 |
DatabaseName | CrossRef |
DatabaseTitle | CrossRef |
DatabaseTitleList | CrossRef |
DeliveryMethod | fulltext_linktorsrc |
Discipline | Computer Science |
EISSN | 2475-1421 |
EndPage | 390 |
ExternalDocumentID | 10_1145_3704849 3704849 |
GrantInformation_xml | – fundername: National Science Foundation grantid: 1846122 funderid: https:\/\/doi.org\/10.13039\/100000001 |
GroupedDBID | AAKMM AAYFX ACM AEFXT AEJOY AIKLT AKRVB ALMA_UNASSIGNED_HOLDINGS GUFHI LHSKQ M~E OK1 ROL AAYXX CITATION |
ID | FETCH-LOGICAL-a1549-6baefb4bc3f98fb940ada17cf95f2bb9b6df8db1468c20802f63aaf00d6672563 |
ISSN | 2475-1421 |
IngestDate | Thu Jul 03 08:35:18 EDT 2025 Mon Jun 23 16:40:19 EDT 2025 |
IsDoiOpenAccess | true |
IsOpenAccess | true |
IsPeerReviewed | true |
IsScholarly | true |
Issue | POPL |
Keywords | Datalog possibility spaces answer set programming |
Language | English |
License | This work is licensed under a Creative Commons Attribution International 4.0 License. |
LinkModel | OpenURL |
MergedId | FETCHMERGED-LOGICAL-a1549-6baefb4bc3f98fb940ada17cf95f2bb9b6df8db1468c20802f63aaf00d6672563 |
ORCID | 0000-0002-7026-0348 0009-0002-0417-5636 0000-0003-2420-3067 |
OpenAccessLink | https://dl.acm.org/doi/10.1145/3704849 |
PageCount | 29 |
ParticipantIDs | crossref_primary_10_1145_3704849 acm_primary_3704849 |
PublicationCentury | 2000 |
PublicationDate | 20250107 2025-01-07 |
PublicationDateYYYYMMDD | 2025-01-07 |
PublicationDate_xml | – month: 01 year: 2025 text: 20250107 day: 07 |
PublicationDecade | 2020 |
PublicationPlace | New York, NY, USA |
PublicationPlace_xml | – name: New York, NY, USA |
PublicationTitle | Proceedings of ACM on programming languages |
PublicationTitleAbbrev | ACM PACMPL |
PublicationYear | 2025 |
Publisher | ACM |
Publisher_xml | – name: ACM |
References | Molham Aref, Balder ten Cate, Todd J. Green, Benny Kimelfeld, Dan Olteanu, Emir Pasalic, Todd L. Veldhuizen, and Geoffrey Washburn. 2015. Design and Implementation of the LogicBlox System. In Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data (SIGMOD ’15). Association for Computing Machinery, New York, NY, USA. 1371–1382. isbn:9781450327589 https://doi.org/10.1145/2723372.2742796 10.1145/2723372.2742796 Michael Gelfond and Vladimir Lifschitz. 1988. The Stable Model Semantics for Logic Programming. In Proceedings of International Logic Programming Conference and Symposium, Robert Kowalski and Kenneth A. Bowen (Eds.). MIT Press, 1070–1080. How Khang Lim, Avishkar Mahajar, Martin Strecker, and Meng Weng Wong. 2022. Automating defeasible reasoning in law with answer set programming. CEUR, 3193 (2022). Ravi Krishnamurthy and Shamim Naqvi. 1988. Non-Deterministic Choice in Datalog. In Proceedings of the Third International Conference on Data and Knowledge Bases, C. Beeri, J.W. Schmidt, and U. Dayal (Eds.). Morgan Kaufmann, 416–424. isbn:978-1-4832-1313-2 https://doi.org/10.1016/B978-1-4832-1313-2.50038-X 10.1016/B978-1-4832-1313-2.50038-X Chinmaya Dabral and Chris Martens. 2020. Generating explorable narrative spaces with answer set programming. In Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment. 16, AAAI Press, Washington, USA. 45–51. https://doi.org/10.1609/aiide.v16i1.7406 10.1609/aiide.v16i1.7406 J.R. Kennaway and C.A.R. Hoare. 1980. A theory of nondeterminism. In Automata, Languages and Programming, Jaco de Bakker and Jan van Leeuwen (Eds.). Springer, Berlin, Heidelberg. 338–350. isbn:978-3-540-39346-7 https://doi.org/10.1007/3-540-10003-2_82 10.1007/3-540-10003-2_82 Melvin Fitting. 1991. Bilattices and the semantics of logic programming. The Journal of Logic Programming, 11, 2 (1991), 91–116. issn:0743-1066 https://doi.org/10.1016/0743-1066(91)90014-G 10.1016/0743-1066(91)90014-G Peter Alvaro, William R. Marczak, Neil Conway, Joseph M. Hellerstein, David Maier, and Russell Sears. 2011. Dedalus: Datalog in time and space. In Datalog Reloaded, Oege de Moor, Georg Gottlob, Tim Furche, and Andrew Sellers (Eds.). Springer, Oxford, UK. 262–281. https://doi.org/10.1007/978-3-642-24206-9_16 10.1007/978-3-642-24206-9_16 Adam M Smith, Eric Butler, and Zoran Popovic. 2013. Quantifying over play: Constraining undesirable solutions in puzzle design. In Foundations of Digital Games. 221–228. Dana S Scott. 1982. Domains for denotational semantics. In Automata, Languages and Programming: Ninth Colloquium Aarhus, Denmark, July 12–16, 1982 9. Springer, Berlin, Heidelberg. 577–610. https://doi.org/10.1007/BFb0012801 10.1007/BFb0012801 Adam Summerville, Chris Martens, Ben Samuel, Joseph Osborn, Noah Wardrip-Fruin, and Michael Mateas. 2018. Gemini: Bidirectional generation and analysis of games via ASP. Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, 14, 1 (2018), 123–129. https://doi.org/10.1609/aiide.v14i1.13013 10.1609/aiide.v14i1.13013 Zoe Paraskevopoulou, Aaron Eline, and Leonidas Lampropoulos. 2022. Computing correctly with inductive relations. In Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation. ACM, NY, USA. 966–980. https://doi.org/10.1145/3519939.3523707 10.1145/3519939.3523707 Michael B Smyth. 1976. Powerdomains. In International Symposium on Mathematical Foundations of Computer Science. Springer, Berlin, Heidelberg. 537–543. https://doi.org/10.1007/3-540-07854-1_226 10.1007/3-540-07854-1_226 Leon S. Sterling. 1995. A Statistical Learning Method for Logic Programs with Distribution Semantics. MIT Press, 715–729. https://doi.org/10.7551/mitpress/4298.003.0069 10.7551/mitpress/4298.003.0069 Krzysztof Czarnecki, Simon Helsen, and Ulrich Eisenecker. 2004. Staged Configuration Using Feature Models. In Software Product Lines, Robert L. Nord (Ed.). Springer, Berlin, Heidelberg. 266–283. isbn:978-3-540-28630-1 https://doi.org/10.1007/978-3-540-28630-1_17 10.1007/978-3-540-28630-1_17 Teodor C Przymusinski. 1991. Stable semantics for disjunctive programs. New generation computing, 9, 3-4 (1991), 401–424. https://doi.org/10.1007/BF03037171 10.1007/BF03037171 Magnus Madsen and Ondřej Lhoták. 2020. Fixpoints for the masses: programming with first-class datalog constraints. Proceedings of the ACM on Programming Languages, 4, OOPSLA (2020), 1–28. https://doi.org/10.1145/3428193 10.1145/3428193 Tanya Short and Tarn Adams. 2017. Procedural generation in game design. CRC Press. Gordon D. Plotkin. 1976. A powerdomain construction. SIAM J. Comput., 5, 3 (1976), 452–487. https://doi.org/10.1137/0205035 10.1137/0205035 Ian Horswill. 2018. CatSAT: A Practical, Embedded, SAT Language for Runtime PCG. Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, 14, 1 (2018), Sep., 38–44. https://doi.org/10.1609/aiide.v14i1.13026 10.1609/aiide.v14i1.13026 Chinmaya Dabral, Emma Tosch, and Chris Martens. 2023. Exploring Consequences of Privacy Policies with Narrative Generation via Answer Set Programming. arxiv:2212.06719. Presented at Workshop on Programming Languages and the Law (ProLaLa@POPL) Fosca Giannotti, Dino Pedreschi, and Carlo Zaniolo. 2001. Semantics and Expressive Power of Nondeterministic Constructs in Deductive Databases. J. Comput. System Sci., 62, 1 (2001), 15–42. issn:0022-0000 https://doi.org/10.1006/jcss.1999.1699 10.1006/jcss.1999.1699 Krzysztof Czarnecki, Kasper Ø sterbye, and Markus Völter. 2002. Generative Programming. In European Conference on Object-Oriented Programming. Springer, Berlin, Heidelberg. 15–29. https://doi.org/10.1007/3-540-36208-8_2 10.1007/3-540-36208-8_2 Nicola Leone, Pasquale Rullo, and Francesco Scarcello. 1997. Disjunctive stable models: Unfounded sets, fixpoint semantics, and computation. Information and computation, 135, 2 (1997), 69–112. https://doi.org/10.1006/inco.1997.2630 10.1006/inco.1997.2630 Patrik Simons, Ilkka Niemelä, and Timo Soininen. 2002. Extending and implementing the stable model semantics. Artificial Intelligence, 138, 1 (2002), 181–234. issn:0004-3702 https://doi.org/10.1016/S0004-3702(02)00187-X Knowledge Representation and Logic Programming 10.1016/S0004-3702(02)00187-X Xiaowen Hu, Joshua Karp, David Zhao, Abdul Zreika, Xi Wu, and Bernhard Scholz. 2021. The Choice Construct in the Soufflé Language. In Programming Languages and Systems, Hakjoo Oh (Ed.). Springer International Publishing, Cham. 163–181. isbn:978-3-030-89051-3 https://doi.org/10.1007/978-3-030-89051-3_10 10.1007/978-3-030-89051-3_10 Dale Miller, Gopalan Nadathur, Frank Pfenning, and Andre Scedrov. 1991. Uniform proofs as a foundation for logic programming. Annals of Pure and Applied Logic, 51, 1 (1991), 125–157. issn:0168-0072 https://doi.org/10.1016/0168-0072(91)90068-W 10.1016/0168-0072(91)90068-W Koen Claessen and John Hughes. 2011. QuickCheck: a lightweight tool for random testing of Haskell programs. ACM SIGPLAN Notices, 46, 4 (2011), 53–64. https://doi.org/10.1145/1988042.1988046 10.1145/1988042.1988046 Alessandro Dal Palù, Agostino Dovier, Enrico Pontelli, and Gianfranco Rossi. 2009. GASP: Answer Set Programming with Lazy Grounding. Fundam. Inf., 96, 3 (2009), 297–322. issn:0169-2968 Thomas Eiter, Georg Gottlob, and Heikki Mannila. 1997. Disjunctive datalog. ACM Transactions on Database Systems (TODS), 22, 3 (1997), 364–418. https://doi.org/10.1145/261124.261126 10.1145/261124.261126 Duc Le, Eric Walkingshaw, and Martin Erwig. 2011. #ifdef confirmed harmful: Promoting understandable software variation. In 2011 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2011). IEEE Computer Society, Los Alamitos, CA, USA. 143–150. https://doi.org/10.1109/VLHCC.2011.6070391 10.1109/VLHCC.2011.6070391 Allen Van Gelder, Kenneth A. Ross, and John S. Schlipf. 1991. The Well-Founded Semantics for General Logic Programs. J. ACM, 38, 3 (1991), jul, 619–649. issn:0004-5411 https://doi.org/10.1145/116825.116838 10.1145/116825.116838 Joris Dormans and Sander Bakkes. 2011. Generating missions and spaces for adaptable play experiences. IEEE Transactions on Computational Intelligence and AI in Games, 3, 3 (2011), 216–228. https://doi.org/10.1109/TCIAIG.2011.2149523 10.1109/TCIAIG.2011.2149523 Keith L. Clark. 1978. Negation as Failure. In Logic and Data Bases, Hervé Gallaire and Jack Minker (Eds.). Springer US, Boston, MA. 293–322. isbn:978-1-4684-3384-5 https://doi.org/10.1007/978-1-4684-3384-5_11 10.1007/978-1-4684-3384-5_11 Antonius Weinzierl. 2017. Blending Lazy-Grounding and CDNL Search for Answer-Set Solving. In Logic Programming and Nonmonotonic Reasoning, Marcello Balduccini and Tomi Janhunen (Eds.). Springer International Publishing, Cham. 191–204. isbn:978-3-319-61660-5 https://doi.org/10.1007/978-3-319-61660-5_17 10.1007/978-3-319-61660-5_17 Jason Eisner, Eric Goldlust, and Noah A. Smith. 2005. Compiling Comp Ling: Weighted Dynamic Programming and the Dyna Language. In Proceedings of Human Language Technology Conference and Conference on Empirical Methods in Natural Language Processing, Raymond Mooney, Chris Brew, Lee-Feng Chien, and Katrin Kirchhoff (Eds.). Association for Computational Linguistics, Vancouver, British Columbia, Canada. 281–290. https://aclanthology.org/H05-1036 Jorge Fandinno, Seemran Mishra, Javier Romero, and Torsten Schaub. 2023. Answer Set Programming Made Easy. Springer, Cham. 133–150. isbn:978-3-031-31476-6 https://doi.org/10.1007/978-3-031-31476-6_7 10.1007/978-3-031-31476-6_7 Eric L Seidel, Niki Vazou, and Ranjit Jhala. 2015. Type targeted testing. In Programming Languages and Systems: 24th European Symposium on Programming, ESOP 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015, Proceedings 24. Springer, Berlin, Heidelberg. 812–836. https://doi.org/10.1007/978-3-662-46669-8_33 10.1007/978-3-662-46669 e_1_2_2_4_1 e_1_2_2_24_1 e_1_2_2_49_1 e_1_2_2_22_1 e_1_2_2_20_1 e_1_2_2_2_1 e_1_2_2_41_1 e_1_2_2_62_1 e_1_2_2_43_1 e_1_2_2_64_1 e_1_2_2_8_1 e_1_2_2_28_1 e_1_2_2_45_1 e_1_2_2_66_1 e_1_2_2_26_1 e_1_2_2_47_1 Compton Kate (e_1_2_2_6_1) 2015 Smith Anthony J (e_1_2_2_57_1) 2014 e_1_2_2_60_1 Eisner Jason (e_1_2_2_15_1) 2005 e_1_2_2_13_1 e_1_2_2_38_1 e_1_2_2_59_1 e_1_2_2_30_1 e_1_2_2_51_1 Palù Alessandro Dal (e_1_2_2_12_1) 2009; 96 e_1_2_2_19_1 e_1_2_2_32_1 e_1_2_2_17_1 e_1_2_2_34_1 e_1_2_2_55_1 e_1_2_2_36_1 e_1_2_2_25_1 e_1_2_2_48_1 e_1_2_2_5_1 e_1_2_2_7_1 Dabral Chinmaya (e_1_2_2_11_1) 2023 e_1_2_2_21_1 e_1_2_2_1_1 e_1_2_2_3_1 e_1_2_2_40_1 e_1_2_2_63_1 e_1_2_2_42_1 e_1_2_2_65_1 e_1_2_2_9_1 e_1_2_2_29_1 e_1_2_2_44_1 e_1_2_2_27_1 e_1_2_2_46_1 e_1_2_2_61_1 Short Tanya (e_1_2_2_53_1) e_1_2_2_14_1 e_1_2_2_37_1 e_1_2_2_10_1 e_1_2_2_52_1 Gelfond Michael (e_1_2_2_23_1) 1988 e_1_2_2_31_1 e_1_2_2_54_1 e_1_2_2_18_1 e_1_2_2_33_1 e_1_2_2_56_1 e_1_2_2_16_1 e_1_2_2_35_1 e_1_2_2_58_1 e_1_2_2_50_1 Lim How Khang (e_1_2_2_39_1) 2022 |
References_xml | – reference: Beidi Li, Jochen Teizer, and Carl Schultz. 2020. Non-monotonic Spatial Reasoning for Safety Analysis in Construction. In Proceedings of the 22nd International Symposium on Principles and Practice of Declarative Programming (PPDP ’20). Association for Computing Machinery, New York, NY, USA. Article 16, 12 pages. isbn:9781450388214 https://doi.org/10.1145/3414080.3414096 10.1145/3414080.3414096 – reference: Zoe Paraskevopoulou, Aaron Eline, and Leonidas Lampropoulos. 2022. Computing correctly with inductive relations. In Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation. ACM, NY, USA. 966–980. https://doi.org/10.1145/3519939.3523707 10.1145/3519939.3523707 – reference: Ravi Krishnamurthy and Shamim Naqvi. 1988. Non-Deterministic Choice in Datalog. In Proceedings of the Third International Conference on Data and Knowledge Bases, C. Beeri, J.W. Schmidt, and U. Dayal (Eds.). Morgan Kaufmann, 416–424. isbn:978-1-4832-1313-2 https://doi.org/10.1016/B978-1-4832-1313-2.50038-X 10.1016/B978-1-4832-1313-2.50038-X – reference: Joris Dormans and Sander Bakkes. 2011. Generating missions and spaces for adaptable play experiences. IEEE Transactions on Computational Intelligence and AI in Games, 3, 3 (2011), 216–228. https://doi.org/10.1109/TCIAIG.2011.2149523 10.1109/TCIAIG.2011.2149523 – reference: Dana S Scott. 1982. Domains for denotational semantics. In Automata, Languages and Programming: Ninth Colloquium Aarhus, Denmark, July 12–16, 1982 9. Springer, Berlin, Heidelberg. 577–610. https://doi.org/10.1007/BFb0012801 10.1007/BFb0012801 – reference: Koen Claessen and John Hughes. 2011. QuickCheck: a lightweight tool for random testing of Haskell programs. ACM SIGPLAN Notices, 46, 4 (2011), 53–64. https://doi.org/10.1145/1988042.1988046 10.1145/1988042.1988046 – reference: Eric L Seidel, Niki Vazou, and Ranjit Jhala. 2015. Type targeted testing. In Programming Languages and Systems: 24th European Symposium on Programming, ESOP 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015, Proceedings 24. Springer, Berlin, Heidelberg. 812–836. https://doi.org/10.1007/978-3-662-46669-8_33 10.1007/978-3-662-46669-8_33 – reference: Adam M Smith and Michael Mateas. 2011. Answer set programming for procedural content generation: A design space approach. IEEE Transactions on Computational Intelligence and AI in Games, 3, 3 (2011), 187–200. https://doi.org/10.1109/TCIAIG.2011.2158545 10.1109/TCIAIG.2011.2158545 – reference: Melvin Fitting. 1991. Bilattices and the semantics of logic programming. The Journal of Logic Programming, 11, 2 (1991), 91–116. issn:0743-1066 https://doi.org/10.1016/0743-1066(91)90014-G 10.1016/0743-1066(91)90014-G – reference: Ilkka Niemelä. 2008. Answer Set Programming without Unstratified Negation. In Logic Programming, Maria Garcia de la Banda and Enrico Pontelli (Eds.). Springer, Berlin, Heidelberg. 88–92. isbn:978-3-540-89982-2 https://doi.org/10.1007/978-3-540-89982-2_15 10.1007/978-3-540-89982-2_15 – reference: Yihong Zhang, Yisu Remy Wang, Oliver Flatt, David Cao, Philip Zucker, Eli Rosenthal, Zachary Tatlock, and Max Willsey. 2023. Better together: Unifying datalog and equality saturation. Proceedings of the ACM on Programming Languages, 7, PLDI (2023), 468–492. https://doi.org/10.1145/3591239 10.1145/3591239 – reference: Anthony J Smith and Joanna J Bryson. 2014. A logical approach to building dungeons: Answer set programming for hierarchical procedural content generation in roguelike games. In Proceedings of the 50th Anniversary Convention of the AISB. – reference: Sergio Greco and Carlo Zaniolo. 2001. Greedy algorithms in Datalog. Theory and Practice of Logic Programming, 1, 4 (2001), 381–407. https://doi.org/10.1017/S1471068401001090 10.1017/S1471068401001090 – reference: Peter Alvaro, William R. Marczak, Neil Conway, Joseph M. Hellerstein, David Maier, and Russell Sears. 2011. Dedalus: Datalog in time and space. In Datalog Reloaded, Oege de Moor, Georg Gottlob, Tim Furche, and Andrew Sellers (Eds.). Springer, Oxford, UK. 262–281. https://doi.org/10.1007/978-3-642-24206-9_16 10.1007/978-3-642-24206-9_16 – reference: Harrison Goldstein, Samantha Frohlich, Meng Wang, and Benjamin C Pierce. 2023. Reflecting on Random Generation. Proceedings of the ACM on Programming Languages, 7, ICFP (2023), 322–355. https://doi.org/10.1145/3607842 10.1145/3607842 – reference: Nicola Leone, Pasquale Rullo, and Francesco Scarcello. 1997. Disjunctive stable models: Unfounded sets, fixpoint semantics, and computation. Information and computation, 135, 2 (1997), 69–112. https://doi.org/10.1006/inco.1997.2630 10.1006/inco.1997.2630 – reference: Tanya Short and Tarn Adams. 2017. Procedural generation in game design. CRC Press. – reference: Adam Summerville, Chris Martens, Ben Samuel, Joseph Osborn, Noah Wardrip-Fruin, and Michael Mateas. 2018. Gemini: Bidirectional generation and analysis of games via ASP. Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, 14, 1 (2018), 123–129. https://doi.org/10.1609/aiide.v14i1.13013 10.1609/aiide.v14i1.13013 – reference: Alfred Tarski. 1955. A lattice-theoretical fixpoint theorem and its applications. Pacific J. Math, 5, 2 (1955), 285–309. – reference: Adam M Smith, Eric Butler, and Zoran Popovic. 2013. Quantifying over play: Constraining undesirable solutions in puzzle design. In Foundations of Digital Games. 221–228. – reference: Teodor C Przymusinski. 1991. Stable semantics for disjunctive programs. New generation computing, 9, 3-4 (1991), 401–424. https://doi.org/10.1007/BF03037171 10.1007/BF03037171 – reference: Neil Conway, William R. Marczak, Peter Alvaro, Joseph M. Hellerstein, and David Maier. 2012. Logic and lattices for distributed programming. In Proceedings of the Third ACM Symposium on Cloud Computing (SoCC ’12). Association for Computing Machinery, New York, NY, USA. Article 1, 14 pages. isbn:9781450317610 https://doi.org/10.1145/2391229.2391230 10.1145/2391229.2391230 – reference: Michael B Smyth. 1976. Powerdomains. In International Symposium on Mathematical Foundations of Computer Science. Springer, Berlin, Heidelberg. 537–543. https://doi.org/10.1007/3-540-07854-1_226 10.1007/3-540-07854-1_226 – reference: David McAllester. 2002. On the complexity analysis of static analyses. J. ACM, 49, 4 (2002), July, 512–537. issn:0004-5411 https://doi.org/10.1145/581771.581774 10.1145/581771.581774 – reference: Richard Comploi-Taupe, Gerhard Friedrich, Konstantin Schekotihin, and Antonius Weinzierl. 2023. Domain-Specific Heuristics in Answer Set Programming: A Declarative Non-Monotonic Approach. J. Artif. Int. Res., 76 (2023), may, 56 pages. issn:1076-9757 https://doi.org/10.1613/jair.1.14091 10.1613/jair.1.14091 – reference: Alessandro Dal Palù, Agostino Dovier, Enrico Pontelli, and Gianfranco Rossi. 2009. GASP: Answer Set Programming with Lazy Grounding. Fundam. Inf., 96, 3 (2009), 297–322. issn:0169-2968 – reference: Keith L. Clark. 1978. Negation as Failure. In Logic and Data Bases, Hervé Gallaire and Jack Minker (Eds.). Springer US, Boston, MA. 293–322. isbn:978-1-4684-3384-5 https://doi.org/10.1007/978-1-4684-3384-5_11 10.1007/978-1-4684-3384-5_11 – reference: Xenija Neufeld, Sanaz Mostaghim, and Diego Perez-Liebana. 2015. Procedural level generation with answer set programming for general video game playing. In 2015 7th Computer Science and Electronic Engineering Conference (CEEC). IEEE, 207–212. https://doi.org/10.1109/CEEC.2015.7332726 10.1109/CEEC.2015.7332726 – reference: Domenico Sacca and Carlo Zaniolo. 1990. Stable models and non-determinism in logic programs with negation. In Proceedings of the Ninth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems (PODS ’90). Association for Computing Machinery, New York, NY, USA. 205–217. isbn:0897913523 https://doi.org/10.1145/298514.298572 10.1145/298514.298572 – reference: Xiaowen Hu, Joshua Karp, David Zhao, Abdul Zreika, Xi Wu, and Bernhard Scholz. 2021. The Choice Construct in the Soufflé Language. In Programming Languages and Systems, Hakjoo Oh (Ed.). Springer International Publishing, Cham. 163–181. isbn:978-3-030-89051-3 https://doi.org/10.1007/978-3-030-89051-3_10 10.1007/978-3-030-89051-3_10 – reference: Robert Simmons. 2024. Dusa implementation, examples, and benchmarking. https://doi.org/10.5281/zenodo.13983457 10.5281/zenodo.13983457 – reference: Molham Aref, Balder ten Cate, Todd J. Green, Benny Kimelfeld, Dan Olteanu, Emir Pasalic, Todd L. Veldhuizen, and Geoffrey Washburn. 2015. Design and Implementation of the LogicBlox System. In Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data (SIGMOD ’15). Association for Computing Machinery, New York, NY, USA. 1371–1382. isbn:9781450327589 https://doi.org/10.1145/2723372.2742796 10.1145/2723372.2742796 – reference: Benjamin Kaufmann, Nicola Leone, Simona Perri, and Torsten Schaub. 2016. Grounding and Solving in Answer Set Programming. AI Magazine, 37, 3 (2016), Oct., 25–32. https://doi.org/10.1609/aimag.v37i3.2672 10.1609/aimag.v37i3.2672 – reference: Leonidas Lampropoulos, Zoe Paraskevopoulou, and Benjamin C Pierce. 2017. Generating good generators for inductive relations. Proceedings of the ACM on Programming Languages, 2, POPL (2017), 1–30. https://doi.org/10.1145/3158133 10.1145/3158133 – reference: Martin Gebser, Benjamin Kaufmann, and Torsten Schaub. 2012. Conflict-driven answer set solving: From theory to practice. Artificial Intelligence, 187-188 (2012), 52–89. issn:0004-3702 https://doi.org/10.1016/j.artint.2012.04.001 10.1016/j.artint.2012.04.001 – reference: Thomas Eiter, Georg Gottlob, and Heikki Mannila. 1997. Disjunctive datalog. ACM Transactions on Database Systems (TODS), 22, 3 (1997), 364–418. https://doi.org/10.1145/261124.261126 10.1145/261124.261126 – reference: Gordon D. Plotkin. 1976. A powerdomain construction. SIAM J. Comput., 5, 3 (1976), 452–487. https://doi.org/10.1137/0205035 10.1137/0205035 – reference: Harrison Goldstein and Benjamin C Pierce. 2022. Parsing randomness. Proceedings of the ACM on Programming Languages, 6, OOPSLA2 (2022), 89–113. https://doi.org/10.1145/3563291 10.1145/3563291 – reference: Martin Gebser, Benjamin Kaufmann, Roland Kaminski, Max Ostrowski, Torsten Schaub, and Marius Schneider. 2011. Potassco: The Potsdam answer set solving collection. AI Communications, 24, 2 (2011), 107–124. https://doi.org/10.3233/AIC-2011-0491 10.3233/AIC-2011-0491 – reference: Ekaterina Komendantskaya and Anthony Karel Seda. 2009. Sound and Complete SLD-Resolution for Bilattice-Based Annotated Logic Programs. Electronic Notes in Theoretical Computer Science, 225 (2009), 141–159. issn:1571-0661 https://doi.org/10.1016/j.entcs.2008.12.071 10.1016/j.entcs.2008.12.071 – reference: Chinmaya Dabral, Emma Tosch, and Chris Martens. 2023. Exploring Consequences of Privacy Policies with Narrative Generation via Answer Set Programming. arxiv:2212.06719. Presented at Workshop on Programming Languages and the Law (ProLaLa@POPL) – reference: Patrik Simons, Ilkka Niemelä, and Timo Soininen. 2002. Extending and implementing the stable model semantics. Artificial Intelligence, 138, 1 (2002), 181–234. issn:0004-3702 https://doi.org/10.1016/S0004-3702(02)00187-X Knowledge Representation and Logic Programming 10.1016/S0004-3702(02)00187-X – reference: Magnus Madsen and Ondřej Lhoták. 2020. Fixpoints for the masses: programming with first-class datalog constraints. Proceedings of the ACM on Programming Languages, 4, OOPSLA (2020), 1–28. https://doi.org/10.1145/3428193 10.1145/3428193 – reference: Fosca Giannotti, Dino Pedreschi, and Carlo Zaniolo. 2001. Semantics and Expressive Power of Nondeterministic Constructs in Deductive Databases. J. Comput. System Sci., 62, 1 (2001), 15–42. issn:0022-0000 https://doi.org/10.1006/jcss.1999.1699 10.1006/jcss.1999.1699 – reference: How Khang Lim, Avishkar Mahajar, Martin Strecker, and Meng Weng Wong. 2022. Automating defeasible reasoning in law with answer set programming. CEUR, 3193 (2022). – reference: Jorge Fandinno, Seemran Mishra, Javier Romero, and Torsten Schaub. 2023. Answer Set Programming Made Easy. Springer, Cham. 133–150. isbn:978-3-031-31476-6 https://doi.org/10.1007/978-3-031-31476-6_7 10.1007/978-3-031-31476-6_7 – reference: Kate Compton and Michael Mateas. 2015. Casual Creators. In Proceedings of the Sixth International Conference on Computational Creativity (ICCC 2015), Hannu Toivonen, Simon Colton, Michael Cook, and Dan Ventura (Eds.). Brigham Young University, Park City, Utah. 228–235. http://computationalcreativity.net/iccc2015/proceedings/10_2Compton.pdf – reference: Allen Van Gelder, Kenneth A. Ross, and John S. Schlipf. 1991. The Well-Founded Semantics for General Logic Programs. J. ACM, 38, 3 (1991), jul, 619–649. issn:0004-5411 https://doi.org/10.1145/116825.116838 10.1145/116825.116838 – reference: Jason Eisner. 2023. Time-and-Space-Efficient Weighted Deduction. Transactions of the Association for Computational Linguistics, 11 (2023), 08, 960–973. issn:2307-387X https://doi.org/10.1162/tacl_a_00588 10.1162/tacl_a_00588 – reference: Melvin Fitting. 1993. The family of stable models. The Journal of Logic Programming, 17, 2 (1993), 197–225. issn:0743-1066 https://doi.org/10.1016/0743-1066(93)90031-B 10.1016/0743-1066(93)90031-B – reference: Kenneth A. Ross and Yehoshua Sagiv. 1992. Monotonic aggregation in deductive databases. In Proceedings of the Eleventh ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems (PODS ’92). Association for Computing Machinery, New York, NY, USA. 114–126. isbn:0897915194 https://doi.org/10.1145/137097.137852 10.1145/137097.137852 – reference: Martin Gebser, Roland Kaminski, Benjamin Kaufmann, and Torsten Schaub. 2019. Multi-shot ASP solving with clingo. Theory and Practice of Logic Programming, 19, 1 (2019), 27–82. https://doi.org/10.1017/S1471068418000054 10.1017/S1471068418000054 – reference: Robert J. Simmons and Frank Pfenning. 2008. Linear Logical Algorithms. In Automata, Languages and Programming, Luca Aceto, Ivan Damgård, Leslie Ann Goldberg, Magnús M. Halldórsson, Anna Ingólfsdóttir, and Igor Walukiewicz (Eds.). Springer, Berlin, Heidelberg. 336–347. isbn:978-3-540-70583-3 https://doi.org/10.1007/978-3-540-70583-3_28 10.1007/978-3-540-70583-3_28 – reference: Michael Kifer and V.S. Subrahmanian. 1992. Theory of generalized annotated logic programming and its applications. The Journal of Logic Programming, 12, 4 (1992), 335–367. issn:0743-1066 https://doi.org/10.1016/0743-1066(92)90007-P 10.1016/0743-1066(92)90007-P – reference: Krzysztof Czarnecki, Simon Helsen, and Ulrich Eisenecker. 2004. Staged Configuration Using Feature Models. In Software Product Lines, Robert L. Nord (Ed.). Springer, Berlin, Heidelberg. 266–283. isbn:978-3-540-28630-1 https://doi.org/10.1007/978-3-540-28630-1_17 10.1007/978-3-540-28630-1_17 – reference: Antonius Weinzierl. 2017. Blending Lazy-Grounding and CDNL Search for Answer-Set Solving. In Logic Programming and Nonmonotonic Reasoning, Marcello Balduccini and Tomi Janhunen (Eds.). Springer International Publishing, Cham. 191–204. isbn:978-3-319-61660-5 https://doi.org/10.1007/978-3-319-61660-5_17 10.1007/978-3-319-61660-5_17 – reference: Dale Miller, Gopalan Nadathur, Frank Pfenning, and Andre Scedrov. 1991. Uniform proofs as a foundation for logic programming. Annals of Pure and Applied Logic, 51, 1 (1991), 125–157. issn:0168-0072 https://doi.org/10.1016/0168-0072(91)90068-W 10.1016/0168-0072(91)90068-W – reference: Noor Shaker, Julian Togelius, and Mark J Nelson. 2016. Procedural content generation in games. Springer International Publishing, Cham. https://doi.org/10.1007/978-3-319-42716-4 10.1007/978-3-319-42716-4 – reference: Chinmaya Dabral and Chris Martens. 2020. Generating explorable narrative spaces with answer set programming. In Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment. 16, AAAI Press, Washington, USA. 45–51. https://doi.org/10.1609/aiide.v16i1.7406 10.1609/aiide.v16i1.7406 – reference: Krzysztof Czarnecki, Kasper Ø sterbye, and Markus Völter. 2002. Generative Programming. In European Conference on Object-Oriented Programming. Springer, Berlin, Heidelberg. 15–29. https://doi.org/10.1007/3-540-36208-8_2 10.1007/3-540-36208-8_2 – reference: Ian Horswill. 2018. CatSAT: A Practical, Embedded, SAT Language for Runtime PCG. Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, 14, 1 (2018), Sep., 38–44. https://doi.org/10.1609/aiide.v14i1.13026 10.1609/aiide.v14i1.13026 – reference: Michael Gelfond and Vladimir Lifschitz. 1988. The Stable Model Semantics for Logic Programming. In Proceedings of International Logic Programming Conference and Symposium, Robert Kowalski and Kenneth A. Bowen (Eds.). MIT Press, 1070–1080. – reference: Duc Le, Eric Walkingshaw, and Martin Erwig. 2011. #ifdef confirmed harmful: Promoting understandable software variation. In 2011 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2011). IEEE Computer Society, Los Alamitos, CA, USA. 143–150. https://doi.org/10.1109/VLHCC.2011.6070391 10.1109/VLHCC.2011.6070391 – reference: Leon S. Sterling. 1995. A Statistical Learning Method for Logic Programs with Distribution Semantics. MIT Press, 715–729. https://doi.org/10.7551/mitpress/4298.003.0069 10.7551/mitpress/4298.003.0069 – reference: Jason Eisner, Eric Goldlust, and Noah A. Smith. 2005. Compiling Comp Ling: Weighted Dynamic Programming and the Dyna Language. In Proceedings of Human Language Technology Conference and Conference on Empirical Methods in Natural Language Processing, Raymond Mooney, Chris Brew, Lee-Feng Chien, and Katrin Kirchhoff (Eds.). Association for Computational Linguistics, Vancouver, British Columbia, Canada. 281–290. https://aclanthology.org/H05-1036 – reference: J.R. Kennaway and C.A.R. Hoare. 1980. A theory of nondeterminism. In Automata, Languages and Programming, Jaco de Bakker and Jan van Leeuwen (Eds.). Springer, Berlin, Heidelberg. 338–350. isbn:978-3-540-39346-7 https://doi.org/10.1007/3-540-10003-2_82 10.1007/3-540-10003-2_82 – ident: e_1_2_2_55_1 doi: 10.1007/978-3-540-70583-3_28 – ident: e_1_2_2_63_1 doi: 10.2140/pjm.1955.5.285 – ident: e_1_2_2_14_1 doi: 10.1162/tacl_a_00588 – ident: e_1_2_2_9_1 doi: 10.1007/3-540-36208-8_2 – ident: e_1_2_2_20_1 doi: 10.1017/S1471068418000054 – ident: e_1_2_2_27_1 doi: 10.1017/S1471068401001090 – ident: e_1_2_2_2_1 doi: 10.1145/2723372.2742796 – volume-title: Casual Creators. In Proceedings of the Sixth International Conference on Computational Creativity (ICCC 2015 year: 2015 ident: e_1_2_2_6_1 – ident: e_1_2_2_24_1 doi: 10.1006/jcss.1999.1699 – ident: e_1_2_2_38_1 doi: 10.1145/3414080.3414096 – ident: e_1_2_2_41_1 doi: 10.1145/581771.581774 – ident: e_1_2_2_46_1 doi: 10.1137/0205035 – ident: e_1_2_2_5_1 doi: 10.1613/jair.1.14091 – ident: e_1_2_2_48_1 doi: 10.1145/137097.137852 – volume-title: Proceedings of the 50th Anniversary Convention of the AISB. year: 2014 ident: e_1_2_2_57_1 – ident: e_1_2_2_28_1 doi: 10.1609/aiide.v14i1.13026 – ident: e_1_2_2_4_1 doi: 10.1007/978-1-4684-3384-5_11 – volume-title: Automating defeasible reasoning in law with answer set programming. CEUR, 3193 year: 2022 ident: e_1_2_2_39_1 – ident: e_1_2_2_66_1 doi: 10.1145/3591239 – ident: e_1_2_2_49_1 doi: 10.1145/298514.298572 – ident: e_1_2_2_54_1 doi: 10.5281/zenodo.13983457 – volume-title: Smith year: 2005 ident: e_1_2_2_15_1 – volume-title: Procedural generation in game design ident: e_1_2_2_53_1 – ident: e_1_2_2_43_1 doi: 10.1109/CEEC.2015.7332726 – ident: e_1_2_2_59_1 doi: 10.1109/TCIAIG.2011.2158545 – ident: e_1_2_2_60_1 doi: 10.1007/3-540-07854-1_226 – ident: e_1_2_2_64_1 doi: 10.1145/116825.116838 – volume-title: Proceedings of International Logic Programming Conference and Symposium, Robert Kowalski and Kenneth A. Bowen (Eds.). MIT Press, 1070–1080 year: 1988 ident: e_1_2_2_23_1 – ident: e_1_2_2_35_1 doi: 10.1145/3158133 – ident: e_1_2_2_25_1 doi: 10.1145/3607842 – ident: e_1_2_2_58_1 – volume: 96 start-page: 297 year: 2009 ident: e_1_2_2_12_1 article-title: GASP publication-title: Answer Set Programming with Lazy Grounding. Fundam. Inf. – ident: e_1_2_2_56_1 doi: 10.1016/S0004-3702(02)00187-X – ident: e_1_2_2_10_1 doi: 10.1609/aiide.v16i1.7406 – ident: e_1_2_2_19_1 doi: 10.1016/0743-1066(93)90031-B – ident: e_1_2_2_31_1 doi: 10.1007/3-540-10003-2_82 – ident: e_1_2_2_37_1 doi: 10.1006/inco.1997.2630 – ident: e_1_2_2_51_1 doi: 10.1007/978-3-662-46669-8_33 – ident: e_1_2_2_47_1 doi: 10.1007/BF03037171 – ident: e_1_2_2_62_1 doi: 10.1609/aiide.v14i1.13013 – ident: e_1_2_2_13_1 doi: 10.1109/TCIAIG.2011.2149523 – ident: e_1_2_2_22_1 doi: 10.1016/j.artint.2012.04.001 – ident: e_1_2_2_40_1 doi: 10.1145/3428193 – ident: e_1_2_2_34_1 doi: 10.1016/B978-1-4832-1313-2.50038-X – ident: e_1_2_2_36_1 doi: 10.1109/VLHCC.2011.6070391 – ident: e_1_2_2_61_1 doi: 10.7551/mitpress – ident: e_1_2_2_30_1 doi: 10.1609/aimag.v37i3.2672 – ident: e_1_2_2_29_1 doi: 10.1007/978-3-030-89051-3_10 – ident: e_1_2_2_26_1 doi: 10.1145/3563291 – ident: e_1_2_2_16_1 doi: 10.1145/261124.261126 – ident: e_1_2_2_21_1 doi: 10.3233/AIC-2011-0491 – ident: e_1_2_2_44_1 doi: 10.1007/978-3-540-89982-2_15 – ident: e_1_2_2_45_1 doi: 10.1145/3519939.3523707 – ident: e_1_2_2_17_1 doi: 10.1007/978-3-031-31476-6_7 – volume-title: Workshop on Programming Languages and the Law (ProLaLa@POPL) year: 2023 ident: e_1_2_2_11_1 – ident: e_1_2_2_42_1 doi: 10.1016/0168-0072(91)90068-W – ident: e_1_2_2_8_1 doi: 10.1007/978-3-540-28630-1_17 – ident: e_1_2_2_33_1 doi: 10.1016/j.entcs.2008.12.071 – ident: e_1_2_2_50_1 doi: 10.1007/BFb0012801 – ident: e_1_2_2_1_1 doi: 10.1007/978-3-642-24206-9_16 – ident: e_1_2_2_52_1 doi: 10.1007/978-3-319-42716-4 – ident: e_1_2_2_7_1 doi: 10.1145/2391229.2391230 – ident: e_1_2_2_32_1 doi: 10.1016/0743-1066(92)90007-P – ident: e_1_2_2_18_1 doi: 10.1016/0743-1066(91)90014-G – ident: e_1_2_2_3_1 doi: 10.1145/1988042.1988046 – ident: e_1_2_2_65_1 doi: 10.1007/978-3-319-61660-5_17 |
SSID | ssj0001934839 |
Score | 2.279553 |
Snippet | Logic programming, as exemplified by datalog, defines the meaning of a program as its unique smallest model: the deductive closure of its inference rules.... |
SourceID | crossref acm |
SourceType | Index Database Publisher |
StartPage | 362 |
SubjectTerms | Computing methodologies Constraint and logic languages Constraint and logic programming Control structures Database query languages (principles) Denotational semantics Logic and databases Logic programming and answer set programming Nonmonotonic, default reasoning and belief revision Software and its engineering Theory of computation |
SubjectTermsDisplay | Computing methodologies -- Logic programming and answer set programming Computing methodologies -- Nonmonotonic, default reasoning and belief revision Software and its engineering -- Constraint and logic languages Software and its engineering -- Control structures Theory of computation -- Constraint and logic programming Theory of computation -- Database query languages (principles) Theory of computation -- Denotational semantics Theory of computation -- Logic and databases |
Title | Finite-Choice Logic Programming |
URI | https://dl.acm.org/doi/10.1145/3704849 |
Volume | 9 |
hasFullText | 1 |
inHoldings | 1 |
isFullTextHit | |
isPrint | |
link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV07T8MwELagLCw8CojyzMCGXNr4FY9VBUKIQgeQ2Co7sUWHBkTbpQO_HV_iJmmpxGOxIseOYn_W-Xy-7w6hC0MoUzRsY6FChSkzGitGLWbGHcYiEcMqAW-LB377TO9e2EuZbTNjl0x0M56t5JX8B1VX53AFluwfkC0-6ircs8PXlQ5hV_4K45shaIy4-_o2BGYOSDHw_AeHq9F8S_KKZ7_YqDLfjU63B9cE72XjwnJZKNkQYcCkZQiCwhgzhBGOS7_sy7tmuW7Sycykw-l42SffWxZCllkWRCmAQioYbtOcwdw0K-q8BJWVhdJ_7N9XBCLxsjbfW0meGvS72KYQ4YIIJ07yAKaLgbGXNqzCjTAnVbOB77iONkIhssv63mfF0iYJjbKUcsXP5-xp6Hvl-4JyEo8qyklFy3jaQVv-eBB0cqx30ZpJ62h7nnoj8JJ4D50vQB9k0AcV6PfR8831U_cW-1wXWEGQPMy1MlZTHRMrI6slbalEtUVsJbOh1lLzxEaJBqJcHAI_2nKilG21Es6FU1vJAaqlb6k5RIHkTMQRM1IaS0PhztQJ4UrEXDErhNYNVHdDHbzn0Uzmk9dAwXzoxaul-T36uckx2ixX0gmqTT6m5tRpbRN9loHyBXB9PqY |
linkProvider | ISSN International Centre |
openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Finite-Choice+Logic+Programming&rft.jtitle=Proceedings+of+ACM+on+programming+languages&rft.au=Martens%2C+Chris&rft.au=Simmons%2C+Robert+J.&rft.au=Arntzenius%2C+Michael&rft.date=2025-01-07&rft.issn=2475-1421&rft.eissn=2475-1421&rft.volume=9&rft.issue=POPL&rft.spage=362&rft.epage=390&rft_id=info:doi/10.1145%2F3704849&rft.externalDBID=n%2Fa&rft.externalDocID=10_1145_3704849 |
thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2475-1421&client=summon |
thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2475-1421&client=summon |
thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2475-1421&client=summon |