Acta Informatica

, Volume 2, Issue 2, pp 97–109 | Cite as

Describing an algorithm by Hopcroft

  • David Gries


We give an algorithm, its correctness proof, and its proof of execution time bound, for finding the sets of equivalent states in a deterministic finite state automaton. The time bound is K · m · n · log n where K is a constant, m the number of input, symbols, and n the number of states. Hopcroft [3] has already published such an algorithm. The main reason for this paper is to illustrate the use of communicating an algorithm to others using a structured, top-down approach. We have also been able to improve on Hopcroft's algorithm by reducing the size of the algorithm and correspondingly complicating the proof of the running time bound.


Information System Operating System Data Structure Communication Network Execution Time 
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.
    Hoare, C. A. R.: An axiomatic basis for computer programming. CACM 12, 576–583 (1969).Google Scholar
  2. 2.
    Dijkstra, E. W.: Notes on structured programming, EWD 249, Technical University Eindhoven, The Netherlands, 1969.Google Scholar
  3. 3.
    Hopcroft, J.: An n log n algorithm for minimizing states in a finite automaton, in: Theory of Machines and Computations. New York: Academic Press 1971 (p. 189–196).Google Scholar

Copyright information

© Springer-Verlag 1973

Authors and Affiliations

  • David Gries
    • 1
  1. 1.Department of Computer ScienceCornell University Upson HallIthacaUSA

Personalised recommendations