Weak minimization of DFA: an algorithm and applications

  • Authors:
  • B. Ravikumar;G. Eisman

  • Affiliations:
  • Department of Computer Science, Sonoma State University, 1801 East Cotati Av., Rohnert Park, CA;Department of Computer Science, San Francisco State University, San Francisco, CA

  • Venue:
  • Theoretical Computer Science - Implementation and application of automata
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

DFA minimization is an important problem in algorithm design and is based on the notion of DFA equivalence: Two DFA's are equivalent if and only if they accept the same set of strings. In this paper, we propose a new notion of DFA equivalence (that we call weak-equivalence): We say that two DFA's are weakly equivalent if they both accept the same number of strings of length k for every k. The motivation for this problem is as follows. A large number of counting problems can be solved by encoding the combinatorial objects we want to count as strings over a finite alphabet. If the collection of encoded strings is accepted by a DFA, then standard algorithms from computational linear algebra can be used to solve the counting problem efficiently. When applying this approach to large-scale applications, the bottleneck is the space complexity since the computation involves a matrix of order k × k if k is the size of the underlying DFA M. This leads to the natural question: Is there a smaller DFA that is weakly equivalent to M? We present an algorithm of time complexity O(k3) to find a compact DFA weakly equivalent to a given DFA. We illustrate, in the case of a tiling problem, that our algorithm reduces a (strongly minimal) DFA by a factor close to 1/2.