Intersection Non-Emptiness Problem

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

The intersection non-emptiness problem (also known as finite automaton intersection problem[1] and non-emptiness of intersection problem) is a PSPACE-complete decision problem from the field of automata theory.

Definitions[edit]

A non-emptiness decision problem is defined as follows. Given an automaton as input, the goal is to determine whether or not the automaton's language is non-empty. In other words, the goal is to determine 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 concerned with whether the intersection of given languages is non-empty. In particular, the intersection non-emptiness problem is defined as follows. Given a list of deterministic finite automata as input, the goal is to determine whether or not their associated regular languages have a non-empty intersection. In other, the goal is to determine if there exists a string that is accepted by all of the automata in the list.

Algorithm[edit]

There is a common 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 such that a string is accepted by all of the automata if and only if it is accepted by the product automaton. Therefore, a breadth first search (or depth first search) within the product automaton's state diagram 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 all of the automata in the list.

Note: The product automaton does not need to be fully constructed. The automata together provide sufficient information so that transitions can be determined as needed.

Hardness[edit]

The intersection non-emptiness problem was shown to be PSPACE-complete in a work by Dexter Kozen in 1977.[1] Since then, many additional hardness results have been shown. Yet, it is still an open problem to determine whether any faster algorithms exist.[4]

References[edit]

  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. Springer-Verlag. 6 (1): 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. IBM Corp. 2 (3): 114–125. doi:10.1147/rd.32.0114.
  4. ^ "On The Intersection of Finite Automata". rjlipton.wordpress.com. Retrieved 15 December 2020.

* See an incomplete list of related publications here.

Related[edit]