Научная статья на тему 'О решении систем алгебраических уравнений, ассоциированных с контекстно-свободными языками'

О решении систем алгебраических уравнений, ассоциированных с контекстно-свободными языками Текст научной статьи по специальности «Математика»

CC BY
534
39
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
КОНТЕКСТНО-СВОБОДНЫЕ ЯЗЫКИ / СИСТЕМЫ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ / НЕКОММУТАТИВНОЕ КОЛЬЦО / КОММУТАТИВНЫЙ ОБРАЗ / ГРАФ ИНЦИДЕНТНОСТИ

Аннотация научной статьи по математике, автор научной работы — Егорушкин Олег Игоревич, Калугин-балашов Дмитрий Андреевич, Сафонов Константин Владимирович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Егорушкин Олег Игоревич, Калугин-балашов Дмитрий Андреевич, Сафонов Константин Владимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ON A SOLVING OF ALGEBRAIC EQUATIONS SYSTEMS ASSOCIATED WITH CONTEXT-FREE LANGUAGES

Systems of algebraic equations (polynomial and linear) which appear in context-free languages theory are considered. The solution of the system is a set of formal power series expressing one group of variables trough the other group of variables considered as parameters. It is impossible to directly use the classical elimination processes for a non-commutative ring. The conditions of solubility of a polynomial equations system as well as possibility to make lower the order of a linear equations system are given in the article

Текст научной работы на тему «О решении систем алгебраических уравнений, ассоциированных с контекстно-свободными языками»

ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА

2008

Теоретические основы прикладной дискретной математики

№ 2(2)

УДК 519.682

О РЕШЕНИИ СИСТЕМ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ, АССОЦИИРОВАННЫХ С КОНТЕКСТНО-СВОБОДНЫМИ ЯЗЫКАМИ

О.И. Егорушкин, Д.А. Калугин-Балашов, К.В. Сафонов

Красноярский государственный аграрный университет, Сибирский федеральный университет, г. Красноярск

E-mail: safonovkv@rambler.ru

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

Ключевые слова: контекстно-свободные языки, системы алгебраических уравнений, некоммутативное кольцо, коммутативный образ, граф инцидентности.

Обычно формальным языком Ь называют множество цепочек в алфавите {хь..., хп}, выделенных с помощью конечного набора правил. Выделенные цепочки, принадлежащие свободной полугруппе {хь..., хп} , называются при этом словами (над алфавитом) либо правильно построенными предложениями (над словарем), либо грамматически правильными предложениями. Конечное множество правил, с помощью которых выделяются цепочки, называют грамматикой. Таким образом, формальный язык определяется совокупностью соответствующих правил и способом выделения цепочек с помощью этих правил.

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

Рассмотрим играющее роль словаря конечное множество X = {хь, ..., хп}, состоящее из слов х1 языка и называемое терминальным множеством, а также 7 = &, ..., zm} - множество вспомогательных символов z^, необходимых для задания грамматических правил, называемое нетерминальным множеством. Обозначим Ж = (Xи7) = ({хь ..., хп} и ..., zn}) - свободную полугруппу относительно операции конкатенации; ее элементами являются произвольные цепочки, составленные из элементов «расширенного» алфавита {хь ., хп, z1, ., zn} - соответствующая свободная полугруппа относительно операции.

Дополним её операцией формального сложения «+» мономов из множества Ж* (вместо суммы можно взять объединение «и», следуя [1]), а также коммутативной операцией умножения мономов на (целые) числа. Таким образом, можно рассматривать не только многочлены, но и формальные степенные ряды с числовыми (как правило, целыми) коэффициентами от некоммутативных переменных.

Кс-грамматика есть совокупность правил подстановки, которые каждому нетерминальному символу ставят в соответствие некоторый моном от терминальных и нетерминальных символов:

при этом z1— особый, выделенный символ - начальный символ предложения (или программы). Правилам подстановки ставится в соответствие [3] система полиномиальных уравнений: каждому вспомогательному символу Zj, содержащемуся в левой части подстановки, сопоставляется уравнение Zj = pj (х, z), где

и кс-языком называется [3, 4] первая компонента Zj решения ^(х), ..., zm(x)) этой системы полиномиальных уравнений, получаемого методом последовательных приближений:

В результате итераций каждая компонента г,- выражается формальным степенным рядом, причем кс-язык и есть тот формальный степенной ряд, который представляет выделенный символ

PJ(x, z) = fbCx z) + — + fj qJ (X z).

Таким образом, кс-грамматике соответствует система полиномиальных уравнений

Zj = Pj (x, z), j =1, ..., m,

(1)

zi = Z < zi > wi > wi.

(2)

Здесь < z\,Wj > - числовой коэффициент, с которым моном Wj от некоммутативных переменных входит в ряд z1. Мономы Wj являются грамматически правильными предложениями, которые могут быть построены в

