Permutations of Context-Free, ET0L and Indexed Languages Tara Brough, Laura Ciobanu, Murray Elder, Georg Zetzsche
Total Page:16
File Type:pdf, Size:1020Kb
Permutations of context-free, ET0L and indexed languages Tara Brough, Laura Ciobanu, Murray Elder, Georg Zetzsche To cite this version: Tara Brough, Laura Ciobanu, Murray Elder, Georg Zetzsche. Permutations of context-free, ET0L and indexed languages. Discrete Mathematics and Theoretical Computer Science, DMTCS, 2016, Vol. 17 no. 3 (3), pp.167-178. hal-01352858 HAL Id: hal-01352858 https://hal.inria.fr/hal-01352858 Submitted on 16 Aug 2016 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Discrete Mathematics and Theoretical Computer Science DMTCS vol. 17:3, 2016, 167–178 Permutations of context-free, ET0L and indexed languages Tara Brough1∗ Laura Ciobanu2y Murray Elder3z Georg Zetzsche4x 1 Universidade de Lisboa, Portugal 2 University of Neuchâtel, Switzerland 3 The University of Newcastle, Australia 4 LSV, CNRS & ENS Cachan, Université Paris-Saclay, France received 5th Jan. 2015, revised 19th Apr. 2016, accepted 12th May 2016. For a language L, we consider its cyclic closure, and more generally the language Ck(L), which consists of all words obtained by partitioning words from L into k factors and permuting them. We prove that the classes of ET0L and EDT0L languages are closed under the operators Ck. This both sharpens and generalises Brandstädt’s result that if L is context-free then Ck(L) is context-sensitive and not context-free in general for k ≥ 3. We also show that the cyclic closure of an indexed language is indexed. Keywords: ET0L, EDT0L, indexed, context-free, cyclic closure 1 Introduction In this note we investigate closure properties of context-free, ET0L, EDT0L and indexed languages under the operation of permuting a finite number of factors. Let Sk denote the set of permutations on k letters. We sharpen a result of Brandstädt (1981) who proved that if L is context-free (respectively one-counter, linear) then the language k C (L) = fwσ(1) : : : wσ(k) j w1 : : : wk 2 L; σ 2 Skg is not context-free (respectively one-counter, linear) in general for k ≥ 3. In our main result, Theorem 2.3, we prove that if L is ET0L (respectively EDT0L), then Ck(L) is also ET0L (respectively EDT0L). Since context-free languages are ET0L, it follows that if L is context-free, then Ck(L) is ET0L. Brandstädt (1981) proved that regular, context-sensitive and recursively enumerable languages are closed under Ck, so our results extend this list to include ET0L and EDT0L. ∗Research primarily carried out while employed at the University of St Andrews, Scotland. Visit to second author supported by London Mathematical Society Scheme 4 grant 41348. ySupported by Swiss National Science Foundation Professorship FN PP00P2-144681/1 zSupported by Australian Research Council grant FT110100178 xSupported by a fellowship within the Postdoc-Program of the German Academic Exchange Service (DAAD) 1365–8050 c 2016 Discrete Mathematics and Theoretical Computer Science (DMTCS), Nancy, France 168 Tara Brough, Laura Ciobanu, Murray Elder, Georg Zetzsche The language C2(L) is simply the cyclic closure of L, given by cyc(L) = fw2w1 j w1w2 2 Lg: Maslov (1973); Oshiba (1972) proved that the cyclic closure of a context-free language is context-free. In Theorem 3.3 we show that the same is true for indexed languages. The cyclic closure of a language, as well as the generalization Ck, are natural operations on languages, which can prove useful in determining whether a language belongs to a certain class. These operations are particularly relevant when studying languages attached to conjugacy in groups and semigroups (see Ciobanu et al. (2016)). 2 Permutations of ET0L and EDT0L languages The acronym ET0L (respectively EDT0L) refers to Extended, Table, 0 interaction, and Lindenmayer (re- spectively Deterministic). There is a vast literature on Lindenmayer systems, see Rozenberg and Salomaa (1986), with various acronyms such as D0L, DT0L, ET0L, HDT0L and so forth. The following inclu- sions hold: EDT0L ⊂ ET0L ⊂ indexed, and context-free ⊂ ET0L. Furthermore, the classes of EDT0L and context-free languages are incomparable. Definition 2.1 (ET0L) An ET0L-system is a tuple H = (V; A; ∆;I), where 1. V is a finite alphabet, 2. A ⊆ V is the subset of terminal symbols, ∗ 3. ∆ = fP1;:::;Png is a finite set of tables, meaning each Pi is a finite subset of V × V , and 4. I ⊆ V ∗ is a finite set of axioms. ∗ A word over V is called a sentential form (of H). For u; v 2 V , we write u )H;i v if u = c1 ··· cm ∗ for some c1; : : : ; cm 2 V and v = v1 ··· vm for some v1; : : : ; vm 2 V with (cj; vj) 2 Pi for every j 2 f1; : : : ; mg. We write u )H v if u )H;i v for some i 2 f1; : : : ; ng. If there exist sentential forms ∗ u0; : : : ; uk with ui )H ui+1 for 0 ≤ i ≤ n − 1, then we write u0 )H uk. The language generated by H is defined as ∗ ∗ L(H) = fv 2 A j w )H v for some w 2 Ig: A language is ET0L if it is equal to L(H) for some ET0L system H. We may write c ! v 2 P to mean (c; v) 2 P . We call (c; v) a rule for c, and use the convention that if for some c 2 V no rule for c is specified in P , then P contains the rule (c; c). Definition 2.2 (EDT0L) An EDT0L-system is an ET0L system where in each table there is exactly one rule for each letter in V . A language is EDT0L if it is equal to L(H) for some EDT0L system H. In this section we prove the following: Theorem 2.3 Let A be a finite alphabet. If L ⊆ A∗ is ET0L (respectively EDT0L) then Ck(L) is ET0L (respectively EDT0L). Permutations of context-free, ET0L and indexed languages 169 Proof: We start by showing that if #0;:::; #k are distinct symbols not in A and L is ET0L (respectively EDT0L) then so is 0 L = f#0w1#1 ::: #k−1wk#k j w1 : : : wk 2 Lg: This will be done in Lemma 2.5 below. We then prove in Proposition 2.9 that if L1 is an ET0L (re- spectively EDT0L) language where each word in L1 has two symbols a; b appearing exactly once, then L2 = fuabwv j uavbw 2 L1g is ET0L (respectively EDT0L). For each permutation σ 2 Sk we apply this result to L0 for (a; b) = #σ(1)−1; #σ(1) ;:::; #σ(k)−1; #σ(k) to obtain the ET0L (respectively EDT0L) language 0 Lσ = f#0#1 ::: #kwσ(1) : : : wσ(k) j #0w1#1 ::: #k−1wk#k 2 L g: k We obtain C (L) by applying erasing homomorphisms to remove the #i, and taking the union over all σ 2 Sk. Since ET0L (respectively EDT0L) languages are closed under homomorphism and finite union, this shows that Ck(L) is ET0L (respectively EDT0L). Thus the proof will be complete once we established the above facts. 2 Lemma 2.4 If L ⊆ A∗ is EDT0L and # is a symbol not in A then the language L# = fu#v j uv 2 Lg is EDT0L. Proof: Let H = (V; A; ∆;I) be an EDT0L system with L = L(H). Without loss of generality we can assume I ⊆ V . Define an EDT0L system H# = (V#; A [ f#g; ∆#;I#) as follows: V# is the disjoint union V [ fc# j c 2 V g, I# = fs# j s 2 Ig, and m = maxP 2∆fjwj j (c; w) 2 P g, the length of the longest right-hand side of any table. Furthermore, we define ∆# to be the disjoint union ∆ [ fPi;#;P#;i j P 2 ∆; i 2 [0; m]g, where Pi;# := fc# ! ud#v j c ! udv 2 P; juj = i; d 2 V g [ P; (1) P#;i := fc# ! u#v j c ! uv 2 P; juj = ig [ P: We point out that if c ! " 2 P , where " denotes the empty word, then P#;0 = fc# ! #g, so fc# ! # j c ! " 2 P g will be included in ∆#. The new system remains finite since we have added a finite number of new letters and tables, and deterministic since letters v# appear exactly once on the left side of each rule in the new tables. Each word in L(H#) is obtained starting with s# 2 I# and applying tables of the form Pi;# some number of times, until at some point, since A [ f#g does not contain any letter with subscript #, a table of the form P#;i must be applied. Before this point there is precisely one letter in the sentential form with subscript #, and after there are no letters with subscript #. Also, if uv 2 L(H), then there is some a 2 I with a )∗ uv, and by construction a )∗ u#v. 2 H # H# 170 Tara Brough, Laura Ciobanu, Murray Elder, Georg Zetzsche Lemma 2.5 If L 2 A is ET0L (respectively EDT0L) and #0;:::; #n are distinct symbols not in A, then 0 L = f#0u1#1 : : : un#n j u1 : : : un 2 Lg is ET0L (respectively EDT0L). Proof: Since ET0L languages are closed under rational transduction (Rozenberg and Salomaa (1986)), the result is immediate for ET0L.