ababcabdabcd
Видно, что произведение множеств не коммуникативно, т.е.
. Множество,
состоящее из пустой цепочки можно обозначить, как []. Для этого множества справедливо
[] = [] = .
Теперь можно определить понятие степени множество цепочек:
и
n
={xxx…x, /x
.
Если ={x}, то можно говорить 0 степени цепочки
х
n
=xxx…x(nраз)
x
0
=[].
Аналогично, понятие степени можно распространить и на алфавит
A
0
={[]}? A
1
=A,A
n
=AA
n-1
дляn>0.
Семантика – совокупность правил интерпретации лексем и языковых конструкций.
Семантическими интерпретации и представления текстов на естественном языке является
важной задачей обработки естественного языка. Количество себе семантических
представлений были использованы представляют собой естественное язык с помощью
концептуальных представлений.
Основная сложность построения транслятора состоит в том, что число возможных
программ на входе бесконечно. Транслятор должен обрабатывать любую программу из
этого множества, сама программа может иметь любую сложность. Для построения
транслятора необходимо иметь ведущую идею, позволяющую вычислить значение любой
184
входной программы, выражая это значение на выходном языке или в последовательности
действий.
II. Одна из таких идей – метод синтаксически-ориентированной трансляции, основанный
на работах американского ученого Ноэля Хомского. На основании изучения механизма
понимания смысла естественного языка ученый пришел к выводу, что существенную роль в
этом процессе играет этап построения структуры предложения, которую, в свою очередь,
используют для «вычисления» смысла предложения. Например , «Порядок сменит хаос».
Предложение имеет 2 смысла :
1-й – вместо хаоса будет порядок.
2-й – вместо порядка будет хаос.
Из гипотезы Хомского следует, что семантический анализ сводится к синтаксическому и
состоит из двух процедур: распознавания структуры входного предложения; построения
выходного текста (действий) на основе этой структуры.
Тартипалмаштыруу хаос
Рисунок 1. Структура предложения – вариант – 1.
Разбор помогает понять отношения между словами в предложении. Он играет важную
роль в большом количестве приложений, таких как машинный перевод, неоднозначности
смысла слова, поисковые системы, диалоговых систем и т.д. Анализаторы в основном
подразделяются на две категории - грамматика и управляемых данными приводом.
ЭЭ
баяндооч
сүйлѳм
Зататооч
этиш
Толуктоочт
обу
Зататооч
185
Тартипалмаштыруу хаос
Рисунок 2. Структура предложения – вариант -2.
Чтобы применить математический подход к проблемам, связанным с языками и их
обработкой, необходимо ограничиться множество цепочек, которые можно определить
некоторым точным образом. Существуют различные способы точного задания таких
множеств. Один из них заключается в задании языка как множества, допускаемого каким-
нибудь распознавателем цепочек вроде конечного автомата. Другой – в использовании
методов, которые можно считать грамматическими.
Термин «формальная грамматика» применим к любому определению формального
языка, основанному на грамматических правилах, с помощью которых можно порождать и
анализировать цепочки аналогично тому, как грамматики используют при изучении
естественных языков.
III. Рассмотрим формальную грамматику, которая в какой-то степени напоминает
фрагмент грамматики кыргызского языка и задает формальный язык, состоящий из четырех
кыргызских предложений. Такой грамматике используют элементы, играющие роль членов
предложение или частей речи:
Синтаксис – совокупность правил построения языковых конструкций (предложений) из
лексем.
Синтаксический анализ является очень важным приложением Пролога и логического
программирования. В действительности, происхождение Пролога связано с попыткой
использовать логику для выражения грамматических правил и формализации процесса
синтаксического разбора.
Элементы, приведенные в грамматике, такие как <подлежащие> или <существительное>,
играющие роль членов предложения или частей речи, называют нетерминальными
(вспомогательными)
символами,
или
нетерминалами.
При
определении
языка
программирования нетерминалами служит такие элементы, как <оператор>, <выражение> и
т.д.
Не терминалы – это конструкции языка.
Грамматика может содержать любое количество терминалов. В языках программирования
терминалами являются используемые в них слова и символы, BEGIN, DO, + и т.д.
Терминалы – это символы предложений порождаемого языка.
Наиболее распространенным подходом к реализации синтаксического разбора средствами
Пролога является использование грамматик, задаваемых определительными предложениями
(definiteclausegrammar, DCG). DC-грамматики являются некоторым обобщением контекстно-
свободных грамматик. Контекстно-свободные грамматики определяются множеством правил
вида
<нетерминал><тело>,
сүйлѳм
Баяндоочтунтобу
Ээнинтобу
толуктоочтунтобу
Зататооч
этиш
Зататооч
186
Где нетерминал является нетерминальным символом, а тело-последовательностью из
одного или нескольких элементов, разделяемых запятыми. Каждый элемент–это либо
нетерминальный символ, либо последовательность терминальных символов. Смысл правила
в том, что тело есть возможная форма грамматической группы нетерминального типа.
Нетерминальные символы записываются как атомы Пролога, а последовательности
терминальных символов - в виде списков атомов. Это облегчает трансляцию грамматик в
Пролог-программы.
Для каждого нетерминального символа S грамматика определяет язык, который
представляет собой множество последовательностей терминальных символов, получаемых
путем повторного недетерминированного применения правил грамматики, начиная с
символа S.
Рассмотрим простую контекстно-свободную грамматику для небольшого подмножества
кыргызского языка. Первое правило грамматики читается так: “Предложение состоит из
группы существительного, за которым следует группа глагола”.
сүйлѳм(с(Q,V)) -->зататооч(Q), этиш(V).
зататооч(з(кыз))--> [кыз].
зататооч (з(китеп))--> [китеп].
зататооч(з(кагаз))--> [кагаз].
зататооч(з(кой))--> [кой].
зататооч(з(ит))--> [ит].
этиш(эт(секирди)) --> [секирди].
этиш(эт(бакырды)) --> [бакырды].
этиш(эт(иштеди)) --> [иштеди].
этиш(эт(чуркады)) --> [чуркады].
1 ?- сүйл
ѳм(S,L,[]).
S = с(з(кыз), эт(секирди)),
L = [кыз, секирди].
… … … … … …
S = с(з(ит), эт(чуркады)),
L = [ит, чуркады].
Грамматические правила: предложения -- >группа_существительного, группа_глагола.
Рис.3. модель простой контекстно-свободной грамматики
Примером для реализации восходящей грамматики с рекурсивными правилами является
синтаксический анализатор математических выражений. Такая система начинает работу с
данными и переходит к простым синтаксическим объектам, а затем и к более сложным. В то
время как система нисходящего разбора управляется в основном гипотезами, система
восходящего грамматического разбора управляется данными.
187
Разбор предложения можно рассматривать как нахождение зависимости отношения
некоторой парыслов в предложении. Слова должны быть связаны таким образом, что они
образуют ровную древовидную структуру, где узлы являются словами, ребра назначаются
между парами слова,которые являются связанными уровнем именем отношений.
Достарыңызбен бөлісу: |