данном языке из слов хь, ..., хп этого языка, а весь ряд (2), т.е. формальная сумма всех правильных предложений, и является данным кс-языком. Построение системы уравнений (1) по грамматическим правилам языка приведено выше, причем условие того, что язык является контекстно-свободным, состоит также и в том, что многочлены pj (х, z) не содержат мономов Zj и е, где е - пустая цепочка. Таким образом, существование и единственность решения системы (1) обеспечивается её специфической структурой в совокупности с методом последовательных приближений.

Рассмотрим общий случай, а именно ассоциированную с контекстно-свободными языками произвольную систему алгебраических (полиномиальных) уравнений:

ц(х, z) = 0, 1= 1, ., т. (3)

Решением этой системы назовем выражение символов zi в виде формальных степенных рядов от х, подстановка которых в многочлены ^(х, z) обращает их в нуль. Нас интересует, каковы условия, при которых система (3) имеет такое решение, и способ получения искомых рядов.

Поставим в соответствие формальному степенному ряду (многочлену) ряд (многочлен) с комплексными переменными, задав отображение терминальных х1 и нетерминальных zi символов из множества X и 2 в

множество комплексных переменных, причем оставляем за ними прежние обозначения, тогда (х, г) е С”+и .

Таким образом, получаем фиксированный гомоморфизм, который ставит в соответствие формальному ряду (2) его коммутативный образ - степенной ряд от комплексных переменных

сг(г) = £ акгк ,

к кі к

где ак2 = ак1,...,к„ V -2і

ак = ^ < Г Щ > ,

# X )=к1,...,# х„ (wj )=к„

символ #е(ф означает число вхождений символа с в моном ^. Коммутативный образ кс-языка является алгебраической функцией, голоморфной в некоторой окрестности нуля, как показывают оценки коэффициентов степенного ряда.

Имеет место следующая Теорема 1. Если выполнено условие

* 0, (4)

то система (3) имеет единственное решение в виде формальных степенных рядов, выражающих вектор-функцию z через компоненты вектора х.

Для доказательства заметим, что если формальные ряды z = z(x) удовлетворяют системе уравнений д(х, z) = 0, то выполняется условие

сг(д(х, сг^(х)))) = 0.

И хотя обратное, вообще говоря, не верно, условие (4) для якобиана J обеспечивает существование и единственность решения системы с1(д(х, z)) = 0; обозначим это решение сг^(х)). Учитывая, что условие (4) означает линейную независимость градиентов коммутативных образов многочленов, а также метод мономиальных меток, предложенный в [4], получаем отсюда, что это решение действительно является коммутативным образом некоторого решения исходной некоммутативной системы.

Далее, в силу невырожденности матрицы Якоби в начале координат, можно сделать линейную замену переменных zi, в результате которой эта матрица становится единичной, что и приводит систему (3) к виду (1), в результате чего её можно решать методом последовательных приближений. Искомые ряды равны линейной комбинации получаемых рядов.

Рассмотрим теперь системы линейных алгебраических уравнений над некоммутативным кольцом, тесно связанные с линейными языками [1]. Возможные методы решения этих систем в виде рядов должны учитывать как некоммутативность переменных по умножению, так и отсутствие операции деления в кольце Ж. Нам понадобятся некоторые определения.

Ь-операторами называются отображения Ь : W ^ Ж, действие которых заключается в умножении элемента кольца Ж слева и справа на некоторые мономы I и г: Ь(г) = I ■ z ■ г. Ь^) = I• z• г.

Основные свойства Ь -операторов:

1) Ь(а^\ + Pz2) = аЬ^) + увЬ^г) (линейность);

2) если Ь1 (г) = 11гг1 и Ь2 (z) = 12zr2 , то Ь1 (Ь2 (г)) = Ь1 (/2гг2) = 1112гг2г1 = Ьъ (г) (композиция Ь-операторов является Ь-оператором).

к

П

10

О.И. Егорушкин, Д.А. Калугин-Балашов, К.В. Сафонов

Уравнение/(гх, ..., гт) = g(z1, ..., гт) называется приведенным, если не существует такого ^-оператора Я, чтогт) = Я(/\(г\, ., гт)) и g(z1, ., гт) = Я^\(г\, ., гт)). Если уравнение не является приведенным, то

его можно привести к эквивалентному, отбросив оператор Я.

Система линейных алгебраических уравнений порядка п над некоммутативным кольцом имеет вид

2 А,1,к Ц1,1,к ( 21 ) + 2 А,2,кЦ1,2,к ( 22 ) + — + 2А,п,кЦ1,п,к ( 2п ) = 2 Фі,к Ф1,к, к к к к

212,1,кЦ2,1,к (.21 ) + 2 ^2,2,кЦ2,2,к (г2 ) + ••• + 212,п,кЦ2,п,к (.2п ) = 2 ф2,кФ2,к , к к к к

