Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

MAIN

.pdf
Скачиваний:
23
Добавлен:
10.02.2015
Размер:
255.38 Кб
Скачать

1Список вопросов

1.Понятие алгоритмов. Задачи и языки.

2.Алфавит. Слово. Множество всех слов. Свойства: X , конкатенация.

3.Множество X - счетно.

4.Теорема о несчетности множества всех языков.

5.КДА. Способы задания.

6.Распознавание слов и языка КДА. Примеры языков.

7.Класс языков Reg. Теорема о счетности множества Reg. Следствие - существуют нерегулярные языки.

8.Множество всех языков с операцией объединения - коммутатисная полугруппа. Множество языков с объединением и конкатенацией - полукольцо.

9.dim(L) - размерность регулрного языка. Проблема нахождения минимального автомата.

10.Конечный язык. Его регулярность. Размерность конечного языка.

11.Пересечение, объединение, дополнение регулярных языков - тоже регулярный язык.

12.Объединение и пересечение конечного числа регулярных языков - регулрно.

13.Проблема регулярности счетного объединения регулярных языков.

14.Булевы функции и языки. Примеры КДА для булевых функций.

15.БДА. Свободный БДА. Произвольный язык L распознается БДА.

16.Отношение L-эквивалентности. 2 определения.

17.Rang(L). Ранг произвольного языка.

18.Теорема Майхилла - Нероуда. 1 часть.

1

19.Теорема Майхилла - Нероуда. 2 часть.

20.Следствие теоремы Майхилла - Нероуда: dim(L) = Rang(L).

21.Применение теоремы Майхилла - Нероуда. Примеры регулярных языков.

22.Построение минимального КДА для регулярного языка на основе критерия Майхилла - Нероуда.

23.EQ2n+1, EQ2n+1, O2n, O02n - оценки размерности сверху/снизу.

24.Линейное представление автомата. Конечный автомат - программистский подход. Задача - решение - представление.

25.КНА - представление слова, представление языка.

26.Класс NReg.

27.NReg = Reg.

28.Ndim(L) è dim(L).

29.Ndim(EQ2n+1).

30.Ndim(EQ2n+1)

31.Объединение регулярных языков - регулярно (доказательство с использованием КНА).

32.Конкатенация регулярных языков - регулярна (доказательство с использованием КНА).

33.Итерация регулярных языков - регулярна (доказательство с использованием КНА).

2

2Ответы

Вопрос 1,2,3,4

1, 2, 3

X = fx1; x2; : : : ; xng алфавит X = f0; 1g xi - буква

Умножение букв = приписывание

01 - слово

X = fw : w - слово в алфавите Xg - мнв всех слов конечной длины

010011. . . - сверхслово

X+ = f0; 1; 00; 01; 10; 11; 000; : : : ; 111; : : : ; 00 : : : 0; : : : ; 11 : : : 1g

|{z}

n

jX+j = 2 + 22 + 23 + + 2n

Свойство 1. kX k - счетно.

Доказательство. Нужно указать процедуру нумерации. Пусть X = f0; 1g; f0; 1g

0 ;

1

; 01 ; 10 ;

11

; 000 ; 001 ; : : :

 

|{z}1

|{z}2

|{z}3

|{z}4

|{z}5

|{z}6

|{z}7

 

Свойство 2. < X ; > - полугруппа с конкатенацией и нейтральным элементом. Некоммутативная.

Определение 1. Язык - это произвольное подмножество множества X . (L X )

Пример 1. X = f0; 1g

1.L = f0g

2.L = f0; 1g

3.L = X

4.L = f00; 0000; : : : g

X = fкириллица, tg

L = Ðß

3

Свойство 3. L = fL : L X g - несчетное.

Доказательство. От противного. Пусть L - счетное.

L = fL1; L2; : : : ; Lng

(1)

Нужно доказать, что некоторый язык не имеет номера. Используетя диа-

гональная конструкция.

X - счетное. Берем произвольную нумерацию X . Каждому языку L ставим в соответствии взаимнооднозначную последовательность: L () a(L) = (0; 1; 1; 1; : : : ). Для каждого языка строим эти характерестические последовательности. В результате образуется матрица:

L1 =

0

0

1

1

: : :

1

L2 =

1

0

0 : : :

: : :

B

: : :

 

 

 

C

 

B

 

 

 

 

C

Ln =

B

n1

n2

n3

: : :

C

B

C

 

B

 

 

 

 

C

 

B

 

 

 

 

C

 

B

 

 

 

 

C

 

B

 

 

 

 

C

 

B

 

 

 

 

C

 

B

 

 

 

 

C

 

@

 

 

 

 

A

Счетное число стрîê è ñòîëáöîâ.

L() a(L) = ( 11; 12; : : : ; nn; : : : )

L, L1; L , L2; : : : ; L , Ln; : : :

По предположению язык L имеет номер. Пусть имеет номер m, но Lm = L Это противоречит (1).

