Minimal Separating Sequences for All Pairs of States

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9618)

Abstract

Finding minimal separating sequences for all pairs of inequivalent states in a finite state machine is a classic problem in automata theory. Sets of minimal separating sequences, for instance, play a central role in many conformance testing methods. Moore has already outlined a partition refinement algorithm that constructs such a set of sequences in \(\mathcal {O}(mn)\) time, where m is the number of transitions and n is the number of states. In this paper, we present an improved algorithm based on the minimization algorithm of Hopcroft that runs in \(\mathcal {O}(m \log n)\) time. The efficiency of our algorithm is empirically verified and compared to the traditional algorithm.

Keywords

Algorithms on automata and words Partition refinement 

References

  1. 1.
    Bonchi, F., Pous, D.: Checking NFA equivalence with bisimulations up to congruence. In: POPL, pp. 457–468 (2013)Google Scholar
  2. 2.
    Dorofeeva, R., El-Fakih, K., Maag, S., Cavalli, A., Yevtushenko, N.: FSM-based conformance testing methods: a survey annotated with experimental evaluation. Inf. Softw. Technol. 52(12), 1286–1297 (2010)CrossRefGoogle Scholar
  3. 3.
    Gill, A.: Introduction to the Theory of Finite-state Machines. McGraw-Hill, New York (1962)MATHGoogle Scholar
  4. 4.
    Gries, D.: Describing an algorithm by Hopcroft. Acta Informatica 2(2), 97–109 (1973)CrossRefMathSciNetMATHGoogle Scholar
  5. 5.
    Hierons, R.M., Türker, U.C.: Incomplete distinguishing sequences for finite state machines. Comput. J. 58, 1–25 (2015)CrossRefGoogle Scholar
  6. 6.
    Hopcroft, J.E.: An n log n algorithm for minimizing states in a finite automaton. In: Theory of Machines and Computations, pp. 189–196 (1971)Google Scholar
  7. 7.
    Knuutila, T.: Re-describing an algorithm by Hopcroft. Theoret. Comput. Sci. 250(1–2), 333–363 (2001)CrossRefMathSciNetMATHGoogle Scholar
  8. 8.
    Lee, D., Yannakakis, M.: Testing finite-state machines: state identification and verification. Computers 43(3), 306–320 (1994)MathSciNetGoogle Scholar
  9. 9.
    Moore, E.F.: Gedanken-experiments on sequential machines. Automata Stud. 34, 129–153 (1956)Google Scholar
  10. 10.
    Smeenk, W., Moerman, J., Vaandrager, F., Jansen, D.N.: Applying automata learning to embedded control software. In: Butler, M., et al. (eds.) ICFEM 2015. LNCS, vol. 9407, pp. 67–83. Springer, Heidelberg (2015). doi:10.1007/978-3-319-25423-4_5 CrossRefGoogle Scholar
  11. 11.
    Valmari, A., Lehtinen, P.: Efficient minimization of DFAs with partial transition functions. In: STACS, pp. 645–656 (2008)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Rick Smetsers
    • 1
  • Joshua Moerman
    • 1
  • David N. Jansen
    • 1
  1. 1.Institute for Computing and Information SciencesRadboud UniversityNijmegenThe Netherlands

Personalised recommendations