Skip to main content
Log in

Light-based string matching

  • Published:
Natural Computing Aims and scope Submit manuscript

Abstract

String matching is a very important problem in computer science. The problem consists in finding all the occurrences of a pattern P of length m in a text T of length n. We describe a special device which can do string matching by performing nm + 1 text-to-pattern comparisons. The proposed device uses light and optical filters for performing computations. Two physical implementations are proposed. One of them uses colored glass and the other one uses polarizing filters. The strengths and the weaknesses of each method are deeply discussed.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

References

  • Apostolico A, Giancarlo R (1986) The Boyer–Moore–Galil string searching strategies revisited. SIAM J Comput 15:98–105

    Article  MATH  MathSciNet  Google Scholar 

  • Born M, Wolf E (1999) Principles of optics, 7th edn. Cambridge University Press, Cambridge

    Google Scholar 

  • Boyer R, Moore S (1977) A fast string matching algorithm. Comm Assoc Comput Mach 20:762–772

    Google Scholar 

  • Cole R, Hariharan R, Paterson M, Zwick U (1995) Tighter lower bounds on the exact complexity of string matching. SIAM J Comput 24(1):30–45

    Article  MATH  MathSciNet  Google Scholar 

  • Colussi L (1991) Correctness and efficiency of pattern matching algorithms. Inform Comput 5:225–251

    Article  MathSciNet  Google Scholar 

  • Cormen TH, Leiserson CE, Rivest RR (1990) Introduction to algorithms. MIT Press, Cambridge, MA

    Google Scholar 

  • Crochemore M, Czumaj A, Gasiniec L, Jarominek S, Lecroq T, Plandowski W, Rytter W (1994) Speeding up two string-matching algorithms. Algorithmica 5:247–267

    Article  Google Scholar 

  • Damask JN (2004) Polarization optics in telecommunications. Springer Verlag, New York

    Google Scholar 

  • Faist J (2005) Optoelectronics: silicon shines on. Nature 433:691–692

    Article  Google Scholar 

  • Feitelson DG (1988) Optical computing: a survey for computer scientists. MIT Press, Cambridge, MA

    Google Scholar 

  • Galil Z, Giancarlo R (1991) On the exact complexity of string matching: lower bounds. SIAM J Comput 6:1008–1020

    Article  MathSciNet  Google Scholar 

  • Galil Z, Giancarlo R (1993) On the exact complexity of string matching: upper bounds. SIAM J Comput 3:407–437

    MathSciNet  Google Scholar 

  • Goodman JW (1982) Architectural development of optical data processing systems. Aust J Electr Electron Eng 2:139–149

    Google Scholar 

  • Guibas LJ, Odlyzko AM (1980) A new proof of the linearity of the Boyer–Moore string searching algorithm. SIAM J Comput 9:672–682

    Article  MATH  MathSciNet  Google Scholar 

  • Hecht E (2002) Optics, 4th edn. Addison Wesley, Reading, MA

    Google Scholar 

  • Knuth DE, Morris JH Jr, Pratt VR (1977) Fast pattern matching in strings. SIAM J Comput 6(1):323–350

    Article  MATH  MathSciNet  Google Scholar 

  • Lenslet website. http://www.lenslet.com

  • MacQueen J (1967) Some methods for classification and analysis of multivariate observations. In: LeCam LM, Neyman J (eds) Proceedings of the Fifth Berkeley Symposium on Mathematical Statistics and Probability. University of California Press, Berkeley, pp 281–297

  • Murphy N, Naughton TJ, Woods D, Henley B, McDermott K, Duffy E, van der Burgt PJM, Woods N (2006) Implementations of a model of physical sorting. In: Adamatzky A, Teuscher C (eds) From utopian to genuine unconventional computers workshop. Luniver Press, pp 79–100

  • Naughton TJ (2000) A model of computation for Fourier optical processors. In: Lessard RA, Galstian T (eds) Optics in computing, Proc SPIE, vol 4089, pp 24–34

  • Oltean M (2006) A light-based device for solving the Hamiltonian path problem, unconventional computing. In: Calude C et al (eds) LNCS 4135, Springer-Verlag, Berlin, pp 217–227

  • Optical Character Recognition @ Wikipedia. http://www.en.wikipedia.org/wiki/Optical_character_recognition

  • Paniccia M, Koehl S (2005) The silicon solution, IEEE Spectrum. IEEE Press

  • Reif JH, Tyagi A (1997) Efficient parallel algorithms for optical computing with the discrete Fourier transform primitive. Appl Optics 36(29):7327–7340

    Article  Google Scholar 

  • Rong H, Jones R, Liu A, Cohen O, Hak D, Fang A, Paniccia M (2005a) A continuous-wave Raman silicon laser. Nature. 433:725–728

    Article  Google Scholar 

  • Rong H, Liu A, Jones R, Cohen O, Hak D, Nicolaescu R, Fang A, Paniccia M (2005b) An all-silicon Raman laser. Nature. 433:292–294

    Article  Google Scholar 

  • Serway RA, Jewett JW (2004) Physics for scientists and engineers, 6th edn. Brooks/Cole, Belmont, CA

    Google Scholar 

  • Schultes D (2005) Rainbow sort: sorting at the speed of light. Nat Comput 5(1):67–82

    Article  MathSciNet  Google Scholar 

  • Woods D, Naughton TJ (2005) An optical model of computation. Theor Comput Sci 334(1–3):227–258

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mihai Oltean.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Oltean, M. Light-based string matching. Nat Comput 8, 121–132 (2009). https://doi.org/10.1007/s11047-007-9033-0

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11047-007-9033-0

Keywords

Navigation