Zadanie 1
Transkrypt
Zadanie 1
WŁASNOŚCI JĘZYKÓW REGULARNYCH Twierdzenie o własnościach języków regularnych. Jeżeli L1 , L 2 są językami regularnymi, to języki L1 * ' L1 L2 , L1 , L1 L1 L2 , L2 , L1 \ L2 są również językami regularnymi. Lemat o pompowaniu . Jeżeli L jest językiem regularnym, to istnieje liczba naturalna N, taka, że dla dowolnego słowa A L o długości A N istnieją podsłowa B, C, D takie, że a) A BCD b) BC N c) C 1 d) BC D L dla każdego i N 0 Jeżeli język regularny jest akceptowany przez pewien automat deterministyczny, to liczba N równa się liczbie stanów tego automatu. i PRZYKŁADY Przykład 6.1. Udowodnij, że jeżeli L1 jest językiem nieregularnym oraz L2 i L1 L2 są językami regularnymi to L1 L2 jest językiem nieregularnym. Rozwiązanie. Przypuśćmy, że L1 L2 jest regularny. Wówczas L1 ((L1 L2 ) \ L2 ) (L1 L2 ) i na mocy Tw. o własnościach języków regularnych L1 byłby językiem regularnym, co jest sprzeczne z założeniem. Przykład 6.2. Wskaż liczbę naturalną N, dla której język L { a 3n b m : n, m N } spełnia tezę Lematu o pompowaniu. Rozwiązanie Zauważmy, że L L(( a 3 )* b * ) . Skoro jest to język regularny, to istnieje deterministyczny automat skończony akceptujący język L. a b b a a b a b a,b Ponieważ istnieje automat deterministyczny posiadający 5 stanów, więc przyjmujemy N=5. (N może być mniejsze niż 5 – po minimalizacji automatu, ale teza LOP zachodzi tym bardziej dla N=5) Niech A będzie dowolnym słowem z języka L o długości co najmniej równej 5. Z definicji języka L wynika, że A a 3n b m , gdzie n, m N 0 i 3n m 5 . , C a 3 i wybieramy D {a , b} * takie, że BCD=A. Jeśli n 0 to Jeśli n 1 to kładziemy B , C b 3 i wybieramy D {b} * takie, że BCD=A. Zauważmy, że w obu przypadkach kładziemy B spełnione są warunki a-c lematu o pompowaniu oraz dla dowolnego i języka L, ponieważ i BC D a3 3( i 1) 3n 3 m b1 ( i 1) m 1 a b b a 3( n i 1) m b gdy n 1 gdy n 0 N 0 słowo BC i D należy do Przykład 6.3. 3n m Korzystając z lematu o pompowaniu pokaż, że język L {a b : n m} jest nieregularny. Rozwiązanie. Przypuśćmy, że język L jest regularny. Istnieje zatem liczba naturalna N, dla której spełnione są warunki tezy lematu o pompowaniu. Połóżmy A a3N b N N . Niech B, C, D będą podsłowami spełniającymi warunki a-c Oczywiście A L oraz A 4 N 1 lematu o pompowaniu, czyli a) A BCD b) BC N c) C 1 1. BC D A = aaa aaa aaa aaa… aaa b b b … b b N 3N Z postaci słowa A oraz z warunków a) i b) wynika, że C składa się wyłącznie z symboli a , których jest tyle ile wynosi długość słowa C. Z warunków b) i c) wnioskujemy, że C {1,2,, N} . Zatem BC 4 D BC BCC 3 D C4 a 3N 3 C bN 1 a 3( N |C|) bN 1 D BC D = aaa aa aa aa aa a aaa aaa… aaa b b b … b b 4 N 3|C| Połóżmy n N C im N 1. Z warunku (c) wynika, że n N C N 1 m. Zatem słowo BC 4 D a 3nb m nie należy do języka L, co jest sprzeczne z warunkiem (d) Lematu o pompowaniu. Tym samym pokazaliśmy, że język L nie jest regularny. Przykład 6.4. Uzasadnij, że język L { A {a , b} :| A(a)| 3n | A(b)| m n m } jest nieregularny. Rozwiązanie Zauważ, że L(( a 3 )* b* ) \ L {a 3n b m : n m} . Gdyby język L był regularny, to z Lematu o pompowaniu wynikałoby, że również L(( a 3 )* b* ) \ L jest językiem regularnym, co jest sprzeczne z Przykładem 6.3. ZADANIA Zadanie 6.1 Uzasadnij, że każdy język skończony jest regularny Zadanie 6.2 Niech L1 , L 2 będą językami regularnymi nad alfabetem . Pokaż, że następujące języki są regularne: L1 \ L2 a) L1 L2 b) Zadanie 6.3 Niech L1 , L 2 będą językami formalnymi nad alfabetem spełniającymi warunek L1 L2 Określ, które zdanie jest prawdziwe: a) Jeżeli L1 jest regularny, to L 2 jest również regularny b) Jeżeli L 2 jest regularny, to L1 jest również regularny Zadanie 6.4 Niech L będzie dowolnym językiem skończonym nad alfabetem . Pokaż, że następujące języki są regularne: * L1 { A : A 4 A L} a) b) L2 {A * : A 4 A L} * L1 { A : A 4 A L} c) Zadanie 6.5 Udowodnij, że L jest językiem nieregularnym wtedy i tylko wtedy, kiedy L’ jest językiem nieregularnym. Zadanie 6.6 Udowodnij, że jeżeli L1 jest językiem nieregularnym oraz L2 i L1 L2 są językami regularnymi to L1 L2 jest językiem nieregularnym. Zadanie 6.7 Pokaż, że jeżeli L1 jest językiem nieregularnym a L 2 językiem skończonym, to nieregularnym jest język: L1 L2 a) L1 \ L2 b) Zadanie 6.8 Znajdź N naturalne, dla którego poniższe języki spełniają warunki tezy lematu o pompowaniu: L { A {a, b} * : 3 A } a) L { a 2n b {a, b} * : n N } b) Zadanie 6.9 Niech A BCD przy czym A n oraz C k . Znajdź długość słowa: a) BC 2 D BC i D (i N) b) Zadanie 6.10 Korzystając z lematu o pompowaniu pokaż, że następujące języki nie są regularne: L {a n b n 3 : n N} a) b) L {ba 3n b n : n N} c) L {a n b m : m n} L {a n b m a k : m 3n k} d) Zadanie 6.11 Określ, czy są regularne następujące języki: L {a 5n b n : n N} a) b) L {a 5n b m : m, n N} c) L {a 5n b m : m n } d) L { A {a, b} * : A(a) 5 A(b) } Zadanie 6.12 Udowodnij, że nie są regularne następujące języki określone nad alfabetem a) L {a n : n jest liczbą pierwszą} b) L {a n! : n N} c) L {a n : n N} {a} : 2 n d) L {a2 : n N} Zadanie 6.13 Określ, który z następujących języków określonych nad alfabetem L {a n : n nie jest liczbą pierwszą} a) {a} nie jest regularny: L {a n : n nie jest liczbą parzystą} b) Zadanie 6.14 Zbadaj regularność języków określonych nad alfabetem , w zależności od ilości symboli tego alfabetu: a) L PALINDROMY * L { AA : A } b) Zadanie 6.15 Udowodnij, że nie są regularne następujące języki określone nad alfabetem {0,1} : a) L=DODAWANIE b) L=ODEJMOWANIE MODULO c) L=MNOŻENIE d) L=POTĘGOWANIE Zadanie 6.16 Pokaż, że dla dowolnej liczby naturalnej n, jeżeli L1 , L2 , , Ln są językami regularnymi, to a) b) n L i jest językiem regularnym i 1 n L i jest językiem regularnym i 1 Zadanie 6.17 Określ, które zdanie jest prawdziwe: a) Jeżeli Li (i N ) są językami regularnymi, to L i jest językiem regularnym i 1 b) Jeżeli Li (i N ) są językami regularnymi, to L i jest językiem regularnym i 1 Zadanie 6.18 Wskaż języki nieregularne L1 , L 2 nad alfabetem {a} , takie, że L1 L2 jest językiem regularnym a) L1 L2 jest językiem regularnym b) L1 \ L2 jest językiem regularnym c) Zadanie 6.19 {a} , przy czym zakładamy, że L1 jest językiem Niech L1 , L 2 będą językami nad alfabetem regularnym a L 2 - nieregularnym. Określ, które zdanie jest prawdziwe: L1 L2 jest językiem regularnym a) L1 L2 jest językiem nieregularnym b) L1 L2 jest językiem regularnym c) L1 L2 jest językiem nieregularnym d) L1 L2 jest językiem regularnym e) L1 L2 jest językiem nieregularnym. f)