Theoretical Computer Science 410 (2009) 2431–2441
Contents lists available at ScienceDirect
Theoretical Computer Science
journal homepage: www.elsevier.com/locate/tcs
State complexity of unique rational operations
Narad Rampersad
a
, Nicolae Santean
a,∗
, Jeffrey Shallit
a
, Bala Ravikumar
b
a
School of Computer Science, University of Waterloo, 200 University Avenue West, Waterloo, ON N2L 3G1, Canada
b
Department of Computer Science, Sonoma State University, 1801 East Cotati Avenue, Rohnert Park, CA 94928, USA
article info
Keywords:
Unique union
Unique concatenation
Unique star
State complexity
abstract
For each basic language operation we define its ‘‘unique’’ counterpart as being the operation
that results in a language whose words can be obtained uniquely through the given
operation. These unique operations can arguably be viewed as combined basic operations,
placing this work in the popular area of state complexity of combined operations on regular
languages. We study the state complexity of unique rational operations and we provide
upper bounds and empirical results meant to cast light into this matter. Equally important,
we hope to have provided a generic methodology for estimating their state complexity.
© 2009 Elsevier B.V. All rights reserved.
1. Introduction
Finite automata (FAs) are ubiquitous objects in computer science theory as much as in computer applications. They model
finite state systems, from a door lock to the entire Universe – in some views – and check the syntax of regular languages.
Computers are deterministic finite automata (DFAs), and the English lexicon can be spell-checked by FAs. Recently, automata
have found new practical applications, such as in natural language processing [17], communications [3] and software
engineering [11] — applications increasingly demanding in terms of computing resources. In this context, the study of state
complexity of operations on FAs and their languages has become a topic of paramount importance.
From the formal languages point of view, FAs are yet another tool for defining the family of regular (or rational, as known
in certain literature) languages, along with regular expressions and right linear grammars. They arise from the perpetual
mathematical effort of expressing infinite objects by finite means. In this paper we pursue a new direction in their study,
namely, that of analyzing the succinctness of expressing a language obtained by certain unique language operations, in
terms of the descriptional complexity of the languages involved.
Similar directions have been pursued in automata theory before, e.g., for basic language operations [29,5,6,25] and
combined operations [9,24,28] on regular languages. In the present paper, we make a leap from the current trend, by
addressing the succinctness of some special operations; namely, we address those operations derived from the basic ones,
that reach a result in a unique manner: an object obtained in two (or more) ways by applying the given operation is
excluded from the result. This work is distinct from another recent examination of concatenation uniqueness in [7], where
the operation is defined in an ‘‘all-or-nothing’’ manner. Our definition of unique concatenation was briefly mentioned in
[15], where pebble automata were used to infer the regularity of this operation. We go beyond this matter, by rigorously
studying all rational operations, with a focus on their state complexity. An extended version of this paper, with more details,
experiments, and complete proofs, can be found in [21].
∗
Corresponding address: Department of Computer and Information Sciences, Indiana University South Bend, 1700 Mishawaka Ave., South Bend, IN
46634, USA.
E-mail addresses: nrampersad@cs.uwaterloo.ca (N. Rampersad), nsantean@iusb.edu (N. Santean), shallit@cs.uwaterloo.ca (J. Shallit),
ravi@cs.sonoma.edu (B. Ravikumar).
0304-3975/$ – see front matter © 2009 Elsevier B.V. All rights reserved.
doi:10.1016/j.tcs.2009.02.035