An Experimental Analysis of a Polynomial Compression for the Steiner Cycle Problem

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9125)


We implement and evaluate a polynomial compression algorithm for the Steiner Cycle problem that was recently developed by Wahlström (STACS 2013). Steiner Cycle is a generalization of Hamiltonian Cycle and asks, given a graph \(G=(V,E)\) and a set of \(k\) terminals \(T\subseteq V\), whether there is a simple cycle containing \(T\) as well as an arbitrary number of further vertices of \(G\). Wahlström’s compression algorithm takes any such instance and in polynomial time produces an equivalent instance of size polynomial in \(k\). The algorithm has several distinguishing features that make it interesting as a test subject for evaluating theoretical results on preprocessing: It uses Gaussian elimination on the Tutte matrix of (essentially) the input graph instead of explicit reduction rules. The output is an instance of an artificial matrix problem, which might not even be in NP, rather than Steiner Cycle.

We study to what extend this compression algorithm is useful for actually speeding up the computation for Steiner Cycle. At high level, we find that there is a substantial improvement of using the compression in comparison to outright running a \({\mathcal {O}}(2^k\cdot |V|^c)\) algebraic algorithm also due to Wahlström. This is despite the fact that, at face value, the creation of somewhat artificial output instances by means of nonstandard tools seems not all that practical. It does benefit, however, from being strongly tied into a careful reorganization of the algebraic algorithm.


Steiner Tree Compression Algorithm Input Graph Disjoint Path Simple Cycle 
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.
    Abu-Khzam, F.N., Collins, R.L., Fellows, M.R., Langston, M.A., Suters, W.H., Symons, C.T.: Kernelization algorithms for the vertex cover problem: theory and experiments. In: Arge, L., Italiano, G.F., Sedgewick, R. (eds.) Proceedings of the Sixth Workshop on Algorithm Engineering and Experiments and the First Workshop on Analytic Algorithmics and Combinatorics, New Orleans, LA, USA, January 10, 2004, pp. 62–69. SIAM (2004)Google Scholar
  2. 2.
    Alon, N., Yuster, R., Zwick, U.: Color-coding. J. ACM 42(4), 844–856 (1995)zbMATHMathSciNetCrossRefGoogle Scholar
  3. 3.
    Betzler, N., Bredereck, R., Niedermeier, R.: Partial kernelization for rank aggregation: theory and experiments. In: Raman, V., Saurabh, S. (eds.) IPEC 2010. LNCS, vol. 6478, pp. 26–37. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  4. 4.
    Björklund, A., Husfeldt, T., Taslaman, N.: Shortest cycle through specified elements. In: Rabani, Y. (ed.) Proceedings of the Twenty-Third Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2012, Kyoto, Japan, January 17–19, 2012, pp. 1747–1753. SIAM (2012)Google Scholar
  5. 5.
    Björklund, A., Kaski, P., Kowalik, Ł.: Fast witness extraction using a decision oracle. In: Schulz, A.S., Wagner, D. (eds.) ESA 2014. LNCS, vol. 8737, pp. 149–160. Springer, Heidelberg (2014) Google Scholar
  6. 6.
    Björklund, A., Kaski, P., Kowalik, L., Lauri, J.: Engineering motif search for large graphs. In: Brandes, U., Eppstein, D. (eds.) Proceedings of the Seventeenth Workshop on Algorithm Engineering and Experiments, ALENEX 2015, San Diego, CA, USA, January 5, 2015, pp. 104–118. SIAM (2015)Google Scholar
  7. 7.
    Bodlaender, H.L., Downey, R.G., Fellows, M.R., Hermelin, D.: On problems without polynomial kernels. J. Comput. Syst. Sci. 75(8), 423–434 (2009)zbMATHMathSciNetCrossRefGoogle Scholar
  8. 8.
    Bodlaender, H.L., Thomassé, S., Yeo, A.: Kernel bounds for disjoint cycles and disjoint paths. Theor. Comput. Sci. 412(35), 4570–4578 (2011)zbMATHCrossRefGoogle Scholar
  9. 9.
    DeMillo, R.A., Lipton, R.J.: A probabilistic remark on algebraic program testing. Inf. Process. Lett. 7(4), 193–195 (1978)zbMATHCrossRefGoogle Scholar
  10. 10.
    Diestel, R.: Graph theory (graduate texts in mathematics) (2005)Google Scholar
  11. 11.
    Dom, M., Lokshtanov, D., Saurabh, S.: Kernelization lower bounds through colors and ids. ACM Transactions on Algorithms 11(2), 13 (2014)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Gueron, S., Kounavis, M.: Efficient implementation of the galois counter mode using a carry-less multiplier and a fast reduction algorithm. Information Processing Letters 110(14), 549–553 (2010)zbMATHMathSciNetCrossRefGoogle Scholar
  13. 13.
    Hansen, T., Mullen, G.L.: Primitive polynomials over finite fields. Mathematics of Computation 59(200), 639–643 (1992)zbMATHMathSciNetCrossRefGoogle Scholar
  14. 14.
    Kawarabayashi, K.: An improved algorithm for finding cycles through elements. In: Lodi, A., Panconesi, A., Rinaldi, G. (eds.) IPCO 2008. LNCS, vol. 5035, pp. 374–384. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  15. 15.
    Kratsch, S.: Recent developments in kernelization: A survey. Bulletin of the EATCS 113 (2014)Google Scholar
  16. 16.
    Lokshtanov, D., Misra, N., Saurabh, S.: Kernelization – preprocessing with a guarantee. In: Bodlaender, H.L., Downey, R., Fomin, F.V., Marx, D. (eds.) Fellows Festschrift 2012. LNCS, vol. 7370, pp. 129–161. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  17. 17.
    Nederlof, J.: Fast polynomial-space algorithms using möbius inversion: improving on steiner tree and related problems. In: Albers, S., Marchetti-Spaccamela, A., Matias, Y., Nikoletseas, S., Thomas, W. (eds.) ICALP 2009, Part I. LNCS, vol. 5555, pp. 713–725. Springer, Heidelberg (2009) CrossRefGoogle Scholar
  18. 18.
    Plank, J.S., et al.: A tutorial on reed-solomon coding for fault-tolerance in raid-like systems. Softw., Pract. Exper. 27(9), 995–1012 (1997)CrossRefGoogle Scholar
  19. 19.
    Schwartz, J.T.: Fast probabilistic algorithms for verification of polynomial identities. Journal of the ACM (JACM) 27(4), 701–717 (1980)zbMATHCrossRefGoogle Scholar
  20. 20.
    Wahlström, M.: Abusing the Tutte Matrix: an algebraic instance compression for the K-set-cycle problem. In: 30th International Symposium on Theoretical Aspects of Computer Science (STACS 2013). Leibniz International Proceedings in Informatics (LIPIcs), vol. 20, pp. 341–352. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2013)Google Scholar
  21. 21.
    Weihe, K.: Covering trains by stations or the power of data reduction. In: Proceedings of Algorithms and Experiments (ALEX), pp. 1–8 (1998)Google Scholar
  22. 22.
    Zippel, R.: Probabilistic algorithms for sparse polynomials. In: Ng, E.W. (ed.) Symbolic and Algebraic Computation. LNCS, vol. 72, pp. 216–226. Springer, Heidelberg (1979) CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.University of BonnBonnGermany

Personalised recommendations