21п,1,кЦп,1,к (21 ) + 21п,2,кЦп,2,к (22 ) + ‘ * * + 21п,п,кЦп,п,к (,2п ) — 2 фп,кФп,к’ к к к к

где /уд, ф/)к - действительные коэффициенты; Ь^к(г) - ^-операторы; Фд - мономы. Можно считать, что все уравнения системы являются приведенными.

Покажем, как исключать из данной системы одно неизвестное и одно уравнение. Исключаем, например, неизвестное 2п. Для каждого уравнения системы оставим все слагаемые с 2п в левой части, а все остальные слагаемые перенесем в правую часть, переписав систему в виде

211,п,кА,п,к (2п ) = 2 ФіДФ1,к - 211,1,кА,1,к (21) - •••- 211,п-1,кА,п-1,к (2п-1), к к к к

212,п,к ^2,п,к (.2п ) = 2 ф2,к Ф 2,к - 212,1,к ^2,1,к (21 )-••• - 212,п-1,к ^2,п-1,к (гп-1 ), к к к к

21п,п,к^п,п,к (2п ) — 2 фп,кФп,к 21п,1,кАп,1,к (21 ) ••• 21п,п-1,кАп,п-1,к (,2п-1 )^

к к к к

Построим граф с п вершинами, г-я вершина которого соответствует £ А.иД А>и>к (ги). Вершины г и у инк

цидентны, если существуют такие ^-операторы Яі]- и Я]- г, что выполняется равенство

^г/ ^2 А,и,к А',и,к (2и ) | _ ^/г ^^,п,кА,п,к {2п ) | .

При этих обозначениях и условиях имеет место Теорема 2. Порядок п системы линейных алгебраических уравнений можно понизить до п — 1, если существует вершина г, смежная всем остальным вершинам. Каждому ребру, инцидентному вершине г, соответствует одно уравнение новой системы. Очевидно, что таких ребер будет п — 1, следовательно, и порядок новой системы будет п - 1 (при выполнении условий теоремы ДЛЯ ОДНОЙ вершины граф ИНЦИ- | 0. дентности имеет вид, например, такой, как на рис. 1).

В случае выполнения условий теоремы 2 полученная система запишется в виде

п - 1

Рис. 1. Граф инцидентности вершины г

Яг ,1 I 2 Фг, к Фг, к 2 К ,1, к Аг ,1, к (21) • • • 2 К, п—1, к Аг, п—1, к (2п—1) I -

- Я1,г I 2 ф1,кФ1,к 2 А,1,кА,1,к (21 ) ••• 211,п—1,кА1,п—1,к (2п—1 )1;

Яг,2 I 2 фг,кФг,к 2 А,1,кАг,1,к (21 ) ••• 2А,п—1,кАг,п—1,к (2п—1 )1-

- Я2,г | 2 ф2,кФ2,к 2^2,1,кА2,1,к (21 ) ••• 2^2,п—1,кА2,п—1,к (2п—1 )|;

к к к

Яг,п I 2 фг,кФг,к 21г,1,кАг,1,к (21 ) • 21г,п—1,кАг,п—1,к (2п—1 ) I -

Яп,г | 2 фп,к Фп,к 21п,1,к Ап,1,к (21 ) •* 21п,п—1,к Ап,п—1,к (2п—1 ) ]•

к к к

Используя свойство линейности ^-оператора, преобразуем эту систему к виду

2 А,и-1,к,1 (^г,и-1,к (2и-1 )) _

к

к

к

2 Ф1,кВ1,г (Ф1,к ) 2Ад,кВ1,г (А,1,к (21 ))

к

к

к

к

к

к

2 фг,к,и (Фг,к ) 2А,1,к,и (г,1,к (г1 ))

к к

к

_ 2 фи,кВи,г (Фи,к ) 2 А,!,кВи,г (и,1,к (г1 ))

к

к

Так как композиция ^-операторов есть ^-оператор, то полученная система является системой линейных алгебраических уравнений (над некоммутативным кольцом), её порядок равен п - 1. Тем самым порядок системы понижен на единицу, исключена неизвестная хп.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1. Глушков В.М., Цейтлин Г.Е., Ющенко Е.Л. Алгебра, языки, программирование. Киев: Наукова думка, 1974.

2. Семёнов А.Л. Алгоритмические проблемы для степенных рядов и контекстно-свободных грамматик // Докл. АН СССР. 1973. Т. 212. С. 50 - 52.

3. Сафонов К.В. О возможности вычислительного распознавания контекстно-свободных языков // Вычислительные технологии. 2005. Т. 10. № 4. С. 91 - 98.

4. Сафонов К.В., Егорушкин О.И. О синтаксическом анализе и проблеме В.М. Глушкова распознавания контекстносвободных языков Хомского // Вестник ТГУ. Приложение. 2006. № 17. С. 63 - 66.

ЛИТЕРАТУРА

i Надоели баннеры? Вы всегда можете отключить рекламу.