Научная литература
booksshare.net -> Добавить материал -> Лингвистика -> Гросс М. -> "Теория формальных грамматик " -> 90

Теория формальных грамматик - Гросс М.

Гросс М., Лантен А. Теория формальных грамматик — М.: Мир, 1971. — 296 c.
Скачать (прямая ссылка): teoriyaformalnihgrammatik1971.djvu
Предыдущая << 1 .. 84 85 86 87 88 89 < 90 > 91 92 93 94 95 96 .. 101 >> Следующая

Из определения ясно, что опорное множество адамаровского произведения двух рядов совпадает с пересечением опорных множеств этих рядов:

supp (Ct1 О о2) = supp (CT1) ft supp (ст2).

Теорема Юнгена, обфбщенная на некоммутативные функции (ряды), приобретает следующий вид.

Теорема (Юнген — Шютценберже). а) Если Supp(CT1)—рациональный язык и Supp(CT2) — рациональный язык, то supp (стіО^г) — тоже рациональный язык.

б) Если supp(CTi)—рациональный язык и supp (стг) — алгебраический язык, то supp (стіО^г)—алгебраический язык. 264

Часть III. Алгебраический подход

в) Если supp (сті) —алгебраический язык и supp (02) —алгебраический язык, то supp (стіО^г) может не быть алгебраическим языком.

Эта теорема обобщает также результаты, относящиеся к пересечениям КС-языков и А-языков.

Имеет место следующее важное свойство.

Рассмотрим гомоморфное отображение цепочек некоторого языка на язык, задаваемый рядом с коммутативными переменными ')• При таком отображении указанные выше свойства рядов сохраняются.

Ясно, что это отображение преобразует систему некоммутативных уравнений в классическую систему.

Можно доказать, что верно и обратное.

§ 16.4. упражнения

1. Функция ф, определенная на кольце U = {a,b,c, ...} и принимающая действительные значения, называется нормой, если она удовлетворяет следующим условиям:

1) (Vaf=?/)[q>(a)>0],

2) ф(а) = 04фа = 0,

3) ф(а + &)<ф(а) + ф(&),

4) ?(1)=1,

5) ф(а&)<ф(а)ф(&).

Доказать, что val [(s)] — норма для Q [[Z*]].

2. Показать, что выбор числа, превосходящего 1, которое служит для построения функции val [ (s) ] (у нас в качестве такого числа была выбрана двойка), не имеет принципиального значения.

3. Доказать утверждение п. 16.1.9, а именно: подстановка рядов (Sj) в произвольный ряд возможна, если ряды (Sj) квазирегу-лярны.

4. Описать порождение языка

{арЬ9 I р, q > 0, р Ф q)

— посредством системы уравнений,

— посредством КС-грамматики.

§ 16.5. ПРИМЕНЕНИЕ «ЯЗЫКОВЫХ» УРАВНЕНИИ В КОМБИНАТОРНОЙ ГЕОМЕТРИИ

Теория формальных грамматик имеет интересные приложения в некоторых вопросах комбинаторной геометрии и комбинаторного анализа. Мы ограничимся в этой связи разбором примера, пока-

') Точнее, свободной полугруппы на свободную полугруппу с одной образующей. — Прим. ред. Гл. XVI. Алгебраические языки

265

зывающего, как с помощью формальных грамматик можно по-новому подойти к решению одной классической задачи.

16.5.1. Задача о разбиении многоугольника

Пусть имеется жорданов многоугольник (т. е. топологический многоугольник, разбивающий плоскость на внешнюю и внутреннюю области) с помеченными вершинами; спрашивается, сколькими разными способами можно разбить его на треугольники посредством диагоналей, не имеющих общих точек, кроме вершин?

Пример. В случае пятиугольника решение очевидно: пятиугольник допускает пять различных разбиений. Вот они:

Наметим сначала путь «классического» решения сформулированной задачи. 266

Часть III. Алгебраический подход

Пусть имеется жорданов m-угольник, и пусть /(т)— число его возможных разбиений. Рассмотрим и-угольник P и определим с помощью функции / число разбиений, имеющих один фиксированный общий треугольник. Если выбросить из P этот общий треугольник, останутся два многоугольника, имеющие р и q сторон соответственно, причем

p + q = n+ 1.

Следовательно, искомое число есть f(p)f(q).

Если один из двух «малых» многоугольников пуст, данное число равно / (п — 1).

Полагая /(2)= 1, получаем для всех п = 2, 3, ... единое выражение

f(p)f(q); p + q = n+ 1.

Фиксируем одну из сторон п-угольника A\Az.. .An, например AiA2; произвольную вершину, отличную от Ai и A2, будем обозначать через Ai.

Все треугольники AiA2Ai различны, и всякая триангуляция, содержащая AiA2Ai, отличается от триангуляции, содержащей AiA2Aj, і ф /. Суммируя по і, мы получим следующую рекуррентную формулу:

f(n) = f(2)f(n-l)+ ... +f(i)f(n-i+ 1)+ ... +f(n- 1)/(2).

В случае треугольника имеем /(3)= 1, что позволяет последовательно вычислять f(n) для любых п.

Пример.

/(4) = /(2)/(3) + /(3)/(2) = 2,

/(5) = /(2)/(4) + /(3)/(3) + /(4)/(2) = 5.

Теперь попытаемся определить производящую функцию */ = / (2) X2 + / (3) Xz + ... + / (п) хп + ...,

такую, чтобы коэффициент при Xn давал f(n). Предыдущие рассуждения не подсказывают пути к этому, и создается впечатление, что необходимо прибегнуть к какому-то «трюку». Между тем использование формальных грамматик приводит к весьма естественному решению. Гл. XVI. Алгебраические языки

267

16.5.2. Решение задачи о разбиении многоугольника с помощью грамматики

Основная идея состоит в том, чтобы построить грамматику, порождающую многоугольники, разбитые на треугольники, так, как порождаются цепочки формального языка. Если эта грамматика будет однозначной, то она выдаст — в качестве «побочного продукта» — пересчет треугольников, т. е. число /(«).

Рассмотрим «бесскобочную» грамматику

S -*• aSS, S-*b.

Эта грамматика однозначна. Дадим ее символам и правилам следующую интерпретацию.
Предыдущая << 1 .. 84 85 86 87 88 89 < 90 > 91 92 93 94 95 96 .. 101 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed