Quotient Complexity of Closed Languages

Reading time: 6 minute
...

📝 Abstract

A language L is prefix-closed if, whenever a word w is in L, then every prefix of w is also in L. We define suffix-, factor-, and subword-closed languages in the same way, where by subword we mean subsequence. We study the quotient complexity (usually called state complexity) of operations on prefix-, suffix-, factor-, and subword-closed languages. We find tight upper bounds on the complexity of the prefix-, suffix-, factor-, and subword-closure of arbitrary languages, and on the complexity of boolean operations, concatenation, star and reversal in each of the four classes of closed languages. We show that repeated application of positive closure and complement to a closed language results in at most four distinct languages, while Kleene closure and complement gives at most eight languages.

💡 Analysis

A language L is prefix-closed if, whenever a word w is in L, then every prefix of w is also in L. We define suffix-, factor-, and subword-closed languages in the same way, where by subword we mean subsequence. We study the quotient complexity (usually called state complexity) of operations on prefix-, suffix-, factor-, and subword-closed languages. We find tight upper bounds on the complexity of the prefix-, suffix-, factor-, and subword-closure of arbitrary languages, and on the complexity of boolean operations, concatenation, star and reversal in each of the four classes of closed languages. We show that repeated application of positive closure and complement to a closed language results in at most four distinct languages, while Kleene closure and complement gives at most eight languages.

📄 Content

arXiv:0912.1034v1 [cs.FL] 5 Dec 2009 Quotient Complexity of Closed Languages ⋆ Janusz Brzozowski1, Galina Jir´askov´a2, and Chenglong Zou1 1 David R. Cheriton School of Computer Science, University of Waterloo, Waterloo, ON, Canada N2L 3G1 {brzozo@,c2zou@student.math.}uwaterloo.ca 2 Mathematical Institute, Slovak Academy of Science, Greˇs´akova 6, 040 01 Koˇsice, Slovakia {jiraskov@saske.sk} Abstract. A language L is prefix-closed if, whenever a word w is in L, then every prefix of w is also in L. We define suffix-, factor-, and subword- closed languages in the same way, where by subword we mean subse- quence. We study the quotient complexity (usually called state com- plexity) of operations on prefix-, suffix-, factor-, and subword-closed lan- guages. We find tight upper bounds on the complexity of the prefix-, suffix-, factor-, and subword-closure of arbitrary languages, and on the complexity of boolean operations, concatenation, star and reversal in each of the four classes of closed languages. We show that repeated ap- plication of positive closure and complement to a closed language results in at most four distinct languages, while Kleene closure and complement gives at most eight languages. Keywords: automaton, closed, factor, language, prefix, quotient, state complexity, subword, suffix, regular operation, upper bound 1 Introduction The state complexity of a regular language L is the number of states in the min- imal deterministic finite automaton (dfa) recognizing L. The state complexity of an operation f(K, L) (or g(L)) in a subclass C of regular languages is the max- imal state complexity of the language f(K, L) (or g(L)), when K and L range over all languages in C. For a detailed discussion of general issues of state com- plexity see [4, 22] and the reference lists in those papers. In 1994 the complexity of concatenation, star, left and right quotients, reversal, intersection and union in regular languages were examined in detail in [23]. The complexity of opera- tions was also considered in several subclasses of regular languages: finite [22], unary [18, 23], prefix-free [13] and suffix-free [12], and ideal languages [6]. These studies show that the complexity can be significantly lower in a subclass than in the general case. Here we examine state complexity in the classes of prefix-, suffix-, factor-, and subword-closed regular languages. ⋆This work was supported by the Natural Sciences and Engineering Research Council of Canada grant OGP0000871 and by VEGA grant 2/0111/09. There are several reasons for considering closed languages. They appear often in theoretical computer science. Subword-closed languages were studied in 1969 [11], and also in 1973 [20]. Suffix-closed languages were considered in 1974 [10], and later in [9, 14, 21]. Factor-closed languages, also called factorial, have received some attention, for example, in [2, 16]. Subword-closed languages were studied in [17]. Prefix-closed languages play a role in predictable semiau- tomata [7]. All four classes of closed languages were examined in [1], and decision problems for closed languages were studied in [8]. A language is a left ideal (re- spectively, right, two-sided, all-sided ideal) if L = Σ∗L, (respectively, L = LΣ∗, L = Σ∗LΣ∗and L = Σ∗ L), where Σ∗ L is the shuffle of Σ∗with L). Closed languages are related to ideal languages as follows [1]: For every non-empty L, L is a right (left, two-sided, all-sided) ideal, if and only if L is a prefix(suffix, factor, subword)-closed language. Closed languages are defined by binary relations “is a prefix of” (respectively, “is a suffix of”, “is a factor of”, “is a subword of”) [1], and are special cases of convex languages [1, 20]. The fact that the four classes of closed languages are related to each other permits us to obtain many complexity results using similar methods. 2 Quotient Complexity If Σ is a non-empty finite alphabet, then Σ∗is the free monoid generated by Σ. A word is any element of Σ∗, and ε is the empty word. The length of a word w ∈Σ∗is |w|. A language over Σ is any subset of Σ∗. The cardinality of a set is denoted by |S|. If w = uxv for some u, v, x ∈Σ∗, then u is a prefix of w, v is a suffix of w, and x is a factor of w. If w = w0a1w1 · · · anwn, where a1, . . . , an ∈Σ, and w0, . . . , wn ∈Σ∗, then v = a1 · · · an is a subword of w. A language L is prefix-closed if w ∈L implies that every prefix of w is also in L. In the same way, we define suffix-, factor-, and subword-closed languages. A language is closed if it is prefix-, suffix-, factor-, or subword-closed. The following set operations are defined on languages: complement (L = Σ∗\ L), union (K ∪L), intersection (K ∩L), difference (K \ L), and symmetric difference (K ⊕L). A general boolean operation with two arguments is denoted by K ◦L. We also define the product, usually called concatenation or catenation, (KL = {w ∈Σ∗| w = uv, u ∈K, v ∈L}), (Kleene) star (K∗= S i≥0 Ki), and positive closure (K+ = S i≥1 Ki). The reverse wR of a word w ∈Σ∗is defined as follows:

This content is AI-processed based on ArXiv data.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut