Learning for Dynamic subsumption

Reading time: 5 minute
...

📝 Original Info

  • Title: Learning for Dynamic subsumption
  • ArXiv ID: 0904.0029
  • Date: 2009-04-02
  • Authors: Researchers from original ArXiv paper

📝 Abstract

In this paper a new dynamic subsumption technique for Boolean CNF formulae is proposed. It exploits simple and sufficient conditions to detect during conflict analysis, clauses from the original formula that can be reduced by subsumption. During the learnt clause derivation, and at each step of the resolution process, we simply check for backward subsumption between the current resolvent and clauses from the original formula and encoded in the implication graph. Our approach give rise to a strong and dynamic simplification technique that exploits learning to eliminate literals from the original clauses. Experimental results show that the integration of our dynamic subsumption approach within the state-of-the-art SAT solvers Minisat and Rsat achieves interesting improvements particularly on crafted instances.

💡 Deep Analysis

Deep Dive into Learning for Dynamic subsumption.

In this paper a new dynamic subsumption technique for Boolean CNF formulae is proposed. It exploits simple and sufficient conditions to detect during conflict analysis, clauses from the original formula that can be reduced by subsumption. During the learnt clause derivation, and at each step of the resolution process, we simply check for backward subsumption between the current resolvent and clauses from the original formula and encoded in the implication graph. Our approach give rise to a strong and dynamic simplification technique that exploits learning to eliminate literals from the original clauses. Experimental results show that the integration of our dynamic subsumption approach within the state-of-the-art SAT solvers Minisat and Rsat achieves interesting improvements particularly on crafted instances.

📄 Full Content

The SAT problem, i.e., the problem of checking whether a set of Boolean clauses is satisfiable or not, is central to many domains in computer science and artificial intelligence including constraint satisfaction problems (CSP), planning, non-monotonic reasoning, VLSI correctness checking, etc. Today, SAT has gained a considerable audience with the advent of a new generation of SAT solvers able to solve large instances encoding real-world applications and the demonstration that these solvers represent important low-level building blocks for many important fields, e.g., SMT solving, Theorem proving, Model finding, QBF solving, etc. These solvers, called modern SAT solvers [13,9], are based on classical unit propagation [6] efficiently combined through incremental data structures with: (i) restart policies [10,11], (ii) activity-based variable selection heuristics (VSIDS-like) [13], and (iii) clause learning [1,12,13]. Modern SAT solvers can be seen as an extended version of the well known DPLL-like procedure obtained thanks to these different enhancements. It is important to note that the well known resolution rule à la Robinson still plays a strong role in the efficiency of modern SAT solvers which can be understood as a particular form of general resolution [2].

Indeed, conflict-based learning, one of the most important component of SAT solvers is based on resolution. We can also mention, that the well known and highly successful (SatElite) preprocessor is based on variable elimination through the resolution rule [15,3]. As mentioned in [15], on industrial instances, resolution leads to the generation of many tautological resolvents. This can be explained by the fact that many clauses represent Boolean functions encoded through a common set of variables. This property of the encodings might also be at the origin of many redundant or subsumed clauses at different steps of the search process.

The utility of (SatElite) on industrial problems has been proved, and therefore one can wonder if the application of the resolution rule could be performed not only as a pre-processing stage but systematically during the search process. Unfortunately, dynamically maintaining a formula closed under subsumption might be time consuming. An attempt has been made recently in this direction by L. Zhang [16]. In this work, a novel algorithm maintains a subsumption-free clause database by dynamically detecting and removing subsumed clauses as they are added. Interestingly, the author mention the following perspective of research: “How to balance the runtime cost and the quality of the result for on-the-fly CNF simplification is a very interesting problem worth much further investigation”.

In this paper, our objective is to design an effective dynamic simplification algorithm based on resolution. Our proposed approach aims at eliminating literals from the CNF formula by dynamically substituting smaller clauses. More precisely, our approach exploits the intermediate steps of classical conflict analysis to subsume the clauses of the formula which are used in the underlying resolution derivation of the asserting clause. Since original clauses or learnt clauses can be used during conflict analysis both categories can be simplified. The effectiveness of our technique lies in the efficiency of the subsumption test, which is based on a simple and sufficient condition computable in constant time. Moreover, since our technique relies on the derivation of a conflict-clause, it is guided by the conflicts, and simplifies parts of the formula identified as important by the search strategy (VSIDS guidance). This dynamic process preserves the satisfiability of the formula, and with some additional bookkeeping can preserve the equivalence of the models.

The paper is organized as follows. After some preliminary definitions and notations, classical implication graph and learning schemes are presented in section 2. Then our dynamic subsumption approach is described in section 3. Finally, before the conclusion, experimental results demonstrating the performances of our approach are presented.

A CNF formula F is a conjunction of clauses, where a clause is a disjunction of literals. A literal is a positive (x) or negated (¬x) propositional variable. The two literals x and ¬x are called complementary. We note by l the complementary literal of l. For a set of literals L, L is defined as { l | l ∈ L}. A unit clause is a clause containing only one literal (called unit literal), while a binary clause contains exactly two literals. An empty clause, noted ⊥, is interpreted as false (unsatisfiable), whereas an empty CNF formula, noted ⊤, is interpreted as true (satisfiable).

The set of variables occurring in F is noted V F . A set of literals is complete if it contains one literal for each variable in V F , and fundamental if it does not contain complementary literals. An assignment ρ of a Boolean formula F is function which associates a value ρ(x) ∈ {f

…(Full text truncated)…

📸 Image Gallery

cover.png page_2.webp page_3.webp

Reference

This content is AI-processed based on ArXiv data.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut