Florent Capelli
CRIL, Université d’Artois
Dagstuhl Seminar 24421
October 17, 2024
Loosely based on Direct Access for Conjunctive Queries with Negation with Oliver Irwin, ICDT 24
Given CNF , return , the number of satisfying assignments.
Same story as SAT: hard problem but useful in practice.
When can we solve #SAT more efficiently than bruteforce?
Tractability of #SAT arises from restricted clauses-variables interactions.
If and :
If we can recursively decompose the formula this way, we can count efficiently.
If (primal / incidence) graph of of size has treewidth then can be computed in time . [1]
Exhaustive DPLL:
since
[1] Samer, Marko, and Stefan Szeider. “Algorithms for propositional model counting.” Journal of Discrete Algorithms 8.1 (2010): 50-64.
Generalize acyclicity to hypergraphs:
A hypergraph is -acyclic if and only if we can obtained the empty graph by iteratively removing - leaves.
We call such vertex ordering: -elimination order.
A vertex in a hypergraph is an -leave if for some edge of
Not a good variable-clause restriction for tractability:
Hard subformulas make the formula hard (this does not happen with conjunctive queries).
A hypergraph is -acyclic if and only if every is -acyclic.
How can we use it algorithmically?
A hypergraph is -acyclic if and only if there exists an order on that is an -elimination order for every .
We call such ordering a -elimination order.
Side note: this is not how -elimination order is usually defined.
SAT is easy on -acyclic instances, with a classical algorithm [2]:
Davis-Putnam resolution following a -elimination order terminates in polynomial time!
[2] Ordyniak, Sebastian, Daniël Paulusma, and Stefan Szeider. “Satisfiability of acyclic and almost acyclic CNF formulas.” Theoretical Computer Science, 2013.
#SAT is easy on -acyclic instances, with classical algorithm [3]:
Exhaustive DPLL following a reversed -elimination order terminates in polynomial time!
[3] Florent Capelli, Understanding the complexity of #SAT using knowledge compilation, LICS, 2017.
How do we measure how far we are from acyclicity?
covered by edges of
covered by edges of
covered by edges of
covered by edges of
covered by edges of
Hypertree width of : where is a tree decomposition
Hyperorder width of : where is an elimination order.
Sometimes, there is st .
Same trick as before:
How can we use it algorithmically?
We do not know…
Expanding the definition:
Problem: a different decomposition can be used for different subhypergraphs…
Swap quantifiers!
Problem: …
For -acyclic:
A hypergraph is -acyclic if and only if there exists an order on that is an -elimination order for every .
Swap quantifier in the second equality:
#SAT can be solved in time for a formula of size and .
[4] Lanzinger, M.. Tractability beyond β-acyclicity for conjunctive queries with negation and SAT. Theoretical Computer Science, 2023.
Structural complexity of #SAT:
FPT XP open #P-hard
Postdoc position open at CRIL, Lens!
[1] Samer, Marko, and Stefan Szeider. “Algorithms for propositional model counting.” Journal of Discrete Algorithms 8.1 (2010): 50-64.
[2] Ordyniak, Sebastian, Daniël Paulusma, and Stefan Szeider. “Satisfiability of acyclic and almost acyclic CNF formulas.” Theoretical Computer Science, 2013.
[3] Florent Capelli, “Understanding the complexity of #SAT using knowledge compilation”, LICS, 2017.
[4] Lanzinger Matthias. “Tractability beyond β-acyclicity for conjunctive queries with negation and SAT”. Theoretical Computer Science, 2023.