Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2837614.2837658acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
research-article
Public Access

Query-guided maximum satisfiability

Published: 11 January 2016 Publication History

Abstract

We propose a new optimization problem "Q-MaxSAT", an extension of the well-known Maximum Satisfiability or MaxSAT problem. In contrast to MaxSAT, which aims to find an assignment to all variables in the formula, Q-MaxSAT computes an assignment to a desired subset of variables (or queries) in the formula. Indeed, many problems in diverse domains such as program reasoning, information retrieval, and mathematical optimization can be naturally encoded as Q-MaxSAT instances. We describe an iterative algorithm for solving Q-MaxSAT. In each iteration, the algorithm solves a subproblem that is relevant to the queries, and applies a novel technique to check whether the partial assignment found is a solution to the Q-MaxSAT problem. If the check fails, the algorithm grows the subproblem with a new set of clauses identified as relevant to the queries. Our empirical evaluation shows that our Q-MaxSAT solver Pilot achieves significant improvements in runtime and memory consumption over conventional MaxSAT solvers on several Q-MaxSAT instances generated from real-world problems in program analysis and information retrieval.

References

[1]
AI Genealogy Project. http://aigp.eecs.umich.edu.
[2]
DBLP: computer science bibliography. http://http://dblp.uni-trier.de.
[3]
Max-SAT Evaluation. http://www.maxsat.udl.cat/.
[4]
C. Ans´otegui, M. L. Bonet, and J. Levy. SAT-based MaxSAT algorithms. Artificial Intelligence, 196:77–105, 2013.
[5]
M. Aref, B. Kimelfeld, E. Pasalic, and N. Vasiloglou. Extending datalog with analytics in LogicBlox. In Proceedings of the 9th Alberto Mendelzon International Workshop on Foundations of Data Management, 2015.
[6]
T. Ball and S. Rajamani. The SLAM project: Debugging system software via static analysis. In POPL, 2002.
[7]
M. Bilenko and R. J. Mooney. Adaptive duplicate detection using learnable string similarity measures. In SIGKDD, 2003.
[8]
N. Bjorner and N. Narodytska. Maximum satisfiability using cores and correction sets. In IJCAI, 2015.
[9]
N. Bjorner and A.-D. Phan. νz: Maximal satisfaction with Z3. In Proceedings of International Symposium on Symbolic Computation in Software Science (SCSS), 2014.
[10]
S. M. Blackburn, R. Garner, C. Hoffman, A. M. Khan, K. S. McKinley, R. Bentzur, A. Diwan, D. Feinberg, D. Frampton, S. Z. Guyer, M. Hirzel, A. Hosking, M. Jump, H. Lee, J. E. B. Moss, A. Phansalkar, D. Stefanovi´c, T. VanDrunen, D. von Dincklage, and B. Wiedermann. The DaCapo benchmarks: Java benchmarking development and analysis. In OOPSLA, 2006.
[11]
A. Chaganty, A. Lal, A. Nori, and S. Rajamani. Combining relational learning with SMT solvers using CEGAR. In CAV, 2013.
[12]
E. Clarke, O. Grumberg, S. Jha, Y. Lu, and H. Veith. Counterexampleguided abstraction refinement for symbolic model checking. JACM, 50(5), 2003.
[13]
S. A. Cook. The complexity of theorem-proving procedures. In STOC, 1971.
[14]
P. Domingos, S. Kok, D. Lowd, H. Poon, M. Richardson, and P. Singla. Markov logic. In Probabilistic Inductive Logic Programming. Springer, 2008.
[15]
L. Getoor and B. Taskar. Introduction to Statistical Relational Learning (Adaptive Computation and Machine Learning). The MIT Press, 2007.
[16]
A. Gracca, I. Lynce, J. Marques-Silva, and A. L. Oliveira. Efficient and accurate haplotype inference by combining parsimony and pedigree information. In International Conference on Algebraic and Numeric Biology (ANB), 2010.
[17]
J. Gu, P. W. Purdom, J. Franco, and B. W. Wah. Algorithms for the satisfiability (SAT) problem: A survey. In DIMACS Series in Discrete Mathematics and Theoretical Computer Science, pages 19– 152. American Mathematical Society, 1996.
[18]
S. Guyer and C. Lin. Client-driven pointer analysis. In SAS, 2003.
[19]
T. Henzinger, R. Jhala, R. Majumdar, and G. Sutre. Software verification with BLAST. In SPIN Workshop on Model Checking of Software, 2003.
[20]
F. Heras, A. Morgado, and J. Marques-Silva. Core-guided binary search algorithms for maximum satisfiability. In AAAI, 2011.
[21]
S. Horwitz, T. W. Reps, and D. Binkley. Interprocedural slicing using dependence graphs. In PLDI, 1988.
[22]
A. Ignatiev, A. Morgado, V. M. Manquinho, I. Lynce, and J. Marques-Silva. Progression in maximum satisfiability. In Proceedings of the European Conference on Artificial Intelligence, 2014.
[23]
M. Janota. MiFuMax — a literate MaxSAT solver, 2013.
[24]
M. Jose and R. Majumdar. Bug-assist: Assisting fault localization in ANSI-C programs. In CAV, 2011.
[25]
M. Jose and R. Majumdar. Cause clue clauses: error localization using maximum satisfiability. In PLDI, 2011.
[26]
F. Juma, E. I. Hsu, and S. A. McIlraith. Preference-based planning via MaxSAT. In Proceedings of the Canadian Conference on Artificial Intelligence, 2012.
[27]
H. Kautz, B. Selman, and Y. Jiang. A general stochastic approach to solving problems with hard and soft constraints. In The Satisfiability Problem: Theory and Applications, 1996.
[28]
A. Kimmig, S. H. Bach, M. Broecheler, B. Huang, and L. Getoor. A short introduction to probabilistic soft logic. In NIPS Workshop on Probabilistic Programming: Foundations and Applications, 2012.
[29]
S. Kok, M. Sumner, M. Richardson, P. Singla, H. Poon, D. Lowd, and P. Domingos. The Alchemy system for statistical relational AI. Technical report, Department of Computer Science and Engineering, University of Washington, Seattle, WA, 2007. http://alchemy.cs.washington.edu.
[30]
D. Larraz, A. Oliveras, E. Rodr´ıguez-Carbonell, and A. Rubio. Proving termination of imperative programs using Max-SMT. In FMCAD, 2013.
[31]
D. Larraz, K. Nimkar, A. Oliveras, E. Rodr´ıguez-Carbonell, and A. Rubio. Proving non-termination using Max-SMT. In CAV, 2014.
[32]
O. Lhoták. Spark: A flexible points-to analysis framework for Java. Master’s thesis, McGill University, 2002.
[33]
Y. Li, A. Albarghouthi, Z. Kincaid, A. Gurfinkel, and M. Chechik. Symbolic optimization with SMT solvers. In POPL, 2014.
[34]
P. Liang and M. Naik. Scaling abstraction refinement via pruning. In PLDI, 2011.
[35]
R. Mangal, X. Zhang, A. Nori, and M. Naik. A user-guided approach to program analysis. In FSE, 2015.
[36]
R. Mangal, X. Zhang, A. Nori, and M. Naik. Volt: A lazy grounding framework for solving very large MaxSAT instances. In SAT, 2015.
[37]
J. Marques-Silva and J. Planes. Algorithms for maximum satisfiability using unsatisfiable cores. In DATE, 2008.
[38]
J. Marques-Silva, F. Heras, M. Janota, A. Previti, and A. Belov. On computing minimal correction subsets. In IJCAI, 2013.
[39]
R. Martins, S. Joshi, V. M. Manquinho, and I. Lynce. Incremental cardinality constraints for MaxSAT. In CP, 2014.
[40]
S. Miyazaki, K. Iwama, and Y. Kambayashi. Database queries as combinatorial optimization problems. In Proceedings of the International Symposium on Cooperative Database Systems for Advanced Applications (CODAS), 1996.
[41]
A. Morgado, F. Heras, M. Liffiton, J. Planes, and J. Marques-Silva. Iterative and core-guided MaxSAT solving: A survey and assessment. Constraints, 18(4), 2013.
[42]
A. Morgado, C. Dodaro, and J. Marques-Silva. Core-guided MaxSAT with soft cardinality constraints. In CP, 2014.
[43]
M. Naik, A. Aiken, and J. Whaley. Effective static race detection for Java. In PLDI, 2006.
[44]
N. Narodytska and F. Bacchus. Maximum satisfiability using coreguided MaxSAT resolution. In AAAI, 2014.
[45]
F. Niu, C. Ré, A. Doan, and J. W. Shavlik. Tuffy: Scaling up statistical inference in markov logic networks using an RDBMS. In VLDB, 2011.
[46]
J. Noessner, M. Niepert, and H. Stuckenschmidt. RockIt: Exploiting parallelism and symmetry for MAP inference in statistical relational models. In AAAI, 2013.
[47]
C. H. Papadimitriou. Computational complexity. Addison-Wesley, 1994.
[48]
M. Richardson and P. Domingos. Markov logic networks. Machine Learning, 62(1-2), 2006.
[49]
S. Riedel. Improving the accuracy and efficiency of MAP inference for Markov Logic. In UAI, 2008.
[50]
M. Sridharan and R. Bod´ık. Refinement-based context-sensitive points-to analysis for Java. In PLDI, 2006.
[51]
M. Sridharan, D. Gopan, L. Shan, and R. Bod´ık. Demand-driven points-to analysis for Java. In OOPSLA, 2005.
[52]
D. M. Strickland, E. R. Barnes, and J. S. Sokol. Optimal protein structure alignment using maximum cliques. Operations Research, 53(3):389–402, 2005.
[53]
M. Vasquez and J. Hao. A ”logic-constrained” knapsack formulation and a tabu algorithm for the daily photograph scheduling of an earth observation satellite. Comp. Opt. and Appl., 20(2):137–157, 2001.
[54]
V. V. Vazirani. Approximation algorithms. Springer Science & Business Media, 2013.
[55]
W. Y. Wang, K. Mazaitis, N. Lao, T. M. Mitchell, and W. W. Cohen. Efficient inference and learning in a large knowledge base: Reasoning with extracted information using a locally groundable first-order probabilistic logic. Machine Learning Journal, 2015.
[56]
H. Xu, R. A. Rutenbar, and K. A. Sakallah. sub-SAT: a formulation for relaxed boolean satisfiability with applications in routing. In Proceedings of the International Symposium on Physical Design (ISPD), 2002.
[57]
Q. Yang, K. Wu, and Y. Jiang. Learning action models from plan examples using weighted MAX-SAT. Artificial Intelligence, 171(2- 3):107–143, Feb. 2007.
[58]
X. Zhang, R. Mangal, R. Grigore, M. Naik, and H. Yang. On abstraction refinement for program analyses in Datalog. In PLDI, 2014.

