Covering and Packing in Linear Space

  • Andreas Björklund
  • Thore Husfeldt
  • Petteri Kaski
  • Mikko Koivisto
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6198)


Given a family of subsets of an n-element universe, the k-cover problem asks whether there are k sets in the family whose union contains the universe; in the k-packing problem the sets are required to be pairwise disjoint and their union contained in the universe. When the size of the family is exponential in n, the fastest known algorithms for these problems use inclusion–exclusion and fast zeta transform, taking time and space 2 n , up to a factor polynomial in n. Can one improve these bounds to only linear in the size of the family? Here, we answer the question in the affirmative regarding the space requirement, while not increasing the time requirement. Our key contribution is a new fast zeta transform that adapts its space usage to the support of the function to be transformed. Thus, for instance, the chromatic or domatic number of an n-vertex graph can be found in time within a polynomial factor of 2 n and space proportional to the number of maximal independent sets, O(1.442 n ), or minimal dominating sets, O(1.716 n ), respectively. Moreover, by exploiting some properties of independent sets, we reduce the space requirement for computing the chromatic polynomial to O(1.292 n ). Our algorithms also parallelize efficiently.


Travel Salesman Problem Chromatic Number Space Requirement Chinese Remainder Theorem Polynomial Factor 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bellman, R.: Combinatorial Processes and Dynamic Programming. In: Bellman, R., Hall, M. (eds.) Combinatorial Analysis, Proceedings of Symposia in Applied Mathematics, vol. 10, pp. 217–249. American Mathematical Society, Providence (1960)Google Scholar
  2. 2.
    Bellman, R.: Dynamic Programming Treatment of the Travelling Salesman Problem. J. Assoc. Comput. Mach. 9, 61–63 (1962)zbMATHMathSciNetGoogle Scholar
  3. 3.
    Björklund, A., Husfeldt, T., Koivisto, M.: Set partitioning via inclusion–exclusion. SIAM J. Comput. Special Issue for FOCS 2006 39, 546–563 (2009)zbMATHGoogle Scholar
  4. 4.
    Björklund, A., Husfeldt, T., Kaski, P., Koivisto, M.: Fourier meets Möbius: fast subset convolution. In: 39th ACM Symposium on Theory of Computing (STOC 2007), pp. 67–74. ACM Press, New York (2007)Google Scholar
  5. 5.
    Björklund, A., Husfeldt, T., Kaski, P., Koivisto, M.: Computing the Tutte polynomial in vertex-exponential time. In: 49th Annual IEEE Symposium on Foundations of Computer Science (FOCS 2008), pp. 677–686. IEEE Computer Society Press, Los Alamitos (2008)CrossRefGoogle Scholar
  6. 6.
    Fomin, F.V., Grandoni, F., Pyatkin, A., Stepanov, A.: Combinatorial bounds via measure and conquer: Bounding minimal dominating sets and applications. ACM Transactions on Algorithms 5, 1–17 (2008)CrossRefMathSciNetGoogle Scholar
  7. 7.
    Held, M., Karp, R.M.: A Dynamic Programming Approach to Sequencing Problems. J. Soc. Indust. Appl. Math. 10, 196–210 (1962)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Kennes, R.: Computational aspects of the Moebius transform of a graph. IEEE Transactions on Systems, Man, and Cybernetics 22, 201–223 (1991)CrossRefMathSciNetGoogle Scholar
  9. 9.
    Koivisto, M., Parviainen, P.: A space-time tradeoff for permutation problems. In: 21st Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2010), pp. 484–492 (2010)Google Scholar
  10. 10.
    Moon, J.W., Moser, L.: On cliques in graphs. Israel Journal of Mathematics 3, 23–28 (1965)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Andreas Björklund
    • 1
  • Thore Husfeldt
    • 1
    • 2
  • Petteri Kaski
    • 3
  • Mikko Koivisto
    • 4
  1. 1.Department of Computer ScienceLund UniversityLundSweden
  2. 2.IT University of CopenhagenCopenhagen SDenmark
  3. 3.Department of Information and Computer ScienceHelsinki Institute for Information Technology HIIT, Aalto University, School of Science and TechnologyAaltoFinland
  4. 4.Helsinki Institute for Information Technology HIIT, Department of Computer ScienceUniversity of HelsinkiFinland

Personalised recommendations