Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
118
Добавлен:
02.05.2014
Размер:
393.73 Кб
Скачать

5. Регулярные языки.

Формулы Бэкуса-Наура, в кот-х правая часть предст-т собой один терм.символ или термин.и нетерм.символы наз-ся регуляр-ми гр-ми. Регул-е гр-ки в процессе компил-ии прогр-мы лишь распоз-т симв-лы языка, после чего н/о испол-ть более сложные процедуры, чтобы осуществить полный грам-й разбор текста прогр-мы.

К/Г-ка G=(N,T,P,S) наз.регул-ой, если:

1.ее продук-ии им.вид А→а или А→аВ, где АN, ВN, аТ.

2.она м/т им.ε-продукцию вида: S→ε и ни одна из др-х продук-й гр-ки G не содержит в своей правой части символа S.

S→аS|aB;

B→bB|b.

S→ε|аS1|aB;

S1→аS1|aB;

B→bB|b.

Если L-регул-й язык, то его замыкание Клини L* так же рег-й язык.

Если L1 и L2- регул-е языки, то L1UL2, L1L2 – также регулярные языки.

7.Пораждающие гр-ки. Виды, примеры.

Пусть дана К/гр-ка G=(N,T,P,S), и есть строка γ1α γ2 (NUT)+, кот.содержит не менее одного термин-го или нетерм-го сим-ла. Если сущ-ет вывод α →β, то в дан.строке α м/о заменить на β – получится новая строка γ1βγ2. След-но, 2-ая строка выводится из 1-ой или 1-ая строка пораждает 2-ю.

Если строка α(NUT)* за 1н или неск-ко шагов выводится из начального сим-ла S, то такую строку наз-т сентенциальной формой К/Г-ки G.

Сентенцией гр-ки G наз-т произ-ю сентенциальную форму, составл-ю из симв-в мн-ва Т*, т.е.произ.строку терм.сим-в, кот-я м.б.получена из нач-го сим-ла S. Тогда мн-во всех сентенций гр-ки G наз-т языком, пораждаемым гр-кой G и обоз-т L(G). Концепция пораждения им.вид:

L(G)={x Т* |SG*х}. Символ G*означает, что строка х выводится из нач-го символа S за 1н или неск-ко шагов по правилам гр-ки G.

//G1=({S,A,B},{a,b},P,S); P: S→A|B, A→aA|a, B→bB|b.

G2=({S,B,C},{a,b,c},P,S); P: S→aSBC|aBC, CB→BC, aB→ab, bB→bb, bC→bc, cC→cc.

м/о показать, что гр-ки G1 и G2 пораждают следующие языки:

L(G1)={an|n1}U{ bn|n1} и L(G2)={anbncn|n1}

Иногда 2е различные гр-ки GиG’пораждают один и тот же язык, т.е. L(G)=L(G’). След-но гр-ки GиG’эквивалентны.

// гр-ка G3= ({S,A,B},{a,b},P,S); P: S→aA|bB|a|b, A→aA|a, B→bB|b.эквивалентна гр-ке G1.

8. Классификация языков по Хомскому. Примеры.

Для рассм-ия св-в всего мн-ва гр-к их н/о классиф-вать по опред.признакам. Наиболее эффективной оказалась класс-ия предлож-ая Хомским. Согластно этой классиф-ии все гр-ки делятся на 4 типа: 0,1,2,3.

  1. гр-ка произвольного типа, без ограничений на правила вывода.

  2. если правило вывода прод-ии предст-ет собой α→β, где α=γ1 х γ2, β = γ1 δ γ2 – строки, где γ1и γ2 (NUT)*, хΝ, δ (NUT)+, то такая гр-ка наз.контекстно-зависимой или 1-го типа.

  3. КС/Г-ка, для кот-й все правила вывода им.вид: α→β, где αN, β(NUT)*.

  4. Регулярная(автоматная гр-ка), правила вывода кот-й: А→а, А→аВ, где АN, ВN, аТ.

Пр-ры

  1. G=(N,T,P,S), N={S}, T={a}, P: S→а; S→аaS. – гр-ка 3типа.( аS=S1  S→а; S→аS1, S1→аS)

  2. P: S→аSb; S→аb – 2тип,

  3. Р: S→аBa; S→аBCb; B→b; Bc→аB; cC→c. – 1тип.

Соседние файлы в папке Шпоры по теории автоматов