Опубликован: 06.08.2007 | Доступ: свободный | Студентов: 1900 / 1053 | Оценка: 4.45 / 4.29 | Длительность: 18:50:00
Специальности: Программист
Дополнительный материал 3:

Задачи по разделам курса

< Дополнительный материал 2 || Дополнительный материал 3: 12345678

Лексический анализ

Регулярные множества и выражения

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.

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\} ,\ либо,\ в\ свою\ очередь,\ формула?

3.1.8. Определить язык, состоящий из всех идентификаторов, с помощью:

а) регулярного выражения;
б) леволинейной грамматики;
в) конечного автомата;
г) праволинейной грамматики.

3.1.9. Будет ли регулярным язык L = \{ x \in  \{ a, b\} ^{*} : |x|_{a} четно и |x|b нечетно}?

3.1.10. Построить праволинейную грамматику, порождающую язык L всех слов в алфавите {0, 1}, содержащих чeтное число единиц и нечeтное число нулей. Будет ли она однозначной?

3.1.11. Построить регулярное выражение для языка LR, где L - язык всех слов в алфавите {0, 1}, содержащих чeтное число единиц и нечeтное число нулей.

Конечные автоматы

3.2.1. Какой язык допускается конечным автоматом M = (\{ q_{0}\} , \{ a, b\} , \varnothing , q_{0}, \{ q_{0}\} )?

3.2.2. Построить недетерминированный конечный автомат, допускающий цепочки в алфавите {1, 2}, у которых последний символ цепочки уже появлялся в ней раньше. Построить эквивалентный детерминированный конечный автомат. Построить аналогичные конечные автоматы в алфавите {1, 2, 3}.

3.2.3. Построить конечный автомат, допускающий язык \{ xy\}  \cup  \{ yx\}, где x \in  \{ a\} ^{*} \setminus  \varepsilon   y \in  \{ b\} ^{*} \setminus  \varepsilon.

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. Будет ли регулярным язык L = \{ x \in  \{ a, b\} |x не содержит подцепочки aba }?

3.4.2. Возможно ли построить регулярную грамматику, порождающую язык, включающий в себя все непустые цепочки из 0 и 1, не содержащие трeх 1 подряд?

Алгебраические свойства регулярных множеств. Лемма о разрастании.

3.5.1. Будут ли регулярными следующие языки в алфавите {a}:

а) L_{1} = \{ \{ a^{2n+5}\}  \cup  \{ a^{7n+4}\} ,\ n = 0, 1, \dots \} ;

б) L_{2} = \{ \{ a^{2n+5}\}  \cap  \{ a^{7n+4}\} ,\ n = 0, 1, \dots \} ;

в) L_{3} = \{ \{ a^{4n+5}\} , n = 0, 1, \dots , n \ne  5(mod11)\} ;

д) L_4 = \{a^{n^2}, n = 0, 1, \ldots \}.

3.5.2. Будут ли регулярными следующие языки в алфавите \Sigma  = \{ a, b\}:

а)\ язык\ 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 \} ?

3.5.3. Задается ли язык {anbm|n \ge m \ge 1} регулярным выражением?

3.5.4. Является ли грамматика с правилами:

S \to  aA|bB|C;\ 	B \to  bB|b|\varepsilon ;
\\
A \to  aA|a|\varepsilon ; \	C \to  cSC:

праволинейной грамматикой?

< Дополнительный материал 2 || Дополнительный материал 3: 12345678