25.02.2003 №3
если L1иL2это 2а формальных языка, то их объединение есть нов.форм.язык, т.ч.L=L1L2{xy| хL1,уL2}
// L1={0,01}иL2={ε,0,10}
L=L1L2={0,01,00,010,010,0110}
Как и в сл-е объединения строк, операция объединения формальных языков ассициативна, но не коммутотивна. Еоммутотивность сохраняется только в случае объединения произв-го языка Lс пустой строкой ε.
Объединение форм.языка Lс самим собой:L2=L*L. В общем сл-е:L0= ε,L1=L,L2=L*L.
Замыкание Клиниформ.языкаLн-ся
.Тогда
,
тогдаL*=L+{ε},
анологично, можно записать замыкание
Клини для мн-ва строк:![]()
Введение а грам-ку.
Синтаксис языков программирования обычно описывают виде синтак-х диаграмм или форм Бекуса-наура. Рас-м принцип построения диаграмм на пр-ре понятия множитель.
л
юбой
путь по этой диаг-ме проходит ч/з 1н или
неск-ко узлов. Узел м.б.прямоугольным
или круглым. Каж-у прям-му узлу соотв-ет
своя синтакс.диаг-ма, п/э-у такой узел
наз-ся нетерминальным. Круг.узел наз-ся
терминальным(он больше не раскрывается).
м/о записать эту синт.диаг-у в форме
Бекуса Наура:
<множитель>::=<беззн.конст.>
|<перемен-я>
|<идентиф-р ф-ии>
Контексная гр-ка
Нетерм.сим-лы – пропис.буквы, термин. – строчные. Всякое дерево вывода начинается с корня Sв соответствии с правилами вывода происходит дв-е по ветвям строющегося дерева до тех пор, пока все нетерм-е символы не буд.раскрыты ч/з терм-е. Мн-во терм-х симв-в образуют висящие вершины, если их прочесть слева направо, то получится строка.
Контексная гр-ка(К/Г) – это совокуп-ть 4х объектов: G=(N,T,P,S), гдеN-конеч.мн-во нетерм.симв-в,T-кон.мн-во терм.симв,P-кон.мн-во продук-й вида α→β, где α(NUT)+-без пустой строки, β(NUT)*т.е.м/о получить и пуст.строку,S-начальный символ.
Если строка α(NUT)*за 1н или неск-ко шагов выводится из начального сим-лаS, то такую строку наз-тсентенциальной формойК/Г-киG.
Сентенцией гр-ки Gназ-т произ-ю сентенциальную форму, составл-ю из симв-в мн-ва Т*, т.е.произ.строку терм.сим-в, кот-я м.б.получена из нач-го сим-лаS. Тогда мн-во всех сентенций гр-киGназ-т языком, пораждаемым гр-койGи обоз-тL(G).
L(G)={xТ* |S
G*х}.
