Sample Page

The intersection non-emptiness problem, also known as finite automaton intersection problem[1] or the non-emptiness of intersection problem, is a PSPACE-complete decision problem from the field of automata theory. The problem asks if a list of deterministic finite automata has nonempty intersection.

Definitions

A non-emptiness decision problem is defined (for a particular type of automaton) as follows: given an automaton as input, the goal is to determine whether or not the automaton’s language is non-empty, i.e., if there exists a string that is accepted by the automaton. Non-emptiness problems have been studied in the field of automata theory for many years. Several common non-emptiness problems have been shown to be complete for complexity classes ranging from Deterministic Logspace up to PSPACE.[2]

The intersection non-emptiness decision problem is similar, but defined on a list of automata, instead of just one. In particular, for the purposes of this article: given a list of deterministic finite automata as input, determine whether or not their associated regular languages have a non-empty intersection; i.e., determine if there exists a string that is accepted by every automaton in the list.

Algorithm

There is an exponential time algorithm that solves the intersection non-emptiness problem based on the Cartesian product construction introduced by Michael O. Rabin and Dana Scott.[3] The idea is that all of the automata together form a “product automaton” whose states consist of tuples of states in the list of automata; a string is accepted by the product automaton if and only if it is accepted by every automaton in the list. Therefore, a breadth-first search (or depth-first search) within the product automaton’s state space will determine whether there exists a path from the product start state to one of the product final states. Whether or not such a path exists is equivalent to determining if any string is accepted by every automaton in the list.

For this construction, the product automaton does not need to be explicitly constructed; the automata provide sufficient information so that transitions can be determined as needed.

Hardness

The intersection non-emptiness problem was shown to be PSPACE-complete by Dexter Kozen in 1977.[1] It is an open problem whether any faster algorithms exist.[4]

References

  1. ^ a b Kozen, D. (1977). Lower bounds for natural proof systems. Proc. 18th Symp. on the Foundations of Computer Science. IEEE. pp. 254–266. doi:10.1109/SFCS.1977.16.
  2. ^ Galil, Zvi (1976). “Hierarchies of complete problems”. Acta Informatica. 6 (1). Springer-Verlag: 77–88. doi:10.1007/BF00263744. S2CID 26562214.
  3. ^ Rabin, M. O.; Scott, D. (1959). “Finite Automata and Their Decision Problems”. IBM J. Res. Dev. 2 (3). IBM Corp.: 114–125. doi:10.1147/rd.32.0114.
  4. ^ “On The Intersection of Finite Automata”. rjlipton.wordpress.com. Retrieved 15 December 2020.