Операции: [; L [ L0

; - пустое множество, нейтральный элемент.

L [ ; = L

Коммутативный.

< L; [ > - коммутативная полугруппа.

4

Определение 2. Задача - вычислительная задача. Состоит из:

1.Исходное условие

2.Исходные данные

3.Ответ

4

Пример 2. Решить систему линейных, квадратичных уравнений. Конкретная задача:

w =код(условие)код(данные)код(ответ)

Слово соответстует задаче.

Ç ! L3 = fw : w код, соответствующий этой задаче g

Задача в наших терминах - это язык. w X

w !

8íåò

w < L

 

äà

w 2 L

>

>

<

>

>

:

5

Вопрос 5,6

3Конечный детерминированный автомат

Определение 3.1. Конечным детерминированным автоматом A (сокращенно КДА) называют пятерку A = hX; S; ; s0; Fi.

Здесь X конечный алфавит, S = fs1; s2; : : : ; sdg конечное множество состояний, : S X ! S функция переходов автомата A, s0 2 Sначальное состояние автомата, F S множество финальных состо-

ÿíèé.

Автомат начинает работу с начального состояния s0. Под воздействи- ем букв входного слова автомат A на каждом шаге работы изменяет свои состояния в соответствии с функцией переходов.

Способы задания КДА:

в виде таблицы табличное задание автомата;

в виде диаграммы задание автомата графом: G = hS; Vi;

матричное задание функции переходов. Такому заданию функции переходу соответствует векторно-матричное задание автомата.

Определение 3.2. Сложностью (размерностью) конечного детерминированного автомата A = hX; S; ; s0; Fi будем называть чило его состояний.

Сложность автомата A будем обозначать dim(A):

dim(A) = jSj:

4Распознавание языков

F S принимающее подмножество состояний. F = SnF отвергающее подмножество состояний.

! 2 X , ! = x1x2 : : : xn задает траекторию вычислений A на !.

S0

x1

S1

 

x2

S2

x3

: : :

xn

Sn

 

 

 

 

 

Определение 4.1.n

Слово n! ïринимается автоматом A, если Sn 2 F. Îò-

вергается, если S

< F, S 2F.

 

 

 

 

6

Определение 4.2. Язык L распознается автоматом A, если все слова этого языка принимаются A:

L = f! 2 L : ! принимается Ag:

Дополнение L: L = X nL:

Свойство: Если L распознается автоматом A, то L распознается неким конечным автоматом A0.

Доказательство: Если A = hX; S; ; s0; Fi, òî A0 = hX; S; ; s0;Fi, ãäå F =

SnF.

Примеры автоматов, распознающих языки

1. A: L = f0g

S0 0 S1

10,1

S2

0,1

 

0

1

Í

Ô

 

 

 

 

 

S0

S1

S2

1

 

S1

S2

S2

 

1

S2

S2

S2

 

 

2. A: L = X = f0; 1g

0,1

S0 S1

0,1

S2

0,1

7

 

 

 

0

1

Í

Ô

 

 

 

 

 

 

 

 

S0

 

S1

S1

1

 

 

S1

 

S2

S2

 

1

 

S2

 

S2

S2

 

 

3. A: L = X

 

 

 

 

S0

 

0,1

 

 

 

 

 

 

 

 

 

 

 

 

0

1

Í

Ô

 

 

 

 

 

 

 

 

S0

 

S0

S0

1

1

4. A: L = f0; 000; : : : - нечетныеg

0

S0 0 S1

11

S2

0,1

 

0

1

Í

Ô

 

 

 

 

 

S0

S1

S2

1

 

S1

S0

S2

 

1

S2

S2

S2

 

 

5. A: L = f00; 0000; : : : - четныеg

0

S0 0 S1 0 S2

1 1 1

S3

0,1

8

 

0

1

Í

Ô

 

 

 

 

 

S0

S1

S3

1

 

S1

S2

S3

 

 

S2

S1

S3

 

1

S3

S3

S3

 

 

6. A: L = f000; 000000; : : : - кратно 3g 0

S0

0

 

 

S1

 

0

S2

0

S3

1

 

 

 

 

 

 

 

 

 

1

 

 

1

1

 

 

 

 

 

 

 

 

 

S4

 

 

 

 

 

 

 

 

 

 

 

0,1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

1

 

Í

Ô

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S0

 

S1

S4

 

1

 

 

 

 

 

S1

 

S2

S4

 

 

 

 

 

 

 

S2

 

S3

S4

 

 

 

 

 

 

 

S3

 

S1

S4

 

 

 

1

 

 

 

S4

 

S4

S4

 

 

 

 

 

 

 

7. A: L = f0 : : : 0; 0 : : : 0; : : : - кратно kg

|{z} |{z}

k2k

9

 

 

 

 

 

 

 

 

 

 

0

 

 

 

S0

0

 

0

 

 

 

0

Sk 1

0

Sk

 

 

 

S1

 

 

 

. . .

 

 

 

 

 

 

 

 

 

 

 

1

1

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

Sk+1

 

 

 

 

 

 

 

 

 

 

 

0,1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

 

 

Í

Ô

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S0

 

S1

Sk+1

 

1

 

 

 

 

 

 

S1

 

S2

Sk+1

 

 

 

 

 

 

 

 

:

 

 

 

 

 

 

 

 

 

 

 

 

 

:

 

 

 

 

 

 

 

 

 

 

 

 

 

:

 

 

 

 

 

 

 

 

 

 

 

 

 

Sk 1

 

Sk

Sk+1

 

 

 

 

 

 

 

 

Sk

 

S1

Sk+1

 

 

 

1

 

 

 

 

Sk+1

 

Sk+1

Sk+1

 

 

 

 

 

 

 

 

8. A: L = fX 1 - все, что заканчивается на 1g

1

 

S0

 

 

S1

0

0

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

1

 

Í

Ô

 

 

S0

S0

S1

 

1

 

 

 

S1

S0

S1

 

 

1

 

9. A: L = f1X

- все, что начинается на 1g

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]