Implementing sequential and parallel programs for the homing sequence problem

  • B. Ravikumar
  • X. Xiong
Contributed Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1260)


Homing sequences play an important role in the testing of finite state systems and have been used in a number of applications such as hardware fault-detection [7], protocol verification [4], and learning algorithms [11, 3, 1] etc. Here we present a parallel program implementation that finds a homing sequence for an input DFA. Our program can handle randomly generated instances with millions of states, and all DFA's with thousand states. In addition to the design, analysis and implementation of the algorithm, we also discuss what constitute good test cases to test programs that deal with finite automata.


Parallel Algorithm Parallel Program Random Model Finite Automaton Sequential Algorithm 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    M. A. Bender and D. K. Slonim, “The power of team exploration: Two robots can learn unlabeled directed graphs”, 35th Annual IEEE Symposium on Foundations of Computer Science, pp. 75–85 (1994).Google Scholar
  2. 2.
    G. Blelloach and J. Harwick, “Class Notes: Programming Parallel Algorithms”, Technical Report CMU-CS-93-115, Carnegie Mellon University.Google Scholar
  3. 3.
    Y. Freund, M. Kearns, D. Ron, R. Rubinfeld, R. Schapire and L. Sellie, “Efficient Learning of typical automata from random walks”, Proc. of 25th Annual ACM Symposium on Theory of Computing, pp. 315–324 (1993).Google Scholar
  4. 4.
    G. Holzmann, Design and validation of protocols, Englewood Cliffs, NJ, Prentice-Hall (1990).Google Scholar
  5. 5.
    Z. Kohavi, Switching and Finite Automata Theory, McGraw-Hill Publishers Inc. Second Edition (1978).Google Scholar
  6. 6.
    E. F. Moore, “Gedanken-experiments on sequential machines”, pp. 129–153, Automata Studies, Ed: McCarthy and Shannon, Princeton University Press, Princeton, NJ (1956).Google Scholar
  7. 7.
    I. Pomeranz and S. Reddy, “Application of homing sequences in the fault-detection of sequential circuits, IEEE Transactions on Computers, (1994).Google Scholar
  8. 8.
    B. Ravikumar, “Performance bounds of algorithms for testing automata”, (in preparation).Google Scholar
  9. 9.
    B. Ravikumar and X. Xiong, “A parallel algorithm for minimization of finite automata”, in the Proceedings of the 10th International Parallel Processing Symposium (IPPS '96), Honolulu, Hawaii, April 1996, pages 187–191.Google Scholar
  10. 10.
    B. Ravikumar and X. Xiong, “Randomized parallel algorithms for the homing sequence problem”, to appear in the International Conference on Parallel Processing (ICPP'96), Bloomingdale, Illinois, August 1996.Google Scholar
  11. 11.
    R. L. Rivest and R. E. Schapire, “Inference of finite automata using homing sequences”, Information and Computation, vol. 103, pp. 299–347, (1993).Google Scholar
  12. 12.
    A. Tridgell and R.P. Brent, “An Implementation of a General-Purpose Parallel Sorting Algorithm”, Report TR-CS-93-01, Computer Science Laboratory, Australian National University, February, 1993.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • B. Ravikumar
    • 1
  • X. Xiong
    • 1
  1. 1.Department of Computer ScienceUniversity of Rhode IslandKingston

Personalised recommendations