Semi-declarative Language for Combinatorial Search
Ziyi Yang, Ilya Sergey
Abstract
Combinatorial search-finding solutions that meet constraints within an exponentially large space of candidatesunderpins problems from hardware verification to scheduling and combinatorial design. The most successful approach in practice is Propositional Satisfiability (SAT) solving, but modelling a problem for a SAT solver requires manually translating high-level requirements into conjunctions of boolean clauses, a tedious step that sacrifices clarity and modularity. Answer Set Programming (ASP) offers a higher-level alternative, with a rule-based language whose variables and finite-domain reasoning yield more compact problem descriptions that can be automatically compiled into low-level solver input. Yet, ASP has its own shortcomings: its semantics, defined via a notion of stable models, is hard to build intuition for; it does not allow arbitrary first-order logic formulas as constraints; and its programs tend to be monolithic, making modular design and reuse difficult.
We propose SetLah!, a semi-declarative language for combinatorial search that addresses the shortcomings of both SAT and ASP. A SetLah! program is a sequence of stratified blocks, each containing rules that define the search space and arbitrary first-order logic constraints that prune it. This block structure enables modular problem decomposition, allowing for an intuitive semantics: candidate solutions are generated and filtered block by block. We built a compiler from SetLah! programs into ASP, allowing us to take full advantage of the existing efficient ASP solvers, while also automatically optimising the generated encodings. Our empirical evaluation demonstrates that SetLah! offers substantially more concise and intuitive specifications for common combinatorial search problems, and its compiled ASP encodings can significantly outperform SAT-based tools.
CCS Concepts: • Theory of computation → Constraint and logic programming; • Computing methodologies → Logic programming and answer set programming.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 42da7509-d8df-4ee4-b259-4793e1f9e846Builds on8
- Provenance-guided synthesis of Datalog programsMukund Raghothaman, Jonathan Mendelson, David Zhao, Mayur Naik et al.POPL 2020 · 49 citations
- Better Together: Unifying Datalog and Equality SaturationYihong Zhang, Yisu Remy Wang, Oliver Flatt, David Cao et al.PLDI 2023 · 38 citations
- Tseitin or not Tseitin? The Impact of CNF Transformations on Feature-Model AnalysesElias Kuiter, Sebastian Krieter, Chico Sundermann, Thomas Thüm et al.ASE 2022 · 24 citations
- Optimizing Recursive Queries with Progam SynthesisYisu Remy Wang, Mahmoud Abo Khamis, Hung Q. Ngo, Reinhard Pichler et al.SIGMOD 2022 · 9 citations
- From SMT to ASP: Solver-Based Approaches to Solving Datalog Synthesis-as-Rule-Selection ProblemsAaron Bembenek, Michael Greenberg, Stephen ChongPOPL 2023 · 6 citations
Related papers
- Learning to Break Symmetries for Efficient Optimization in Answer Set ProgrammingAlice Tarzariol, Martin Gebser, Konstantin Schekotihin, Mark LawAAAI 2023 · 4 citations
- Solving String Constraints Using SATKevin Lotz, Amit Goel, Bruno Dutertre, Benjamin Kiesl-Reiter et al.CAV 2023 · 11 citations
- Finite-Choice Logic ProgrammingChris Martens, Robert J. Simmons, Michael ArntzeniusPOPL 2025 · 3 citations
- ApproxASP - a Scalable Approximate Answer Set CounterMohimenul Kabir, Flavio O. Everardo, Ankit K. Shukla, Markus Hecher et al.AAAI 2022 · 21 citations
- Exact ASP Counting with Compact EncodingsMohimenul Kabir, Supratik Chakraborty, Kuldeep S. MeelAAAI 2024 · 10 citations
