English

Unshuffling a Square is NP-Hard

Computational Complexity 2012-12-03 v1

Abstract

A shuffle of two strings is formed by interleaving the characters into a new string, keeping the characters of each string in order. A string is a square if it is a shuffle of two identical strings. There is a known polynomial time dynamic programming algorithm to determine if a given string z is the shuffle of two given strings x,y; however, it has been an open question whether there is a polynomial time algorithm to determine if a given string z is a square. We resolve this by proving that this problem is NP-complete via a many-one reduction from 3- Partition.

Keywords

Cite

@article{arxiv.1211.7161,
  title  = {Unshuffling a Square is NP-Hard},
  author = {Sam Buss and Michael Soltys},
  journal= {arXiv preprint arXiv:1211.7161},
  year   = {2012}
}
R2 v1 2026-06-21T22:46:37.721Z