Abstract
The factor oracle is a relatively new data structure for the set of factors of a string which has been introduced by Allauzen, Crochemore, and Raffinot in 1999. It may recognize non-factors (hence the name “oracle”) but its implementational simplicity and experimental behaviour are stunning; factor oracle based string matching has been conjectured optimal on average. However, its structure is not well understood. We take important steps in clarifying its structure by explaining how it can be obtained as a quotient of the trie for the set of factors. When seen this way, all known properties of the factor oracle become simple observations. Also, we introduce a framework where various oracles can be compared. The factor oracle is better than several natural ones.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Allauzen, C., Crochemore, M., Raffinot, M.: Factor oracle: a new structure for pattern matching. In: Bartosek, M., Tel, G., Pavelka, J. (eds.) SOFSEM 1999. LNCS, vol. 1725, pp. 295–310. Springer, Heidelberg (1999)
Allauzen, C., Crochemore, M., Raffinot, M.: Efficient experimental string matching by weak factor recognition. In: Amir, A., Landau, G.M. (eds.) CPM 2001. LNCS, vol. 2089, pp. 51–72. Springer, Heidelberg (2001)
Assayag, G., Dubnov, S.: Using factor oracles for machine improvisation. Soft Comput. 8(9), 604–610 (2004)
Cleophas, L., Zwaan, G., Watson, B.: Constructing factor oracles. In: Proceedings of the Prague Stringology Conference 2003, pp. 37–50 (2003)
Cleophas, L., Zwaan, G., Watson, B.: Constructing factor oracles. J. Autom. Lang. Comb. (to appear)
Crochemore, M., Rytter, W.: Jewels of stringology. World Scientific Publishing Co., Inc., River Edge (2003)
Kato, R., Watanabe, O.: Substring search and repeat search using factor oracles. Inf. Process. Lett. 93(6), 269–274 (2005)
Lefebvre, A., Lecroq, T.: Computing repeated factors with a factor oracle. In: Proceedings of the 11th Australasian Workshop on Combinatorial Algorithms, pp. 145–158 (2000)
Lefebvre, A., Lecroq, T.: Compror: compression with a factor oracle. In: Data Compression Conference 2001, p. 502 (2001)
Lefebvre, A., Lecroq, T.: Compror: On-line lossless data compression with a factor oracle. Inf. Process. Lett. 83(1), 1–6 (2002)
Lefebvre, A., Lecroq, T.: A heuristic for computing repeats with a factor oracle: application to biological sequences. Int. J. Comput. Math. 79(12), 1303–1315 (2002)
Lefebvre, A., Lecroq, T.: Drastic improvements over repeats found with a factor oracle. In: Proceedings of the 13th Australasian Workshop on Combinatorial Algorithms, pp. 253–265 (2002)
Lefebvre, A., Lecroq, T., Alexandre, J.: An improved algorithm for finding longest repeats with a modified factor oracle. J. Autom. Lang. Comb. 8(4), 647–657 (2003)
Mancheron, A., Moan, C.: Combinatorial characterization of the language recognized by factor and suffix oracles. In: Proceedings of the Prague Stringology Conference 2004, pp. 139–154 (2004)
Mancheron, A., Moan, C.: Combinatorial characterization of the language recognized by factor and suffix oracles. Int. J. Found. Comput. Sci. 16(6), 1179–1191 (2005)
Ukkonen, E.: Constructing suffix trees on-line in linear time. In: Proc. Information Processing 1992, IFIP Transactions A-12, vol. 1, pp. 484–492. Elsevier, Amsterdam (1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Crochemore, M., Ilie, L., Seid-Hilmi, E. (2006). Factor Oracles. In: Ibarra, O.H., Yen, HC. (eds) Implementation and Application of Automata. CIAA 2006. Lecture Notes in Computer Science, vol 4094. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11812128_9
Download citation
DOI: https://doi.org/10.1007/11812128_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-37213-4
Online ISBN: 978-3-540-37214-1
eBook Packages: Computer ScienceComputer Science (R0)