Elsevier

Theoretical Computer Science

Volume 682, 19 June 2017, Pages 165-179
Theoretical Computer Science

On Boolean combinations forming piecewise testable languages

https://doi.org/10.1016/j.tcs.2017.01.017Get rights and content
Under an Elsevier user license
open archive

Abstract

A regular language is k-piecewise testable (k-PT) if it is a Boolean combination of languages of the form La1a2an=Σa1Σa2ΣΣanΣ, where aiΣ and 0nk. Given a finite automaton A, if the language L(A) is piecewise testable, we want to express it as a Boolean combination of languages of the above form. The idea is as follows. If the language is k-PT, then there exists a congruence k of finite index such that L(A) is a finite union of k-classes. Every such class is characterized by an intersection of languages of the from Lu, for |u|k, and their complements. To represent the k-classes, we make use of the k-canonical DFA. We identify the states of the k-canonical DFA whose union forms the language L(A) and use them to construct the required Boolean combination. We study the computational and descriptional complexity of related problems.

Keywords

Automata
Languages
k-piecewise testability
Complexity

Cited by (0)

1

Research supported by the German Research Foundation (DFG) in Emmy Noether grant KR 4381/1-1 (DIAMOND).

2

Research supported by the Alexander von Humboldt Foundation.