Around Hopcroft's Algorithm
نویسندگان
چکیده
In this paper, a reflection is made on an indeterminism inherent to Hopcroft’s minimization algorithm: the splitter choice. We have implemented two natural policies (FIFO and FILO) for managing the set of splitters for which we obtain the following practical results: the FILO strategy performs better than the FIFO strategy, in the case of a one letter alphabet, the practical complexity in the FILO case never exceeds a linear one and our implementation is more efficient than the minimization algorithm of the FSM tool. This implementation is being integrated in a finite automata library, the Dash library. Thus, we present an efficient manner to manipulate automata by using canonical minimal automata.
منابع مشابه
New Lower Bounds for Hopcroft's Problem
We establish new lower bounds on the complexity of the following basic geometric problem, attributed to John Hopcroft: Given a set of n points and m hyperplanes in IR, is any point contained in any hyperplane? We de ne a general class of partitioning algorithms, and show that in the worst case, for all m and n, any such algorithm requires time (n logm + nm + m logn) in two dimensions, or (n log...
متن کاملOn the Complexity of Hopcroft's State Minimization Algorithm
Hopcroft’s algorithm for minimizing a deterministic automaton has complexity O(n log n). We show that this complexity bound is tight. More precisely, we provide a family of automata of size n = 2 on which the algorithm runs in time k2. These automata have a very simple structure and are built over a one-letter alphabet. Their sets of final states are defined by de Bruijn words.
متن کاملAverage complexity of Moore's and Hopcroft's algorithms
In this paper we prove that for the uniform distribution on complete deterministic automata, the average time complexity of Moore’s state minimization algorithm is O(n log logn), where n is the number of states in the input automata and the number of letters in the alphabet is fixed. Then, an unusual family of implementations of Hopcroft’s algorithm is characterized, for which the algorithm wil...
متن کاملConcurrent bisimulation algorithm
The coarsest bisimulation-finding problem plays an important role in the formal analysis of concurrent systems. For example, solving this problem allows the behavior of different processes to be compared or specifications to be verified. Hence, in this paper an efficient concurrent bisimulation algorithm is presented. It is based on the sequential Paige and Tarjan algorithm and the concept of t...
متن کاملApplying Data Refinement for Monadic Programs to Hopcroft's Algorithm
We provide a framework for program and data refinement in Isabelle/HOL. It is based on a refinement calculus for monadic expressions and provides tools to automate canonical tasks such as verification condition generation. It produces executable programs, from which Isabelle/HOL can generate verified, efficient code in various languages, including Standard ML, Haskell and Scala. In order to dem...
متن کامل