Circuit Complexity of Shuffle

  • Michael Soltys
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8288)


We show that Shuffle(x,y,w), the problem of determining whether a string w can be composed from an order preserving shuffle of strings x and y, is not in AC 0, but it is in AC 1. The fact that shuffle is not in AC 0 is shown by a reduction of parity to shuffle and invoking the seminal result [FSS84, while the fact that it is in AC 1 is implicit in the results of [Man82a]. Together, the two results provide a strong complexity bound for this combinatorial problem.


String shuffle circuit complexity lower bounds 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [ABC+09]
    Allender, E., et al.: Planar and grid graph reachability problems. Theory of Computing Systems 45, 675–723 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
  2. [BS13]
    Buss, S.R., Soltys, M.: Unshuffling a square is NP-hard (submitted for publication, March 2013)Google Scholar
  3. [BTV07]
    Bourke, C., Tewari, R., Vinodchandran, N.V.: Directed planar reachability is in unambiguous log-space. In: Proceedings of IEEE Conference on Computational Complexity CCC (2007)Google Scholar
  4. [Coo85]
    Cook, S.A.: A taxonomy of problems with fast parallel algorithms. Information and Computation 64(13), 2–22 (1985)zbMATHGoogle Scholar
  5. [FSS84]
    Furst, M., Saxe, J.B., Sipser, M.: Parity, circuits, and the polynomial-time hierarchy. Math. Systems Theory 17, 13–27 (1984)MathSciNetCrossRefzbMATHGoogle Scholar
  6. [GH09]
    Gruber, H., Holzer, M.: Tight Bounds on the Descriptional Complexity of Regular Expressions. In: Diekert, V., Nowotka, D. (eds.) DLT 2009. LNCS, vol. 5583, pp. 276–287. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. [Gis81]
    Gischer, J.: Shuffle languages, petri nets, and context-sensivite grammars. Communications of the ACM 24(9), 597–605 (1981)MathSciNetCrossRefzbMATHGoogle Scholar
  8. [GS65]
    Ginsburg, S., Spanier, E.: Mappings of languages by two-tape devices. Journal of the A.C.M 12(3), 423–434 (1965)MathSciNetzbMATHGoogle Scholar
  9. [Jan81]
    Jantzen, M.: The power of synchronizing operations on strings. Theoretical Computer Science 14, 127–154 (1981)MathSciNetCrossRefzbMATHGoogle Scholar
  10. [Jan85]
    Jantzen, M.: Extending regular expressions with iterated shuffle. Theoretical Computer Science 38, 223–247 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  11. [Jed99]
    Jedrzejowicz, J.: Structural properties of shuffle automata. Grammars 2(1), 35–51 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  12. [JS01]
    Jedrzejowicz, J., Szepietowski, A.: Shuffle languages are in P. Theoretical Computer Science 250(1-2), 31–53 (2001)MathSciNetCrossRefzbMATHGoogle Scholar
  13. [JS05]
    Jedrzejowicz, J., Szepietowski, A.: On the expressive power of the shuffle operator matched with intersection by regular sets. Theoretical Informatics and Applications 35, 379–388 (2005)MathSciNetCrossRefGoogle Scholar
  14. [Man82a]
    Mansfield, A.: An algorithm for a merge recognition problem. Discrete Applied Mathematics 4(3), 193–197 (1982)MathSciNetCrossRefzbMATHGoogle Scholar
  15. [Man82b]
    Mansfield, A.: An algorithm for a merge recognition problem. Discrete Applied Mathematics 4(3), 193–197 (1982)MathSciNetCrossRefzbMATHGoogle Scholar
  16. [Man83]
    Mansfield, A.: On the computational complexity of a merge recognition problem. Discrete Applied Mathematics 1(3), 119–122 (1983)MathSciNetCrossRefGoogle Scholar
  17. [MS94]
    Mayer, A.J., Stockmeyer, L.J.: The complexity of word problems — this time with interleaving. Information and Computation 115, 293–311 (1994)MathSciNetCrossRefGoogle Scholar
  18. [ORR78]
    Ogden, W.F., Riddle, W.E., Rounds, W.C.: Complexity of expressions allowing concurrency. In: Proc. 5th ACM Symposium on Principles of Programming Languages (POPL), pp. 185–194 (1978)Google Scholar
  19. [Pap94]
    Papadimitriou, C.H.: Computational Complexity. Addison-Wesley (1994)Google Scholar
  20. [Rid73]
    Riddle, W.E.: A method for the description and analysis of complex software systems. SIGPLAN Notices 8(9), 133–136 (1973)CrossRefGoogle Scholar
  21. [Rid79]
    Riddle, W.E.: An approach to software system modelling and analysis. Computer Languages 4(1), 49–66 (1979)CrossRefzbMATHGoogle Scholar
  22. [Sha78]
    Shaw, A.C.: Software descriptions with flow expressions. IEEE Transactions on Software Engineering SE-4(3), 242–254 (1978)CrossRefGoogle Scholar
  23. [Sho02]
    Shoudai, T.: A P-complete language describable with iterated shuffle. Information Processing Letters 41(5), 233–238, 1002Google Scholar
  24. [Sip06]
    Sipser, M.: Introduction to the Theory of Computation, 2nd edn. Thompson (2006)Google Scholar
  25. [Sol09]
    Soltys, M.: An introduction to computational complexity. Jagiellonian University Press (2009)Google Scholar
  26. [SP95]
    Schöning, U., Pruim, R.: Gems of Theoretical Computer Science. Springer (1995)Google Scholar
  27. [Sud78]
    Sudborough, I.H.: On the tape complexity of deterministic context-free languages. Journal of the Association of Computing Machinery 25, 405–415 (1978)MathSciNetCrossRefzbMATHGoogle Scholar
  28. [Ven91]
    Venkateswaran, H.: Properties that characterize LOGCFL. Journal of Computer and System Science 43, 380–404 (1991)MathSciNetCrossRefzbMATHGoogle Scholar
  29. [WH84]
    Warmuth, M.K., Haussler, D.: On the complexity of iterated shuffle. Journal of Computer and System Sciences 28(3), 345–358 (1984)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Michael Soltys
    • 1
  1. 1.Dept.of Computing & SoftwareMcMaster UniversityHamiltonCanada

Personalised recommendations