Задачи по разделам курса
Лексический анализ
Регулярные множества и выражения
3.1.1. Показать, что множества, соответствующие двум данным регулярным выражениям, совпадают,
1) (a*b)c и a*(bc); 2) a*b и b + aa*b; 3) b(b + ab)*a и b(b*ab)*b*a; 4) b(ab + b)* и bb*a(bb*a)*:
3.1.2. Заменить каждое из следующих выражений эквивалентным, в котором не используются знак "+":
1) (a + b)*; 2) (a + bb + ba)*; 3) (a + (bb + ab)*)*:
3.1.3. Найти регулярные выражения, обозначающие языки, все слова которых - элементы множества {0, 1}*:
![1)\ оканчивающиеся\ на\ 011, 101, 110;
\\
2)\ начинающиеся\ с\ 110, 101\ или\ 011;
\\
3)\ у\ которых\ каждый\ третий\ символ\ есть\ 0\ или\ каждым
\\
второй - 1;
\\
4)\ не\ содержащие\ ни\ одной\ из\ подстрок\ 011\ и\ 101;
\\
5)\ содержащие\ каждую\ из\ подстрок\ 011\ и\ 101;
\\
6)\ начинающиеся\ с\ 011\ и\ оканчивающиеся\ на\ 110\ или\ 101;
\\
7)\ начинающиеся\ с\ 011\ или\ 110\ и\ оканчивающиеся\ на\ 101;
\\
8)\ начинающиеся\ с\ 011\ и\ содержащие\ вхождения\ подстроки
\\
110;
\\
9) \{ 01^{n}|n > 1\} ;
\\
10) \{ 01^{n}0|n > 0\} ;
\\
11) \{ 0^{m}1^{n}|n, m > 1\} ;
\\
12) \{ \alpha \in \{ 0, 1\} * : |\alpha |=3 - целое\ неотрицательное\ число\} ;
\\
13) \{ \alpha a|\alpha \in \{ 0, 1\} ^{+}, a \in \{ 0, 1\} , a\ входит\ в\ \alpha \} ;
\\
14) \{ (010)^{n}|n > 0\} ;
\\
15) \{ 0^{m}|m > 2\}\ или\ \{ 1^{n}|n > 0\} ;
\\
16) \{ (01)^{m}(10)^{n}|m \ge 0, n \ge 0\} ;
\\
17)\ содержащее\ четное\ число\ символов\ 0\ и\ нечетное\ число
\\
символов\ 1;
\\
18)\ содержащее\ четное\ число\ символов\ 0\ или\ четное\ число
\\
символов\ 1.](/sites/default/files/tex_cache/a1d74e5b0fee93f293a5620c165744ca.png)
3.1.4. Является ли язык, состоящий из всех цепочек из 0 и 1, не содержащих подцепочки 010, регулярным?
3.1.5. Является ли язык, состоящий из всех цепочек из 0 и 1, содержащих чeтное число 0 и нечeтное - 1, регулярным?
3.1.6. Является ли язык, состоящий из всех цепочек чeтной длины в алфавите {fa, b, c}, регулярным?
3.1.7. Регулярен ли
![а)\ язык\ формул\ вида\ A*(B),\ где\ A, B \in \{ a, b\} ^{+}?
\\
б)\ язык\ формул\ вида\ (A_{1}.A_{2}),\ где\ для\ i = 1, \in A_{i}\ есть\ либо
\\
слово\ в\ алфавите\ \{ a, b\} ,\ либо,\ в\ свою\ очередь,\ формула?
\\
в)\ язык\ формул\ вида\ (A + B), где A, B \in \{ a, b\} ^{+}?
\\
г)\ язык\ формул\ вида (A_{1})A_{2}, где для i = 1, \in A_{i}\ есть\ либо
\\
слово\ в\ алфавит\е \{ a, b\} ,\ либо,\ в\ свою\ очередь,\ формула?](/sites/default/files/tex_cache/390974fafa6c90b954bee0c0ae5d6196.png)
3.1.8. Определить язык, состоящий из всех идентификаторов, с помощью:
а) регулярного выражения; б) леволинейной грамматики; в) конечного автомата; г) праволинейной грамматики.
3.1.9. Будет ли регулярным язык
четно и |x|b нечетно}?
3.1.10. Построить праволинейную грамматику, порождающую язык L всех слов в алфавите {0, 1}, содержащих чeтное число единиц и нечeтное число нулей. Будет ли она однозначной?
3.1.11. Построить регулярное выражение для языка LR, где L - язык всех слов в алфавите {0, 1}, содержащих чeтное число единиц и нечeтное число нулей.
Конечные автоматы
3.2.1. Какой язык допускается конечным автоматом ?
3.2.2. Построить недетерминированный конечный автомат, допускающий цепочки в алфавите {1, 2}, у которых последний символ цепочки уже появлялся в ней раньше. Построить эквивалентный детерминированный конечный автомат. Построить аналогичные конечные автоматы в алфавите {1, 2, 3}.
3.2.3. Построить конечный автомат, допускающий язык , где
.
3.2.4. Построить детерминированный конечный автомат, допускающий язык L всех слов в алфавите {0, 1}, содержащих чeтное число единиц и нечeтное число нулей;
Алгоритмы построения конечных автоматов
3.3.1. Для регулярного выражения над алфавитом T = {a, b} построить эквивалентный детерминированный конечный автомат:
а) b(ba|b)*|b б) (ab|b)*ba|ab в) (a|b)*ba(a|b) г) (a|b)*ab(a|b)* д) a(ab|b)*|ba е) (ba|b)*ab|ba ж) (a*b)*ab*a з) (a|b)*(a|b)(a|b(a|b)
Лексический анализ
Регулярные множества и их представления
3.4.1. Будет ли регулярным язык не содержит подцепочки aba }?
3.4.2. Возможно ли построить регулярную грамматику, порождающую язык, включающий в себя все непустые цепочки из 0 и 1, не содержащие трeх 1 подряд?
Алгебраические свойства регулярных множеств. Лемма о разрастании.
3.5.1. Будут ли регулярными следующие языки в алфавите {a}:
а) ;
б) ;
в) ;
д) .
3.5.2. Будут ли регулярными следующие языки в алфавите :
![а)\ язык\ L_{1}\ из\ всех\ слов \Sigma *,\ содержащих\ подслова\ a?b;
\\
б)\ язык\ L_{2}\ из\ всех\ слов\ \Sigma *,\ не\ содержащих\ двух\ b\ подряд;
\\
в)\ язык\ L_{3}\ из\ всех\ слов\ \Sigma *,\ не\ принадлежащих\ L_{1}\ или\ L_{2};
\\
г) L_{4} = \{ \{ a^{2n+5}b^{7n+4}\} ,\ n = 0, 1, \dots \} ?](/sites/default/files/tex_cache/86ab7f23d270d089f0693e356932fc63.png)
3.5.3. Задается ли язык {anbm|n m
1} регулярным
выражением?
3.5.4. Является ли грамматика с правилами:
![S \to aA|bB|C;\ B \to bB|b|\varepsilon ;
\\
A \to aA|a|\varepsilon ; \ C \to cSC:](/sites/default/files/tex_cache/30bd274a715ae5eb75c31d424b14a974.png)
праволинейной грамматикой?