Do tej części zadań może podejść Czytelnik bez żadnej znajomości teorii automatów.
-
Słowa pierwotne.Słowo w∈Σ∗ nazywamy pierwotnym (ang. primitive),jeśli nie da się go przedstawić w=vn, inaczej niż dla n=1 i v=w.
- Dowieść, że dla każdego słowa niepustego w, istnieje dokładnie jedno słowo pierwotne v, takie że w=vn, dla pewnego n≥1.
Liczbę n nazywamy wykładnikiem słowa w.
-
O słowach wv i vw mówimy, że są w relacji koniugacji. Dowieść, że jest to relacja równoważności.
Dowieść, że dwa słowa będące w relacji koniugacji mają ten sam wykładnik. Jaka jest moc klasy abstrakcji relacji koniugacji dla słowa o długości m i wykładniku n?
- Język nawiasowy. Wykazać, że zbiór poprawnie uformowanych ciągów nawiasów może być zdefiniowany na dwa równoważne sposoby:
-
Jako najmniejszy zbiór L zawierający ciąg pusty oraz taki, że jeśli w,v∈L, to również (w),wv∈L.
-
Zbiór słów nad alfabetem {(,)}, w których ilość “)” jest taka sama jak ilość “(”, a w każdym prefiksie ilość “)” jest niewiększa niż ilość “(” .
- Zbiory semi–liniowe. Zbiór liczb naturalnych postaci {a+bn:n∈N}, dla ustalonych a,b∈N nazywamy liniowym. Zbiór bedący sumą skończonej liczby zbiorów liniowych nazywamy semiliniowym. (Gdy sumowana rodzina jest pusta, otrzymujemy zbiór pusty.)
- Dowieść, że każdy zbiór postaci {a+b1n1+…+bknk:n1,…,nk∈N}, dla ustalonych k i a,b1,…,bk∈N, jest semi–liniowy.
Wskazówka. Wykorzystać podziały zbioru liczb naturalnych na klasy abstrakcji relacji przystawania modulo m, dla odpowiednio dobranych liczb m.
- Dowieść, że zbiór liczb naturalnych A jest semi–liniowy wtedy i tylko wtedy, gdy jest prawie periodyczny tzn. gdy istnieją
c∈N i d∈N−{0} takie, że dla każdego x>c, x∈A⇔x+d∈A.
- W grafie zorientowanym ustalamy dwa wierzchołki. Interesuje nas zbiór długości wszystkich możliwych ścieżek pomiędzy tymi wierzchołkami. Dowieść, że jest to zbiór semi–liniowy.
- Dowieść, że rodzina zbiorów semi–liniowych jest zamknięta na skończone sumy, przecięcia oraz na uzupełnienie względem N.
- Graf gry (J. P. Jouannaud). Rozważamy następującą grę pomiędzy Barmanem i Klientem. Przed Barmanem na obrotowym talerzu stoją cztery szklanki tworząc wierzchołki kwadratu. Szklanka może być ustawiona normalnie lub dnem do góry, jednak Barman ma przepaskę na oczach i rękawiczki na rękach, tak że nie może tego zobaczyć ani wyczuć. Ruch Barmana polega na odwróceniu jednej lub dwóch dowolnie wybranych szklanek. Ruch Klienta polega na obróceniu talerza (o wielokrotność ćwierć-obrotu). Barman wygrywa, jeśli w jakimś momencie gry wszystkie szklanki ustawione są w tej samej pozycji (zostanie o tym lojalnie poinformowany).
Czy Barman noże wygrać startując z nieznanej konfiguracji początkowej, a jeśli tak, to w jakiej liczbie ruchów?
Czy graliby Państwo o pieniądze z Barmanem ? A gdyby zamiast kwadratu były 3 szklanki ustawione w trójkąt lub 5 w pięciokąt ?
- Kody. Zbiór C⊆Σ+ nazywamy kodem, jeśli każde słowo w∈Σ∗ dopuszcza co najwyżej jedną faktoryzację względem C (tzn., da się “odkodować”).
Niech Σ={a,b}. Dowieść, że zbiór {aa,baa,ba} jest kodem, a zbiór {a,ab,ba} nie jest.
Jeśli skończony zbiór C nie jest kodem, oszacować z góry długość najkrótszego słowa, które o tym świadczy (tzn. dopuszcza dwie różne faktoryzacje).
- Oznaczmy: x⪯y jeśli słowo x jest podciągiem y, np. ab⪯aabb. Jest to częściowy porządek.
Udowodnić następujący fakt znany jako Lemat Higmana.
Jeśli |Σ|<∞ to dla każdego X⊆Σ∗ zbiór jego słów minimalnych w sensie ⪯ jest skończny.
Wskazówka. Przypuśćmy, że teza jest fałszywa. Wtedy istnieje w Σ∗ nieskończony ciąg słów x1,x2,.. taki że i<j → not (xi⪯xj) (ale może być xj⪯xi). Wybierzmy taki ”minimalny” ciąg w sensie długości, tzn. |x1| minimalne, jeśli x1 ustalone to |x2| minimalne itd. Wybierzmy podciąg nieskończony xi1,xi2.. wszystkich słów z tego ciągu zaczynających się na pewną taką samą literę a. Usuńmy tę literę z początku każdego z tych słów otrzymując ciąg x′i1,x′i2... Wtedy ciąg x1,x2,…,xi1−1,x′i1,x′i2,x′i3… spełnia te same warunki co początkowy ciąg i jest ”mniejszy”, sprzeczność.
- Niech sup(L) oznacza zbiór nadciągów słów z języka L. Udowodnić, że dla dowolnego L nad skończonym alfabetem sup(L) jest językiem regularnym.
Wskazówka. Skorzystaj z lematu Higmana (poprzednie zadanie)..
- Niech subs(L) oznacza zbiór podciągów słów z języka L. Udowodnić, że dla dowolnego L nad skończonym alfabetem subs(L) jest językiem regularnym.
Wskazówka. Skorzystać z poprzedniego zadania.