Cited By

View all
  • (2017)Combining the logical and the probabilistic in program analysisProceedings of the 1st ACM SIGPLAN International Workshop on Machine Learning and Programming Languages10.1145/3088525.3088563(27-34)Online publication date: 18-Jun-2017
  • (2017)Maximum Satisfiability in Software Analysis: Applications and TechniquesComputer Aided Verification10.1007/978-3-319-63387-9_4(68-94)Online publication date: 13-Jul-2017
  • (2016)On Incremental Core-Guided MaxSAT SolvingPrinciples and Practice of Constraint Programming10.1007/978-3-319-44953-1_30(473-482)Online publication date: 23-Aug-2016

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
POPL '16: Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
January 2016
815 pages
ISBN:9781450335492
DOI:10.1145/2837614
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 51, Issue 1
    POPL '16
    January 2016
    815 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/2914770
    • Editor:
    • Andy Gill
    Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 11 January 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Information Retrieval
  2. Maximum Satisfiability
  3. Optimization
  4. Partial Model
  5. Program Analysis
  6. Query-Guided Approach

Qualifiers

  • Research-article

Funding Sources

Conference

POPL '16
Sponsor:

Acceptance Rates

Overall Acceptance Rate 824 of 4,130 submissions, 20%

Upcoming Conference

POPL '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)70
  • Downloads (Last 6 weeks)17
Reflects downloads up to 01 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2017)Combining the logical and the probabilistic in program analysisProceedings of the 1st ACM SIGPLAN International Workshop on Machine Learning and Programming Languages10.1145/3088525.3088563(27-34)Online publication date: 18-Jun-2017
  • (2017)Maximum Satisfiability in Software Analysis: Applications and TechniquesComputer Aided Verification10.1007/978-3-319-63387-9_4(68-94)Online publication date: 13-Jul-2017
  • (2016)On Incremental Core-Guided MaxSAT SolvingPrinciples and Practice of Constraint Programming10.1007/978-3-319-44953-1_30(473-482)Online publication date: 23-Aug-2016

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media