Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава 5.doc
Скачиваний:
3
Добавлен:
16.04.2019
Размер:
3.86 Mб
Скачать

Получение s можно представить следующим образом:

Образование слова производится по принципу от простого «s»

__

к сложному «ts»= «s». Именно об этом говорится в §5.5 при

__ __

определении инициального автомата. (s0=s, sE=ts,s1=s, s=sE)

  1. Все, что можно вывести при помощи последовательности замен, указывается стрелкой =>, т.е. вместо

_

s= tk tk-1 … t2 t1s _

будем иметь xs=>x tk tk-1 … t2 t1 (5.9)

Обозначим множество выводов типа (5.9) β*.

  1. Считаем, что слово x γ* допускается, если хs0 выводимо

из sE: sE=> хs0 (5.10)

Заменим s0 на пустое слово ε, а sE – на символ z.

z =>x - означает «х допускается».

  1. Пусть a, b, c слова из β*. Если b => и c=>b, то c=>a. Иначе говоря, отношение => транзитивно.

Формальной системой Σ = (β,=>,z) называется свободная полугруппа β* слов над β вместе с заданным на ней транзитивным отношением =>, называемым синтаксисом или структурой вывода, и аксиомой z β.

Если выполнено соотношение a=>b, то выводимо из а. Множество всех слов, выводимых из z, называют ядром формальной системы.

Ф ормальная грамматика Г= (β,γ,=>,z), где γcβ и zγ – это формальная система (β,=>,z), синтаксис которой предназначен для выделения в ядре всех тех слов, которые состоят только из терминальных символов.

Словарным запасом или языком z(Г), порождаемым грамматикой Г- множество всех слов из γ*, выводимых из z через отношения =>.

Словарный запас вместе с синтаксисом, позволяющим выводить из z отдельные слова, составляет формальный язык Λ=(Г,Z(Г)), описываемый формальной грамматикой.

Ядро формального языка содержит множество всех слов, которые встречаются в выводах слов из словарного запаса.

Всякое конечное множество x1, x2,…, xn слов xi над набором символов γ можно рассматривать как формальный язык. При этом β = γU{z}, а отношение => представляет собой перечень слов из словарного запаса: z=>x1,

z=>x2,

z=>xn. (5.11)

      1. Полутуэвские языки

Языки, в которых отношение →(с.б.) строится по более простому отношению →(с.м.), такому, что a→b (с.м.) (a,bβ*) ведет к xay→xby для произвольных х, у β*. При этом говорят, что отношение вывода →(с.б.) является полугрупповым замыканием отношения вывода → (с.м.).

Рассмотрим пример. Пусть β={I}, β*={ε, I, II, III, …}так что β*\{ε}– это представление натуральных чисел ( \ - означает без). Пусть соотношение a=>b (a,bβ*) выполняется тогда, когда натуральное число, соответствующее а, меньше числа, соответствующего b. Диаграммой Хассе этого отношения будет:

(с.б) ε→I→II→III→… (5.12)

Граф отношения →(с.б.), порождающего отношение =>, называется диаграммой Хассе.

поскольку β* бесконечно, для всякого отношения, распространяющегося на бесконечное число слов из β*, неосуществимо перечисление соотношений даже для упрощенного отношения →.

Если в диаграмме Хассе (5.12) задать граф ε→I (с.м.), то

а.) при х1 = у1 = ε и а = ε, b = I, следует (с.б.) x1ay1→x1by1 =

= εаε →εbε = εεε→εIε или ε→I

б.) при х2=ε, у2=I и b=II следует (с.б.) х2 bу2 =εIII, но εIIε→ εIII, εIIε= x1IIy1, но из а.) =>, что x1ay1→x1by1 или x1εy1→x1IIy1= x1Iy1→x1IIy1, т.е. I=II (5.13)

в.) при х3=I, y3=II и b= II следует (с.б.).

х3by3 = IIIII, но εIIIε→ IIIII, εIIIε = x1IIIy1. Далее читаем в обратном порядке εаε →εIε→ εIIε→ εIIIε

