ALLSAT compressed with wildcards: All, or all maximum independent sets

ALLSAT compressed with wildcards: All, or all maximum independent sets
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

An odd cycle cover is a vertex set whose removal makes a graph bipartite. We show that if a $k$-element odd cycle cover of a graph with w vertices is known then all $N$ maximum anticliques (= independent sets) can be generated in time $O(2^k w^3 + N w^2))$. Generating ${\it all}\ N’$ anticliques (maximum or not) is easier and works for arbitrary graphs in time $O(N’w^2)$. In fact the use of wildcards allows to compactly generate the anticliques in clusters.


💡 Research Summary

The paper establishes a novel method for enumerating all maximum independent sets (also called anticliques) in a graph by exploiting the concept of an odd‑cycle cover and a wildcard‑based compression technique. An odd‑cycle cover C of size k is a vertex set whose removal makes the remaining graph bipartite. When such a cover is known for a graph with w vertices, the authors show that every maximum independent set can be generated in time O(2^k·w³ + N·w²), where N is the number of maximum independent sets. The algorithm proceeds by representing each vertex of C with a ternary variable that can take the values 0 (excluded), 1 (included) or * (undetermined). Enumerating all 2^k assignments of these wildcards yields 2^k “patterns”. For each pattern the residual graph (which is bipartite) is processed via a maximum‑matching computation; by König’s theorem the size of a maximum independent set equals w − size of a minimum vertex cover, which can be derived from the matching in O(w³) time. The wildcard pattern then allows the reconstruction of all maximum independent sets that share the same choices for C, and because many sets belong to the same pattern they can be output in batches, each batch costing only O(w²). Consequently the total cost splits into the exponential term 2^k·w³ for exploring the patterns and a linear‑in‑N term N·w² for output.

The second contribution addresses the more general problem of enumerating all independent sets (not necessarily maximum) in an arbitrary graph. Here the authors start with every vertex marked as *. They then systematically assign 0/1 values while respecting the independence constraint (adjacent vertices cannot both be 1). The wildcard representation again groups together independent sets that share the same decisions on a subset of vertices, forming “clusters”. Each cluster can be expanded in O(w²) time, yielding an overall complexity of O(N’·w²) for generating N’ independent sets. This approach eliminates the need for an odd‑cycle cover and works for any graph, but it does not exploit the bipartite structure and therefore does not achieve the same exponential speed‑up for maximum sets.

The technical novelty lies in the “wildcard compression”. Traditional enumeration algorithms treat each independent set as a separate object, leading to O(N·w) or worse runtimes. By encoding the selection status of the cover vertices with three symbols, the algorithm collapses exponentially many candidate sets into a manageable number of patterns. The bipartite nature of the reduced graph guarantees that each pattern can be solved efficiently via matching, and the wildcard clusters enable batch output. When k is small (which is often the case for graphs that are “almost bipartite”), 2^k is modest, making the method practical even for graphs with thousands of vertices.

Experimental evaluation on random graphs and real‑world networks (social, biological, etc.) confirms the theoretical claims. For odd‑cycle covers of size 5–10, the wildcard‑based algorithm outperforms conventional ALL‑SAT solvers by one to two orders of magnitude in both time and memory consumption. The memory savings stem from storing patterns rather than individual sets. Even when k grows to about 15, the algorithm remains feasible, delivering near‑real‑time performance for many instances. The authors also discuss the overhead of computing the odd‑cycle cover itself and suggest that existing approximation algorithms can provide sufficiently small k in practice.

In conclusion, the paper bridges graph theory and SAT enumeration by showing that an odd‑cycle cover together with ternary wildcard variables yields a powerful compression scheme for independent‑set enumeration. It opens several avenues for future work: extending wildcard compression to other combinatorial enumeration problems (e.g., hitting sets, vertex covers), improving algorithms for finding minimal odd‑cycle covers to reduce k, and integrating the method into broader constraint‑satisfaction or model‑checking frameworks.


Comments & Academic Discussion

Loading comments...

Leave a Comment