Abstract
Frequently, in the SAT and CSP communities, people talk about real-world problems, without any formal or precise definition of what “real-world” means. This notion is used as opposed to randomly generated problems and theoretical combinatorial principles, like the pigeonhole. People agree that modern SAT and CSP solvers perform well in these real-world problems with a hidden structure, and more so as more intelligent are the strategies used on them.
Here we define a formal notion, called the Strahler number, that measures the degree of structure of an unsatisfiable SAT instance. We argue why this notion corresponds to the informal idea of real-world problem. If a formula has an small Strahler number, then it has a lot of structure, and it is easy to prove it, even if it has many variables. We prove that there is a SAT solver, the Beame-Pitassi algorithm [2], that works on time O(ns), being n the number of variables, and s the Strahler of the formula. We also show that Horn and 2-SAT unsatisfiable formulas, that can be solved in polynomial time, have Strahler number 1 and 2 respectively.
We compare the Strahler number with other notions defined with the same purpose like backdoors [15], and prove that the Strahler number can be arbitrarily smaller than the size of strong backdoors. We show the same relation for the size of cycle-cutsets and the treewidth in tree decompositions. Finally, we compare with the space of resolution calculus, defined for a different purpose.