εаε → εIIIε, но εаε = εIε→ εIIε→ εIIIε и т.д.

Вывод1 Очевидно, что теперь возможно с помощью конечного отношения →(с.м.) (в примере ε →I), т.е. отношения, которое перечислимо конечным числом пар соотношений, породить бесконечное отношение →(с.б.) как полугрупповое замыкание отношения →(с.м.).

Фактически из конечного числа пар xi, yi можно образовать бесконечное множество( в примере – это IIII …).

Определение1 Формальная грамматика называется полутуэвской, если отношение => является транзитивным замыканием полугруппового замыкания некоторого конечного отношения →(с.м.) на β*.

Определение2 Если соотношение а =>b можно получить с помощью конечного числа соотношений а→с1, с1→с2, с2→с3, …, сn→b, то говорят, что отношение →(с.б.) порождает => и называют отношение => транзитивным замыканием →(с.б.).

Определение3 Каждое соотношение называется продукцией языка.

Определение4 Язык порождаемый полутуэвской формальной грамматикой называется полутуэвским языком. В случае когда не учитывается разбиение β на терминальные и нетерминальные символы, говорят о полутуэвской системе.

Вывод2 Если в полутуэвской системе «b» выводимо из «а», то для x, yβ* xby выводимо из xay. Замену a→b (с.м.) можно применять не только к полному слову «а», но и к каждому подслову «а» внутри любого слова «xay».

Пример к выводу 2 Пусть β состоит из двух элементов, т.е. β={A, B}. Продукциями являются:

ε →AA,

AA→ ε,

ε→BB,

BB→ ε ,

ε →ABAB,

ABAB →ε.

Элементом множества продукций этой системы можно представить графом:

      1. Языки Хомского

Лингвист Ноэм Хомский в1955 г. ввел ограничение в полутуэвские системы: «Не допускается таких продукций, которые заменили бы слово, состоящее только из терминальных символов, на какое–нибудь другое слово».

Определение 1 Полутуэвская грамматика называется грамматикой Хамского типа 0 или грамматикой с фразовой структурой, если все ее продукции имеют вид

(с.м.) a→b, a(β\γ)*\{ε}, bβ* (5.16)

Тогда все слова языка, порождаемого грамматикой, являются максимальными, т.е. из них уже нельзя больше вывести никакого другого слова.

Определение 2 Грамматика, обладающая свойством – длина слов при любом выводе не уменьшается, называется неукорачивающей.

Определение 3 Полутуэвская грамматика называется контекстно-зависимой, если все ее продукции имеют вид:

uAv→ubv, (с.м.) (5.17)

где u,vβ*, Aβ, bβ*\{ε}.

Контекстно-зависимая грамматика Хомского типа 0 с естественным ограничением: Aβ\γ для u, v(β\γ)* - называется грамматикой Хомского типа 1.

Определение 4 Контекстно-зависимая полутуэвская грамматика называется контекстно-свободной, если все ее продукции имеют вид: х→b, (с.б.) (5.18)

где хβ, bβ*\{ε}.

Контекстно-свободная грамматика Хомского типа 1с естественным ограничением хβ\γ называется грамматикой Хомского типа 2.

Пример 1 к грамматике Хомского типа 3

β\γ = {Z. NP,VP, AP, N, V, T, Adj, Adv},

γ = {a, an, ball, colorless, furiously, green, ideas, is, is.not, John, , plays, quietly, sleep, sleeps, square, the, },

( с.м.) R={z→NP VP,

NP→T AP,

NP→AP, ИМЕННАЯ ГРУППА

AP→Adj AP,

AP→N, (5.19)

VP→V NP,

VP→V Adv, ГЛАГОЛЬНАЯ ГРУППА

VP→is Adj,

VP→is not Adj,

VP→V

N→ ball ,

слова N→ ideas , СУЩЕСТВИТЕЛЬНОЕ

N→ John ,

V→is ,

V→is not ,

V→ plays , глагол

V→ sleep • ,

V→ sleeps ,

Adj → colorless ,

слова Adj → green , прилагательное

Adj → old ,

Adj → square • ,

Adv→ furiously • ,

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