229 research outputs found
Message passing for quantified Boolean formulas
We introduce two types of message passing algorithms for quantified Boolean
formulas (QBF). The first type is a message passing based heuristics that can
prove unsatisfiability of the QBF by assigning the universal variables in such
a way that the remaining formula is unsatisfiable. In the second type, we use
message passing to guide branching heuristics of a Davis-Putnam
Logemann-Loveland (DPLL) complete solver. Numerical experiments show that on
random QBFs our branching heuristics gives robust exponential efficiency gain
with respect to the state-of-art solvers. We also manage to solve some
previously unsolved benchmarks from the QBFLIB library. Apart from this our
study sheds light on using message passing in small systems and as subroutines
in complete solvers.Comment: 14 pages, 7 figure
Efficient Interpolant Generation in Satisfiability Modulo Theories
The problem of computing Craig Interpolants for propositional (SAT) formulas has recently received a lot of interest, mainly for its applications in formal verification. However, propositional logic is often not expressive enough for representing many interesting verification problems, which can be more naturally addressed in the framework of Satisfiability Modulo Theories, SMT. Although {some} works have addressed the topic of generating interpolants in SMT, the techniques and tools that are currently available have some limitations, and their performance still does not exploit the full power of current state-of-the-art SMT solvers. In this paper we try to close this gap. We present several techniques for interpolant generation in SMT which overcome the limitations of the current generators mentioned above, and which take full advantage of state-of-the-art SMT technology. These novel techniques can lead to substantial performance improvements wrt. the currently available tools. We support our claims with an extensive experimental evaluation of our implementation of the proposed techniques in the MathSAT SMT solver
Monte Carlo Forest Search: UNSAT Solver Synthesis via Reinforcement learning
We introduce Monte Carlo Forest Search (MCFS), an offline algorithm for
automatically synthesizing strong tree-search solvers for proving
\emph{unsatisfiability} on given distributions, leveraging ideas from the Monte
Carlo Tree Search (MCTS) algorithm that led to breakthroughs in AlphaGo. The
crucial difference between proving unsatisfiability and existing applications
of MCTS, is that policies produce trees rather than paths. Rather than finding
a good path (solution) within a tree, the search problem becomes searching for
a small proof tree within a forest of candidate proof trees. We introduce two
key ideas to adapt to this setting. First, we estimate tree size with paths,
via the unbiased approximation from Knuth (1975). Second, we query a strong
solver at a user-defined depth rather than learning a policy across the whole
tree, in order to focus our policy search on early decisions, which offer the
greatest potential for reducing tree size. We then present MCFS-SAT, an
implementation of MCFS for learning branching policies for solving the Boolean
satisfiability (SAT) problem that required many modifications from AlphaGo. We
matched or improved performance over a strong baseline on two well-known SAT
distributions (\texttt{sgen}, \texttt{random}). Notably, we improved running
time by 9\% on \texttt{sgen} over the \texttt{kcnfs} solver and even further
over the strongest UNSAT solver from the 2021 SAT competition
A Machine Learning Approach for Optimizing Heuristic Decision-making in OWL Reasoners
Description Logics (DLs) are formalisms for representing knowledge bases of application domains. TheWeb Ontology Language (OWL) is a syntactic variant of a very expressive description logic. OWL reasoners can infer implied information from OWL ontologies. The performance of OWL reasoners can be severely affected by situations that require decision-making over many alternatives. Such a non-deterministic behavior is often controlled by heuristics that are based on insufficient information. This thesis proposes a novel OWL reasoning approach that applies machine learning (ML) to implement pragmatic and optimal decision-making strategies in such situations.
Disjunctions occurring in ontologies are one source of non deterministic actions in reasoners. We propose two ML-based approaches to reduce the non-determinism caused by dealing with disjunctions. The first approach is restricted to propositional description logic while the second one can deal with standard description logic.
The first approach builds a logistic regression classifier that chooses a proper branching heuristic for an input ontology. Branching heuristics are first developed to help Propositional Satisfiability (SAT) based solvers with making decisions about which branch to pick in each branching level.
The second approach is the developed version of the first approach. An SVM (Support Vector Machine) classier is designed to select an appropriate expansion-ordering heuristic for an input ontology. The built-in heuristics are designed for expansion ordering of satisfiability testing in OWL reasoners.
They determine the order for branches in search trees.
Both of the above approaches speed up our ML-based reasoner by up to two orders of magnitude in comparison to the non-ML reasoner.
Another source of non-deterministic actions is the order in which tableau rules should be applied. On average, our ML-based approach that is an SVM classifier achieves a speedup of two orders of magnitude when compared to the most expensive rule ordering of the non-ML reasoner
The Language of Search
This paper is concerned with a class of algorithms that perform exhaustive
search on propositional knowledge bases. We show that each of these algorithms
defines and generates a propositional language. Specifically, we show that the
trace of a search can be interpreted as a combinational circuit, and a search
algorithm then defines a propositional language consisting of circuits that are
generated across all possible executions of the algorithm. In particular, we
show that several versions of exhaustive DPLL search correspond to such
well-known languages as FBDD, OBDD, and a precisely-defined subset of d-DNNF.
By thus mapping search algorithms to propositional languages, we provide a
uniform and practical framework in which successful search techniques can be
harnessed for compilation of knowledge into various languages of interest, and
a new methodology whereby the power and limitations of search algorithms can be
understood by looking up the tractability and succinctness of the corresponding
propositional languages
Machine Learning for SAT: Restricted Heuristics and New Graph Representations
Boolean satisfiability (SAT) is a fundamental NP-complete problem with many
applications, including automated planning and scheduling. To solve large
instances, SAT solvers have to rely on heuristics, e.g., choosing a branching
variable in DPLL and CDCL solvers. Such heuristics can be improved with machine
learning (ML) models; they can reduce the number of steps but usually hinder
the running time because useful models are relatively large and slow. We
suggest the strategy of making a few initial steps with a trained ML model and
then releasing control to classical heuristics; this simplifies cold start for
SAT solving and can decrease both the number of steps and overall runtime, but
requires a separate decision of when to release control to the solver.
Moreover, we introduce a modification of Graph-Q-SAT tailored to SAT problems
converted from other domains, e.g., open shop scheduling problems. We validate
the feasibility of our approach with random and industrial SAT problems
Generalizing Boolean Satisfiability II: Theory
This is the second of three planned papers describing ZAP, a satisfiability
engine that substantially generalizes existing tools while retaining the
performance characteristics of modern high performance solvers. The fundamental
idea underlying ZAP is that many problems passed to such engines contain rich
internal structure that is obscured by the Boolean representation used; our
goal is to define a representation in which this structure is apparent and can
easily be exploited to improve computational performance. This paper presents
the theoretical basis for the ideas underlying ZAP, arguing that existing ideas
in this area exploit a single, recurring structure in that multiple database
axioms can be obtained by operating on a single axiom using a subgroup of the
group of permutations on the literals in the problem. We argue that the group
structure precisely captures the general structure at which earlier approaches
hinted, and give numerous examples of its use. We go on to extend the
Davis-Putnam-Logemann-Loveland inference procedure to this broader setting, and
show that earlier computational improvements are either subsumed or left intact
by the new method. The third paper in this series discusses ZAPs implementation
and presents experimental performance results
- …