Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Josef Tkadlec Separace slov pomocí jazyk Katedra algebry Vedoucí bakalá ské práce: Studijní program: Studijní obor: doc. Mgr. t pán Holub, Ph.D. Matematika Obecná matematika Praha 2012
Na tomto míst bych rád pod koval své rodin za podporu b hem psaní této práce jakoº i b hem celého studia a svému vedoucímu doc. t pánu Holubovi za jeho nezm rnou trp livost a mnoho cenných post eh.
Prohla²uji, ºe jsem tuto bakalá skou práci vypracoval samostatn a výhradn s pouºitím citovaných pramen, literatury a dal²ích odborných zdroj. Beru na v domí, ºe se na moji práci vztahují práva a povinnosti vyplývající ze zákona. 121/2000 Sb., autorského zákona v platném zn ní, zejména skute nost, ºe Univerzita Karlova v Praze má právo na uzav ení licen ní smlouvy o uºití této práce jako ²kolního díla podle Ÿ60 odst. 1 autorského zákona. V... dne... Podpis autora
Název práce: Separace slov pomocí jazyk Autor: Josef Tkadlec Katedra: Katedra algebry Vedoucí bakalá ské práce: doc. Mgr. t pán Holub, Ph.D., Katedra algebry Abstrakt: V této práci se zabýváme rozklady jazyka v²ech kone ných slov nad danou abecedou A na n komutativních jazyk, které separují n p edem daných slov a jsou uzav ené vzhledem ke konkatenaci. V první ásti denujeme pot ebné pojmy z kombinatoriky na slovech. Ve druhé ásti nejd íve ukazujeme, ºe hledaný rozklad existuje práv tehdy, kdyº má kaºdá dvojice separovaných slov lineárn nezávislé Parikhovy obrazy, a charakterizujeme v²echny takové rozklady nad dvouprvkovou abecedou. Následn ukazujeme, ºe p i vynechání poºadavku na komutativitu jazyk lze slova separovat práv tehdy, kdyº ºádná dv nekomutují. K posledn jmenovanému tvrzení podáváme dva odli²né d kazy. Klí ová slova: kombinatorika na slovech, komutativní jazyky, Parikhovo zobrazení, separace uzav enými mnoºinami Title: Separation of words by languages Author: Josef Tkadlec Department: Department of Algebra Supervisor: doc. Mgr. t pán Holub, Ph.D., Department of Algebra Abstract: In this work we consider the partitions of the language of all nite words over the given nite alphabet A into n commutative languages which separate n given words and are closed with respect to concatenation. In the rst part we dene the necessary notions from combinatorics on words. In the second part we prove that such partition exists if and only if the Parikh images of the words are pairwise linearly independent and we characterize all such partitions over twoelement alphabet. Next we show that if we omit the condition of commutativity of the languages, the words can be separated if and only if they pairwise do not commute. We present two dierent proofs of the latter claim. Keywords: combinatorics on words, commutative languages, Parikh map, separation by closed sets
Obsah Seznam pouºitých zkratek 2 Úvod 3 1 Základy kombinatoriky na slovech 4 1.1 Kombinatorika na slovech...................... 4 1.2 Komutativita v kombinatorice na slovech.............. 5 2 Separace slov pomocí jazyk 6 2.1 Problém................................ 6 2.2 Komutativní jazyky.......................... 8 2.3 Geometrický p ístup......................... 13 2.4 Binární p ístup............................ 16 Záv r 19 Seznam pouºité literatury 20 1
Seznam pouºitých zkratek N N + Q R R k nezáporná celá ísla kladná celá ísla racionální ísla reálná ísla k-rozm rný eukleidovský prostor [a 1,..., a k ] bod kartézské soustavy sou adnic o sou adnicích a 1,..., a k (a n a n 1... a 0 ) 2 íslo zapsané ve dvojkové soustav, tedy n i=0 a i2 i 2
Úvod Kombinatorika na slovech je odv tví prostupující mnoha r znými obory. Krom formální lingvistiky a teorie automat úzce souvisí i s kombinatorickou teorií ísel i lineární algebrou. Jedním z velmi astých koncept v matematice je koncept uzav enosti mnoºiny vzhledem k n jaké operaci. V kontextu kombinatoriky na slovech je p irozeným kandidátem pro tuto operaci takzvaná konkatenace ( ili slepování slov). V roce 2011 se v lánku [1] pánové Brzozowski, Grant a Shallit zabývali otázkou, zda pro daná dv slova nad danou abecedou existuje rozklad v²ech slov nad touto abecedou na dv uzav ené mnoºiny, které budou odd lovat ona dv p vodní slova. Ukázali, ºe takový rozklad existuje práv tehdy, kdyº p edepsaná dv slova nekomutují. Pozd ji v témºe roce v lánku [2] pánové Holub a Kortelainen zobecnili toto tvrzení i pro více slov neº dv. V této práci shrnujeme jejich výsledky a p idáváme n které dal²í. V první ásti práce denujeme jen ty nejzákladn j²í pojmy kombinatoriky na slovech, bez kterých se v dal²ím výkladu neobejdeme. ƒtená e baºícího po ²ir²ím rozhledu odkazujeme na [3] p ípadn na [4]. Ve druhé ásti formulujeme problém separace slov pomocí uzav ených jazyk, jímº se zabýváme po zbytek práce. Nejd íve problém vy e²íme v kontextu komutativních jazyk tím, ºe dokáºeme domn nku z lánku [2]. Poskytneme navíc charakteristiku rozklad na dva uzav ené jazyky nad dvouprvkovou abecedou. Následn rozvineme a zobecníme my²lenky z lánku [1], ímº podáme e²ení problému i pro obecn nekomutativní jazyky. Na samotný záv r pak p edstavíme alternativní e²ení téhoº problému, které bylo popsáno op t v lánku [2]. 3
1. Základy kombinatoriky na slovech 1.1 Kombinatorika na slovech Denice. Abecedou rozumíme neprázdnou kone nou mnoºinu symbol. T mto symbol m íkáme písmena. Slovem w nad abecedou A rozumíme kone nou posloupnost písmen w = (a 1, a 2,..., a n ), a 1,..., a n A. P ipou²tíme i n = 0, emuº odpovídá prázdné slovo, které zna íme e. Mnoºinu v²ech slov nad abecedou A zna íme A. Mnoºinu v²ech neprázdných slov nad abecedou A zna íme A + = A \{e}. Jazykem rozumíme libovolnou (tedy i nekone nou) neprázdnou podmnoºinu A. Denice. Mnoºina A je p irozen vybavena binární operací : A A A denovanou jako (a 1, a 2,..., a n ) (b 1, b 2,..., b m ) = (a 1, a 2,..., a n, b 1, b 2,..., b m ). Tuto operaci nazýváme konkatenace, p ípadn sou in. Místo w = u v pí²eme zpravidla jen w = uv. Jelikoº (a 1, a 2,..., a n ) = (a 1 ) (a 2 ) (a n ) budeme podobn namísto w = (a 1, a 2,..., a n ) psát w = a 1 a 2... a n. Pro kaºdé slovo w A platí w e = w = e w. Prvek e je proto neutrální vzhledem k operaci, trojice (A,, e) je monoid a dvojice (A +, ) je pologrupa. Denice. A w = a 1 a 2... a n je neprázdné slovo nad abecedou A. Pak délkou w = n slova w rozumíme po et písmen, z nichº se skládá. Délku prázdného slova klademe rovnu nule. Zobrazení ϕ: w A w N je z ejm monoidový homomorsmus (A,, e) a (N, +, 0). Pro a A zna íme symbolem w a po et výskyt písmene a ve slov w. Platí w = w a a uv a = u a + v a. a A Denice. A u = a 1 a 2... a n, v = b 1 b 2... b m jsou slova nad abecedou A. ekneme, ºe u je prexem slova v, jestliºe n m a pro kaºdé i = 1,..., n je a i = b i. Symbolem wa zna íme jazyk t ch slov, která mají za prex slovo w. Poznámka 1.1. Spl ují-li slova u, v, w, z rovnost uv = wz, pak alespo jedno ze slov u, w je prexem toho druhého. 4
1.2 Komutativita v kombinatorice na slovech Denice. M jme k N + a abecedu A = {a 1,..., a k }. Parikhovým zobrazením rozumíme zobrazení Ψ: A N k, které slovu w A p i adí vektor Ψ(w) = ( w a1,..., w ak ). Vektoru Ψ(w) íkáme Parikh v obraz slova w. ekneme, ºe jazyk L nad abecedou A je komutativní, jestliºe pro kaºdé w 1 L a w 2 A takové, ºe Ψ(w 2 ) = Ψ(w 1 ), je i w 2 L. Parikhovým obrazem jazyka L p irozen rozumíme Ψ(L) = {Ψ(w) w L}. Pro podmnoºinu S N k naopak klademe Ψ 1 (S) = {w A Ψ(w) S}. Jazyk L je tedy komutativní práv tehdy, kdyº Ψ 1 (Ψ(L)) = L. Denice. A A je abeceda. ekneme, ºe slova u, v A komutují, jestliºe uv = vu. Na samý záv r této ásti je²t p ipomeneme standardní kombinatoricko-slovní lemma. Lemma 1.2. A A je abeceda a u, v A +. Pak u a v komutují práv tehdy, kdyº existuje slovo r A + a exponenty a, b N + takové, ºe u = r a a v = r b. D kaz: Jsou-li slova u, v mocninou téhoº slova r A +, pak uv = r a r b = r a+b = r b r a = vu, takºe skute n komutují. Nyní a u, v komutují. Postupujme indukcí podle uv. Je-li u = v, pak porovnáním prvních u = v písmen slov uv = vu získáváme u = v, a tedy u a v jsou mocninami téhoº slova. To platí speciáln i pro u = v = 1. Dále a uv > 2 a bez újmy na obecnosti p edpokládejme, ºe u > v. Jelikoº v je prexem u, existuje neprázdné slovo w takové, ºe u = vw. Pro toto slovo w platí vu = uv = vwv, takºe u = wv. Slova v a w tak komutují. Protoºe jsou neprázdná a vw = u < uv, jsou díky induk nímu p edpokladu mocninou téhoº slova r. Slovo u je pak z ejm rovn º mocninou r. u v w v u Obrázek 1.1: Kombinatoricko-slovní lemma Nyní se m ºeme bez obav pustit do st ºejního tématu této práce, totiº do zkoumání rozklad jazyka na uzav ené jazyky. 5
2. Separace slov pomocí jazyk 2.1 Problém Denice. A A je abeceda. ekneme, ºe jazyk L A + je uzav ený, jestliºe pro kaºdá dv slova u, v L je i uv L. A n N a L 1,..., L n A +. ekneme, ºe n-tice {L i } n i=1 tvo í rozklad mnoºiny A +, jestliºe L 1,..., L n jsou navzájem disjunktní neprázdné jazyky takové, ºe n A + = L i. ekneme, ºe tento rozklad je uzav ený, pokud jsou v²echny jazyky L 1,..., L n uzav ené. Kone n ekneme, ºe uzav ený rozklad {L i } n i=1 separuje n-tici slov w 1,..., w n z mnoºiny A +, jestliºe pro kaºdé i = 1,..., n existuje práv jedno j {1, 2,..., n} takové, ºe w j L i. P edchozí denice dává prostor ke zkoumání toho, kolik uzav ených rozklad existuje. Neº se této otázce za neme v novat blíºe, uve me n kolik elementárních p íklad uzav ených rozklad. P íklady 1. Uvaºme dvouprvkovou abecedu A = {a, b} a slova w 1 = aab, w 2 = abb. (i) Jazyky K 1 = a + = {a, aa, aaa,... } a K 2 = L \ K 1 tvo í uzav ený rozklad mnoºiny A +. i=1 (ii) Jazyky L 1 = {w A + w a 12 } w a L 2 = {w A + w a < 12 } w tvo í uzav ený rozklad mnoºiny A + separující slova w 1, w 2. (iii) Jazyky M 1 = aa, M 2 = ba tvo í uzav ený rozklad mnoºiny A +. (iv) Jazyky N 1 = {a} aaa, N 2 = ba aba tvo í uzav ený rozklad separující slova w 1, w 2. D kaz: Snadno se p esv d íme, ºe ve v²ech p ípadech se jedná o rozklady mnoºiny A +. Ukáºeme, ºe v²echny pouºité jazyky jsou uzav ené. 6
(i) Jazyk K 1 jist uzav ený je. V²imn me si, ºe K 2 = {w A + w b 1}. Jelikoº pro u, v K 2 platí uv b = u b + v b 1 + 1 1, je i K 2 uzav ený. (ii) Pro kaºdá dv slova u, v L 1 platí uv a = u a + v a 1 2 u + 1 2 v = 1 2 uv, takºe L 1 je uzav ený. Analogicky ukáºeme, ºe i L 2 je uzav ený. Navíc jist w 1 L 1 a w 2 L 2. (iii) Sou inem slov za ínajících na totéº písmeno je slovo za ínající op t na totéº písmeno, takºe M 1 i M 2 jsou uzav ené. (iv) Sou inem slov, z nichº kaºdé má n který sv j prex v jisté mnoºin S, je op t slovo s n kterým svým prexem náleºejícím S. Navíc z ejm w 1 N 1 a w 2 N 2. Na²ím cílem bude pro zadanou n-tici slov w 1,..., w n A + rozhodnout, zda existuje uzav ený rozklad {L i } n i=1 mnoºiny A+, který ji separuje. Za neme snadným lemmatem. Lemma 2.1. Pokud neprázdná slova u, v komutují, pak neexistují disjunktní uzav ené jazyky L 1, L 2 takové, ºe u L 1 a v L 2. D kaz: P edpokládejme, ºe u L 1 a v L 2, kde L 1 a L 2 jsou uzav ené jazyky. Jelikoº slova u a v komutují, jsou díky Lemmatu 1.2 mocninou téhoº slova r, tedy existují α, β N + taková, ºe u = r α, v = r β. Z uzav enosti L 1, L 2 ov²em plyne L 1 u β = r αβ = r βα = v α L 2, takºe jazyky L 1, L 2 nejsou disjunktní. D sledek 2.2. Nelze separovat n-tici slov w 1,..., w n A +, v níº n která dv slova komutují. D kaz: Skute n, taková dv slova díky p edchozímu lemmatu nemohou leºet v r zných jazycích, protoºe ty jsou uzav ené a disjunktní. Ukazuje se, ºe podmínka na nekomutativitu dvojic slov je nejen nutná, ale i posta ující. Platí totiº následující v ta. 7
V ta 2.3. A n N a w 1,..., w n jsou neprázdná slova nad abecedou A taková, ºe pro kaºdou dvojici index i, j {1,..., n}, i j, slova w i a w j nekomutují. Pak existuje uzav ený rozklad {L i } n i=1 mnoºiny A+ separující slova w 1,..., w n. Práv zmín nou v tu dokáºeme pozd ji. Nejd íve se budeme v novat rozklad m, na které vzneseme je²t jeden poºadavek totiº aby pouºité jazyky byly komutativní. 2.2 Komutativní jazyky Komutativní jazyky nad k-prvkovou abecedou A lze prost ednictvím Parikhova zobrazení Ψ p irozen ztotoºnit s podmnoºinami m íºových bod (to jsou body s celo íselnými sou adnicemi) v N k. To, zda daná podmnoºina m íºových bod odpovídá jazyku, který je uzav ený, lze pak pom rn snadno ov ovat díky tomu, ºe pro libovolná dv slova u, v platí Ψ(uv) = Ψ(u) + Ψ(v). Zam me se nejd íve na p ípad, kdy máme separovat dv slova w 1, w 2. Pokud mají tato slova lineárn závislé Parikhovy obrazy, pak je pomocí uzav ených komutativních jazyk jist separovat nelze (skute n, existují-li k, l N taková, ºe k Ψ(w 1 ) = l Ψ(w 2 ), pak m íºový bod k Ψ(w 1 ) = l Ψ(w 2 ) musí náleºet ob ma jazyk m). Jak ukazuje následující tvrzení, v opa ném p ípad lze naopak dv slova separovat jednodu²e. Tvrzení 2.4. A mají slova w 1, w 2 nad abecedou A lineárn nezávislé Parikhovy obrazy. Pak existuje uzav ený rozklad L 1, L 2 mnoºiny A + separující slova w 1, w 2 takový, ºe jazyky L 1, L 2 jsou komutativní. D kaz: Postupujme po vzoru P íkladu 1(ii). Jelikoº Parikhovy obrazy slov w 1, w 2 jsou lineárn nezávislé, existuje a A takové, ºe w 1 a w 1 w 2 a w 2. Bez újmy na obecnosti p edpokládejme, ºe w 1 a w 1 = t < w 2 a w 2 a poloºme L 1 = { w A + w a w } t a L 2 = A + \ L 1. Jazyky L 1, L 2 jsou z ejm komutativní, tvo í rozklad A + a separují slova w 1, w 2. Navíc jsou oba uzav ené. Skute n, pro kaºdá dv slova u, v L 1 je u a t u a v a t v, a tedy i uv a = u a + v a t ( u + v ) = t uv, 8
w a w 2 L 2 w a = t w w 1 L 1 w Obrázek 2.1: Rozklad separující slova s lineárn nezávislými Parikhovy obrazy takºe uv L 1 a jazyk L 1 je uzav ený. Podobn pro u, v L 2 je u a > t u a v a > t v, takºe uv a = u a + v a > t ( u + v ) = t uv a L 2 je rovn º uzav ený. Pro úplnost je²t ukaºme, ºe vý²e uvedená konstrukce uzav eného rozkladu na komutativní jazyky je (alespo v p ípad dvouprvkové abecedy) principiáln jediná. Tvrzení 2.5. A {L 1, L 2 } je uzav ený rozklad mnoºiny {0, 1} + na dva komutativní jazyky. Pak existuje t [0, 1] takové, ºe jeden z jazyk obsahuje slova { w {0, 1} + w 1 < t w }, druhý obsahuje slova { w {0, 1} + w 1 > t w } a jeden z nich navíc obsahuje i slova { w {0, 1} + w 1 = t w }. D kaz: Uvaºme libovolný uzav ený rozklad {L 1, L 2 } mnoºiny {0, 1} + na komutativní jazyky a ozna me M 1 = Ψ(L 1 ) a M 2 = Ψ(L 2 ). Protoºe Ψ(uv) = Ψ(u)+Ψ(v), tvo í M 1 a M 2 rozklad mnoºiny N 2 \ {[0, 0]} uzav ený vzhledem ke s ítání po sloºkách. Bez újmy na obecnosti a [1, 0] M 1. Pokud [0, 1] M 1, pak pro libovolná a, b N ne ob nulová je i [a, b] = a [1, 0] + b [0, 1] M 1, takºe M 2 = a v d sledku toho i L 2 =, coº nep ipou²tíme. Proto [0, 1] M 2. Díky uzav enosti obou p vodních jazyk je [a, 0] M 1 a [0, a] M 2 pro kaºdé a N. Pro spor nyní p edpokládejme, ºe poºadované t neexistuje, tedy ºe existují body x = [x 0, x 1 ] M 1 a y = [y 0, y 1 ] M 2 se v²emi sou adnicemi nenulovými takové, ºe x 1 x 0 +x 1 y 1 y 0 +y 1 neboli ºe x 1 x 0 y 1 y 0. 9
w 1? x 1 y 1 y 0 x 0 w 0 Obrázek 2.2: Principiální jednozna nost uzav eného rozkladu na komutativní jazyky Jelikoº [y 0, y 1 ] M 2, je i x 0 [y 0, y 1 ] = [x 0 y 0, x 0 y 1 ] M 2. Roznásobením p edpokladu ov²em máme x 1 y 0 x 0 y 1, coº spolu s [0, 1] M 2 dává y 0 [x 0, x 1 ] = [x }{{} 0 y 0, x 1 y 0 ] = x 0 [y 0, y 1 ] }{{} M 1 + (x 1 y 0 x 0 y 1 ) }{{} M 2 0 [0, 1] }{{} M 2 M 2. To je kýºený spor. Poznámka 2.6. Poznamenejme, ºe podobný výsledek platí i pro rozklad mnoºiny {0, 1} + na k > 2 uzav ených jazyk. P esn ji tvrdíme, ºe pro libovolný takový rozklad musí Parikh v obraz kaºdého díl ího jazyka L i sestávat z m íºových bod uvnit jistého úhlu s vrcholem v po átku soustavy sou adnic, p ípadn dopln ných o m íºové body na jednom i obou svých ramenech (bez vrcholu samotného). Skute n kdyby existovaly m íºové body o nenulových sou adnicích X = [x 0, x 1 ] a Z = [z 0, z 1 ] náleºející Ψ(L i ) a Y = [y 0, y 1 ] náleºející Ψ(L j ) takové, ºe x 1 x 0 y 1 y 0 z 1 z 0, pak by bod (y 0 z 1 y 1 z 0 ) [x }{{} 0, x 1 ] + (x }{{} 0 y 1 x 1 y 0 ) [z }{{} 0, z 1 ] }{{} 0 Ψ(L 1 ) 0 Ψ(L 1 ) musel leºet zárove v Ψ(L 1 ) a Ψ(L 2 ). = (x 0 z 1 x 1 z 0 ) }{{} 0 [y 0, y 1 ] }{{} Ψ(L 2 ) Tajuplné hodnoty, jimiº se násobí sou adnice vektor X, Y a Z, v zásad ani nemusíme ur ovat. Sta í si uv domit, ºe vektory X, Y, Z jsou lineárn závislé, a protoºe Y leºí mezi X a Z, bude v jejich netriviální lineární kombinaci, která dá nulový výsledek, odli²né znaménko práv u n j. Podle domn nky vy ené v [2] by se p i zachování p edpokladu lineární nezávislosti Parikhových obraz kaºdé dvojice slov m lo dát separovat uzav enými komutativními jazyky i více slov neº dv. Tak tomu skute n je. K d kazu budeme pot ebovat následující ryze mohutnostní lemma. 10
Lemma 2.7. Ozna me U sjednocení n vlastních podprostor prostoru R k. Pak existuje bod X N k + leºící v Rk \ U. D kaz: Pro kaºdé i N + uvaºme m íºový bod X i o sou adnicích X i = [i 0, i 1,..., i k 1 ]. Jelikoº kaºdých k takových bod je lineárn nezávislých (zapí²eme-li je do ádk matice typu k k, získáme tzv. Vandermondovu matici, která má nenulový determinant), m ºe kaºdý z n vlastních podprostor prostoru R k obsahovat nejvý²e k 1 z nich. Tím pádem pro nejvý²e n(k 1) index i leºí bod X i ve sjednocení U, takºe jist existuje index j takový, ºe X j / U. A nyní uº samotná v ta. V ta 2.8. A n N a w 1,..., w n jsou slova nad abecedou A = {a 1,..., a k } taková, ºe pro kaºdou dvojici index i, j {1,..., n}, i j, jsou Parikhovy obrazy slov w i a w j lineárn nezávislé. Pak existuje uzav ený rozklad {L i } n i=1 mnoºiny A + separující slova w 1,..., w n takový, ºe jazyky L 1,..., L n jsou komutativní. D kaz: Nejd íve ukáºeme, ºe kaºdé z k písmen lze zakódovat funkcí c: A {0, 1} + do posloupnosti nul a jedni ek tak, aby ºádná dv ze slov c(w 1 ),..., c(w n ) nem la lineárn závislé Parikhovy obrazy (v N 2 ). Tím tvrzení p evedeme na p ípad k = 2, kde jeho d kaz snadno dokon íme. Kaºdé z písmen a i, i = 1,..., k, zakódujeme posloupností délky x i tvo enou jednou jedni kou následovanou x i 1 nulami, kde x i jsou zatím neur ené konstanty. Pro slovo w A + s Parikhovým obrazem Ψ(w) = ( w a1,..., w ak ) je tak Parikh v obraz slova c(w) roven ( k ) ( k k ) Ψ (c(w)) = w ai (x i 1), w ai = w ai (x i 1), w. i=1 i=1 i=1 Zd razn me, ºe zde uvaºujeme dv r zná Parikhova zobrazení: Ψ: w A + ( w a1,..., w ak ) N k a Ψ : c(w) {0, 1} + ( c(w) 0, c(w) 1 ) N 2. Slova u, v {0, 1} + mají lineárn nezávislé Parikhovy obrazy práv tehdy, kdyº u 1 u v 1 v. Konstanty x 1,..., x k N proto pot ebujeme zvolit tak, aby pro kaºdou dvojici index j, j {1,..., n}, j j, platilo c(w j ) 1 c(w j ) c(w j ) 1 c(w j ) neboli w j k i=1 w j ai x i 11 w j k i=1 w j a i x i.
Zvolme j, j pevn a zkoumejme, kdy se naopak ob strany rovnají. Roznásobením získáme k x i ( w j ai w j w j ai w j ) = 0. i=1 Závorka, kterou se násobí x i, je nulová práv tehdy, kdyº je w j ai w j = w j ai w j. Jelikoº slova w j, w j nemají z p edpokladu lineárn závislé Parikhovy obrazy, je hodnota alespo jedné závorky v p vodní rovnici nenulová a tato rovnice tak popisuje nejvý²e (k 1)-dimenzionální podprostor v R k. Obdobnou úvahou pro v²ech 1 2 n(n 1) dvojic r zných index j, j {1,..., n} dostaneme jiné nevhodné podprostory v R k. Díky Lemmatu 2.7 t chto kone n mnoho vlastních podprostor nepokrývá v²echny m íºové body N k +, takºe existuje vektor (x 1,..., x k ) s kladnými celými sou adnicemi, který ur uje kódování takové, ºe Parikhovy obrazy kód kaºdých dvou zadaných slov w 1,..., w n jsou lineárn nezávislé. Dokon ení d kazu je nyní nasnad. Pro v t²í p ehlednost ozna me c(w i ) = v i {0, 1} +. Bez újmy na obecnosti p edpokládejme, ºe v 1 0 v 1 1 < v 2 0 v 2 1 < < v n 0 v n 1 (jmenovatele jsou z ejm nenulové) a nalezn me konstanty t 1,..., t n 1 takové, ºe Pro i = 1,..., n nyní poloºme L i = t 0 = 0 a t n =. v 1 0 v 1 1 < t 1 < v 2 0 v 2 1 < t 2 < < t n 1 < v n 0 v n 1. { v {0, 1} + ti 1 v 0 v 1 < t i }, kde klademe v 0 v 0 = t n 1 v 1 v n v 3 v 0 = t 2 v 1 v 2 v 0 = t 1 v 1 v 1 v 1 Obrázek 2.3: Rozklad separující kódová slova 12
Podobn jako v d kazu Tvrzení 2.4 ukáºeme, ºe {(Ψ ) 1 (L i )} n i=1 je uzav ený rozklad {0, 1} + na komutativní jazyky separující slova v 1,..., v n. Vzory t chto jazyk v kódování c pak tvo í kýºený uzav ený rozklad A + separující slova w 1,..., w n. Jak jsme vid li v P íkladech 1 (iii) a (iv), ne v²echny uzav ené rozklady sestávají z komutativních jazyk. A koliv je zkoumání rozklad v obecném p ípad pochopiteln obtíºn j²í, vý²e p edstavenou geometrickou ideu se nám poda í za cenu jistých komplikací roz²í it i pro n. 2.3 Geometrický p ístup V této ásti podáme geometrický d kaz V ty 2.3. Op t za neme p ípadem, kdy máme separovat jen dv slova (d kaz je p evzatý z lánku [1]). Tvrzení 2.9. P edpokládejme, ºe neprázdná slova u, v nad abecedou A nekomutují. Pak existuje uzav ený rozklad mnoºiny A + separující u a v. D kaz: Postupujme indukcí podle sou tu u + v. Pro u + v = 2 musí být u = a a v = b pro n jaká r zná písmena a, b A. Pak sta í (stejn jako v P íkladech 1 (i)) za rozklad vzít {a +, A + \ a + }. Nyní a u + v > 2. Pokud existuje a A takové, ºe u a v a, nalezneme u v uzav ený rozklad stejn jako v Tvrzení 2.4. Dále proto p edpokládejme, ºe pro v²echna a A je u a u = v a v. Uvaºme a A takové, ºe u a = v a = t > 0. Jist t < 1, protoºe jinak by byla u v slova u a v mocninou téhoº písmene a a komutovala by. Poloºme L < = { w A + w a < t w }, L = = { w A + w a = t w }, L > = { w A + w a > t w }. Trojice {L <, L =, L > } tvo í uzav ený rozklad A + a u, v L =. Tvrdíme, ºe najdeme-li te uzav ený rozklad {M 1, M 2 } jazyka L = separující slova u a v, budeme hotovi, nebo za uzav ený rozklad A + bude sta it vzít dvojici {L < M 1, M 2 L > }. še dvojice {L < M 1, M 2 L > } tvo í rozklad separující u a v je z ejmé, uv domme si tedy je²t, ºe oba jazyky jsou uzav ené. Pro x, y M 1 je z uzav enosti M 1 i xy M 1. Pro x L < a y L < M 1 je xy a = x a + y a < t x + t y = t xy, 13
takºe xy L 1 a obdobn yx L 1. Uzav enost jazyka M 2 L > se ukáºe zcela analogicky. Zbývá najít onen rozklad jazyka L =. Ozna me t = k m, kde k, m N + jsou nesoud lná. Jelikoº t < 1, je m 2. V²imn me si, ºe u = 1 k m u a a v = 1 m v k a jsou násobky m. Uvaºme proto novou abecedu B v²ech uspo ádaných m-tic písmen abecedy A a p edpokládejme, ºe slova u, v jsou v této nové abeced vyjád ena po ad slovy r, s B +. Jelikoº u a v nekomutují, nekomutují ani r a s. Zárove r + s = k m ( u + v ) < u + v, takºe z induk ního p edpokladu existuje uzav ený rozklad {N 1, N 2 } mnoºiny B +. Nahlédneme-li te na jazyky N 1, N 2 znovu jako na jazyky nad abecedou A, sta í poloºit M 1 = N 1 L = a M 2 = N 2 L = a jsme hotovi. D kaz p edchozího tvrzení projde beze zm ny, budeme-li namísto mnoºiny A + = { w A + ( i = 1,..., k): 0 w w ai 1 w } obecn ji rozkládat mnoºinu L = { w A + ( i = 1,..., k): ti w w ai u i w }, kde t i, u i, i = 1,..., k, jsou konstanty spl ující pro kaºdé i = 1,..., k vztahy 0 t i u i 1. Libovolnou neostrou nerovnost v popisu jazyka L navíc m ºeme nahradit ostrou nerovností. D kaz p edchozího tvrzení zárove skýtal algoritmus, jak poºadovaný uzav ený rozklad nalézt. P edvedeme ho na p íkladu. P íklad. Uvaºme A = {a, b}, u = aabb, v = abba. Pak u a = 1 = v a a stejn u 2 v tak pro b, takºe si nevysta íme s Tvrzením 2.4. V souladu s d kazem p ede²lého tvrzení poloºme L < = {w A + w a < 12 } w, L = = {w A + w a = 12 } w, L > = {w A + w a > 12 } w. k Pro a A jsme jiº spo etli = 1. Uvaºme tedy abecedu m 2 B = {p = aa, q = ab, r = ba, s = bb} dvojic písmen z A. Pak u = ps a v = qr, ímº jsme sníºili hodnotu u + v. Te navíc m ºeme pouºít Tvrzení 2.4 a nalézt uzav ený rozklad {N 1, N 2 } jazyka B + v podob N 1 = { w B + w q = 0 } a N 2 = { w B + w q > 0 }. 14
Proniknutím s L = a následným sjednocením s jazykem L < tak získáme jazyky M 1 = L < (L = N 1 ) a M 2 = A + \ M 1 Jazyk M 1 pro p edstavu sestává ze slov w, pro která platí w a < w b, a ze slov, která sou asn spl ují w a = w b a neobsahují podslovo ab za ínající na lichém indexu. Jazyk M 2 je pak tvo en v²emi ostatními slovy. Nyní uº jsme p ipraveni dokázat V tu 2.3 v její plné síle. D kaz probíhá velmi analogicky k d kazu Tvrzení 2.9. D kaz: (V ta 2.3, geometrický zp sob) Op t postupujme indukcí, tentokrát dvojitou: jednak podle po tu n slov, která máme separovat, dále podle sou tu w 1 + + w n jejich délek. Pro n = 2 sta í pouºít p edchozí tvrzení. Pro w 1 + + w n = n se musí kaºdé slovo w i, i = 1,..., n rovnat jinému písmenu a i abecedy A a za uzav ený rozklad poslouºí { a + 1,..., a + n 1, A + \ Dále a n > 2 a w 1 + + w n > n. Pokud existuje a A a dvojice index i, j {1,..., n} taková, ºe w i a w i = t < w j a w j, uvaºme jazyky L = { w A + w a t w } a L > = { w A + w a > t w }, které tvo í uzav ený rozklad A +. Kaºdý z nich obsahuje ost e mén neº n slov, n 1 takºe z induk ního p edpokladu existují uzav ené rozklady L potaºmo L >, jejichº slou ením získáme poºadovaný uzav ený rozklad A +. Pokud pro kaºdé pevné a A platí, ºe pro v²echna i, j {1,..., n} je w i a w i = w j a, uvaºme takové a A, pro které je spole ná hodnota v²ech zlomk w i a w j w i = t (0, 1). Op t poloºme i=1 a + i } L < = { w A + w a < t w }, L = = { w A + w a = t w }, L > = { w A + w a > t w }. Trojice {L <, L =, L > } tvo í uzav ený rozklad A +. Najdeme-li uzav ený rozklad {M 1,..., M n } jazyka L = separující slova w 1,..., w n, budeme hotovi, nebo za uzav ený rozklad A + budeme moci vzít n-tici {L < M 1, M 2,..., M n 1, M n L > }.. 15
Op t ozna me t = k m, kde k, m N + jsou nesoud lná a m 2. Pro kaºdé i = 1,..., n je w i = 1 k m w i a násobek m, takºe uváºíme-li abecedu B v²ech uspo ádaných m-tic písmen abecedy A, lze pro kaºdé i = 1,..., n slovo w i vyjád it v abeced B n jakým slovem x i. Jelikoº pro i j slova w i a w j nekomutují, nekomutují ani slova x i a x j. Tím pádem z n x i = k m i=1 n w i < i=1 n w i a z induk ního p edpokladu vyplývá, ºe existuje uzav ený rozklad {N i } n i=1 mnoºiny B +. Za uzav ený rozklad {M i } n i=1 mnoºiny L= pak pro kaºdé i = 1,..., n vezmeme M i = N i L = a jsme s d kazem u konce. Klí ovou roli v celém dosavadním pr b hu hrálo zobrazení f : A + [0, 1], které slovu w p i adilo hodnotu w a, kde a bylo n jaké pevné písmeno abecedy w A. Toto zobrazení respektuje konkatenaci v následujícím smyslu: Platí-li pro slova u, v A + vztah f(u), f(v) t pro n jakou reálnou konstantu t, pak je i f(uv) t, p i emº rovnost ve t etí nerovnosti nastane jen tehdy, kdyº nastanou sou asn rovnosti v té první a druhé. Byla to práv tato vlastnost, díky níº jsme byli schopni snadno konstruovat uzav ené rozklady. Takto popsané zobrazení f v²ak není dostate n jemné n kterým nekomutujícím slov m p i azuje stejnou hodnotu (p i azuje totiº stejnou hodnotu práv t m slov m, která mají týº Parikh v obraz). Separace práv takových slov pak zp sobovala komplikace, které jsme v d kazu V ty 2.3 museli obcházet pom rn nep íjemným induktivním argumentem. V následujícím zásadní m rou vyuºijeme toho, ºe existuje funkce, která respektuje konkatenaci, a p itom rozli²í libovolná dv nekomutující slova. i=1 2.4 Binární p ístup V této ásti podáme jiný d kaz V ty 2.3. Nejd íve si uv domme, ºe se m ºeme bez újmy na obecnosti omezit na slova nad dvouprvkovou abecedou s písmeny 0 a 1, kterou budeme nadále zna it B = {0, 1}. Pro k > 2 a A = {a 1,..., a k } totiº sta í uvaºovat zobrazení f : A B +, které pro kaºdé i = 1,..., k p i adí písmenu a i slovo b i délky k obsahující jedni ku práv na i-té pozici. Homomorsmus ϕ, který je tímto zobrazením f indukován, je pak prostý a nekomutujícím slov m u, v A + p i azuje op t nekomutující slova ϕ(u), ϕ(v) B +. Pokud tedy najdeme uzav ený rozklad B + separující ϕ(w 1 ),..., ϕ(w k ), získáme tím i uzav ený rozklad A + separující w 1,..., w k. 16
Kaºdé slovo nad abecedou B lze vnímat jako íslo zapsané ve dvojkové soustav, jehoº zápis neza íná nutn jedni kou. Precizn ji: Denice. A n N + a w = x 1 x 2... x n B +. Binární hodnotou slova w rozumíme íslo b(w) = n x i 2 n i. Takto denovaná binární hodnota má z ejm následující vlastnosti. Pozorování 2.10. A u, v B +. Pak i=1 (i) b(uv) = b(u 00 }{{... 0} ) + b(v) = b(u) 2 v + b(v), v (ii) u = v práv tehdy, kdyº sou asn u = v a b(u) = b(v). Co je v²ak d leºit j²í, lze pomocí ní charakterizovat, kdy dv slova komutují. Tvrzení 2.11. A u, v B +. Pak u a v komutují práv tehdy, kdyº D kaz: b(u) 2 u 1 = b(v) 2 v 1. Slova u a v komutují práv tehdy, kdyº uv = vu. Jelikoº uv = vu, nastane toto díky Pozorování 2.10(i) a (ii) práv tehdy, kdyº b(u) 2 v + b(v) = b(uv) = b(vu) = b(v) 2 u + b(u), neboli kdyº b(u) = b(v). 2 u 1 2 v 1 Poznámka 2.12. Hodnotu b(u) lze také chápat jako íslo, jehoº zápis ve dvojkové soustav je periodický tvaru 0,uuu... (nap íklad pro u = 110 2 u 1 je b(u) 2 u 1 = 4 = (0,110) 7 2). Z tohoto náhledu je p edchozí tvrzení rovn º patrné pro slova u, v totiº nastane 0,u = 0,v práv tehdy, kdyº jsou u a v mocninou téhoº slova, coº je díky Lemmatu 1.2 ekvivalentní tomu, ºe komutují. Jsme p ipraveni seznámit se s jiným d kazem V ty 2.3 v p ípad n slov nad abecedou B, který je uveden v [2]. D kaz: (V ta 2.3, binární zp sob) Jelikoº z p edpokladu slova w i, w j nekomutují pro ºádnou dvojici index i, j {1,..., n}, i j, jsou hodnoty zlomk b(w i) 2 w i 1 pro i = 1,..., n navzájem r zné. Bez újmy na obecnosti p edpokládejme b(w 1 ) 2 w 1 1 < b(w 2) 2 w 2 1 < < b(w n) 2 wn 1 a nalezn me konstanty t 1,..., t n 1 (0, 1) takové, ºe b(w 1 ) 2 w 1 1 < t 1 < b(w 2) 2 w 2 1 < t 2 < < t n 1 < b(w n) 2 wn 1. 17
Pro kaºdé i = 1,..., n poloºme L i = kde klademe t 0 = 0 a t n = 2. { w B + t i 1 b(w) } 2 w 1 < t i, Systém {L i } n i=1 tvo í rozklad B+ separující slova w 1,..., w n. Zbývá ukázat, ºe pouºité jazyky jsou uzav ené. P edpokládejme proto, ºe pro slova u, v B + platí Pak je ov²em t i 1 b(u) 2 u 1 b(v) 2 v 1 < t i. b(uv) = b(u) 2 v + b(v) t i 1 (2 u 1) 2 v + t i 1 (2 v 1) = t i 1 (2 uv 1) a zcela analogicky odvodíme i b(uv) = b(u) 2 v + b(v) < t i (2 u 1) 2 v + t i (2 v 1) = t i (2 uv 1), takºe t i 1 b(uv) 2 uv 1 < t i rovn º. Jsme hotovi. Na záv r op t na p íkladu oz ejmíme, jak lze poºadovaný rozklad nalézt v praxi. Postup demonstrujeme na stejné dvojici slov jako v p íkladu u první metody. Ukazuje se, ºe nalezený rozklad je jiný. P íklad. Uvaºme B = {0, 1}, u = 1001, v = 1100. Pak b(u) = 8 + 1 = 9, b(v) = 8 + 4 = 12 a u = v = 4, takºe b(u) 2 u 1 = 3 5 < 4 5 = b(v) 2 v 1. M ºeme volit nap íklad t 1 = 2. Odpovídající jazyky pak vypadají následovn : 3 { L 1 = w B + b(w) 2 w 1 < 2 } = {0; 00, 01; 000, 001, 010, 011, 100; 0000,... }, 3 { L 2 = w B + b(w) 2 w 1 2 } = {1; 10, 11; 101, 110, 111; 1010, 1011,... }. 3 18
Záv r Ukázali jsme, ºe podmínka na lineární nezávislost Parikhových obraz libovolných dvou slov, která je v p ípad separace n slov pomocí komutativních jazyk z ejm nutná, je i posta ující, ímº jsme potvrdili domn nku z [2]. P edvedli jsme také dva r zné zp soby jak zkonstruovat uzav ený rozklad separující daná dv nekomutující slova jeden inspirovaný p ístupem v lánku [1], druhý p evzatý z lánku [2]. Pokud bychom cht li vzniklé jazyky kvalitativn porovnat, museli bychom se hloub ji v novat teorii formálních gramatik a automat, coº je mimo rozsah této práce. A bez pot ebných denic, nazna me alespo výsledek. Ukazuje se, ºe konstrukce popsaná jako druhá vºdy vytvá í regulární jazyky, coº jsou jazyky, které jsou ve smyslu Chomského hierarchie t mi nejspeciáln j²ími jazyky v bec (mimo jiné jsou to jazyky rozpoznatelné kone ným automatem). Jazyky vzniklé prvním p ístupem oproti tomu nejenºe obecn nemusejí být regulární, ale dokonce nemusejí být ani bezkontextové (a koliv kontextové uº jsou vºdy). D kaz t chto tvrzení lze nalézt v [2]. Pot ebné pojmy jsou objasn ny v [4]. 19
Seznam pouºité literatury [1] Brzozowski, J. A., Grant, E., Shallit, J., Closures in Formal Languages and Kuratowski's Theorem, International Journal of Foundations of Computer Science, 22(2): 301321 (2011) [2] Holub,., Kortelainen, J., On Partitions Separating Words, International Journal of Algebra and Computation, 21(8): 13051316 (2011) [3] Lothaire, M., Combinatorics on words, 2. vydání, Cambridge University Press, 1997, ISBN 0-521-59924-5 [4] Rozenberg, G., Salomaa, A., Handbook of Formal Languages: Volume I. Word, Language, Grammar, 1. vydání, Springer, 1997, ISBN 3-540-60420-4 20