Set Partitioning via Inclusion-Exclusion

  • Authors:
  • Andreas Björklund;Thore Husfeldt;Mikko Koivisto

  • Affiliations:
  • Andreas.Bjorklund@logipard.com and thore.husfeldt@cs.lu.se;-;mikko.koivisto@cs.helsinki.fi

  • Venue:
  • SIAM Journal on Computing
  • Year:
  • 2009

Quantified Score

Hi-index 0.03

Visualization

Abstract

Given a set $N$ with $n$ elements and a family $\mathcal{F}$ of subsets, we show how to partition $N$ into $k$ such subsets in $2^n n^{O(1)}$ time. We also consider variations of this problem where the subsets may overlap or are weighted, and we solve the decision, counting, summation, and optimization versions of these problems. Our algorithms are based on the principle of inclusion-exclusion and the zeta transform. In effect we get exact algorithms in $2^n n^{O(1)}$ time for several well-studied partition problems including domatic number, chromatic number, maximum $k$-cut, bin packing, list coloring, and the chromatic polynomial. We also have applications to Bayesian learning with decision graphs and to model-based data clustering. If only polynomial space is available, our algorithms run in time $3^n n^{O(1)}$ if membership in $\mathcal{F}$ can be decided in polynomial time. We solve chromatic number in $O(2.2461^n)$ time and domatic number in $O(2.8718^n)$ time. Finally, we present a family of polynomial space approximation algorithms that find a number between $\chi(G)$ and $\lceil(1+\epsilon)\chi(G)\rceil$ in time $O(1.2209^n+2.2461^{e^{-\epsilon}n})$.