Abstract
Palindrome recognition is a classic problem in computer science. It is an example of a language that can not be recognized by a deterministic finite automaton and is often brought as an example of a problem whose decision by a single-tape Turing machine requires quadratic time.
In this paper we re-visit the palindrome recognition problem. We define a novel fingerprint that allows recognizing palindromes on-line in linear time with high probability. We then use group testing techniques to show that the fingerprint can be adapted to recognizing approximate palindromes on-line, i.e. it can recognize that a string is a palindrome with no more than k mismatches, where k is given.
Finally, we show that this fingerprint can be used as a tool for solving other problems on-line. In particular we consider approximate pattern matching by non-overlapping reversals. This is the problem where two strings S and T are given and the question is whether applying a sequence of non-overlapping reversals to S results in string T.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Amir, A., Aumann, Y., Benson, G., Levy, A., Lipsky, O., Porat, E., Skiena, S., Vishne, U.: Pattern matching with address errors: rearrangement distances. J. Comp. Syst. Sci. 75(6), 359–370 (2009)
Amir, A., Aumann, Y., Landau, G., Lewenstein, M., Lewenstein, N.: Pattern matching with swaps. Journal of Algorithms 37, 247–266 (2000) (Preliminary version appeared at FOCS 1997)
Amir, A., Cole, R., Hariharan, R., Lewenstein, M., Porat, E.: Overlap matching. Information and Computation 181, 57–74 (2003)
Amir, A., Landau, G.M., Lewenstein, M., Lewenstein, N.: Efficient special cases of pattern matching with swaps. Information Processing Letters 68(3), 125–132 (1998)
Amir, A., Levy, A.: String rearrangement metrics: A survey. In: Elomaa, T., Mannila, H., Orponen, P. (eds.) Ukkonen Festschrift. LNCS, vol. 6060, pp. 1–33. Springer, Heidelberg (2010)
Amir, A., Porat, B.: Pattern matching with non overlapping reversals - approximation and on-line algorithms. In: Cai, L., Cheng, S.-W., Lam, T.-W. (eds.) ISAAC 2013. LNCS, vol. 8283, pp. 55–65. Springer, Heidelberg (2013)
Bafna, V., Pevzner, P.A.: Sorting by transpositions. SIAM J. on Discrete Mathematics 11, 221–240 (1998)
Berman, P., Hannenhalli, S.: Fast sorting by reversal. In: Hirschberg, D.S., Meyers, G. (eds.) CPM 1996. LNCS, vol. 1075, pp. 168–185. Springer, Heidelberg (1996)
Berman, P., Hannenhalli, S., Karpinski, M.: 1.375-approximation algorithm for sorting by reversals. In: Möhring, R.H., Raman, R. (eds.) ESA 2002. LNCS, vol. 2461, pp. 200–210. Springer, Heidelberg (2002)
Carpara, A.: Sorting by reversals is difficult. In: Proc. 1st Annual International Conference on Research in Computational Biology (RECOMB), pp. 75–83. ACM Press (1997)
Christie, D.A.: Sorting by block-interchanges. Information Processing Letters 60, 165–169 (1996)
Christie, D.A.: A 3/2-approximation algorithm for sorting by reversals. In: Proc. 9th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 244–252 (1998)
Cole, R., Hariharan, R.: Randomized swap matching in o(m logm log|σ|) time, Tech. Report TR1999-789, New York University, Courant Institute (September 1999)
Dorfman, R.: The detection of defective members of large populations. The Annals of Mathematical Statistics 14(4), 436–440 (1943)
Du, D.-Z., Hwang, F.K.: Combinatorial group testing and its applications, 2nd edn. Series on Applied Mathematics, vol. 12. World Scientific (2000)
Galil, Z.: On converting on-line algorithms into real-time and on real-time algorithms for string matching and palindrome recognition. SIGACT News, 26–30 (1975)
Kaplan, H., Shamir, R., Tarjan, R.E.: A faster and simpler algorithm for sorting signed permutations by reversals. SIAM J. Comp. 29(3), 880–892 (1999)
Karp, R.M., Rabin, M.O.: Efficient randomized pattern-matching algorithms. IBM Journal of Res. and Dev., 249–260 (1987)
Manacher, G.: A new linear-time “on-line” algorithm for finding the smallest initial palindrome of a string. Journal of the ACM 22(3), 346–351 (1975)
Muthukrishnan, S.: New results and open problems related to non-standard stringology. In: Galil, Z., Ukkonen, E. (eds.) CPM 1995. LNCS, vol. 937, pp. 298–317. Springer, Heidelberg (1995)
Porat, B., Porat, E.: Exact and approximate pattern matching in the streaming model. In: Proc. 50th IEEE Symposium on the Foundation of Computer Science (FOCS), pp. 315–323 (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Amir, A., Porat, B. (2014). Approximate On-line Palindrome Recognition, and Applications. In: Kulikov, A.S., Kuznetsov, S.O., Pevzner, P. (eds) Combinatorial Pattern Matching. CPM 2014. Lecture Notes in Computer Science, vol 8486. Springer, Cham. https://doi.org/10.1007/978-3-319-07566-2_3
Download citation
DOI: https://doi.org/10.1007/978-3-319-07566-2_3
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-07565-5
Online ISBN: 978-3-319-07566-2
eBook Packages: Computer ScienceComputer Science (R0)