Научная статья на тему 'Альфа-матрицы и граф-порожденные грамматики'

Альфа-матрицы и граф-порожденные грамматики Текст научной статьи по специальности «Математика»

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

Аннотация научной статьи по математике, автор научной работы — Цветов В. П.

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

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

ALPHA-MATRIX AND GRAPH-GENERATED GRAMMARS

In this paper we consider the extension of graph-generated grammars based on their matrix representations. We study two classes of graph-generated grammars associated with the vertex and edge marking of graphs. We define alpha-matrices over a semiring of languages specified by finite alphabet A and then define the corresponding matrix algebras. These concepts are then used for constructive representation of graph-generated languages and research of their equivalence. We define a matrix-generated grammars as a natural superclass of graph-generated grammars. All the proofs are illustrated by examples.

Текст научной работы на тему «Альфа-матрицы и граф-порожденные грамматики»

28

Вестник Самарского университета. Естественнонаучная серия. 2017. № 1

УДК 519.713.34:519.171

В.П. Цветов1

АЛЬФА-МАТРИЦЫ И ГРАФ-ПОРОЖДЕННЫЕ ГРАММАТИКИ

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

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

1. Предварительные сведения

Статья развивает подход к представлению формальных грамматик предложенный в [1], который использует графы в качестве инструмента порождения языков. Любой маршрут в вершинной форме на графе является словом некоторого языка над алфавитом, который образован множеством вершин или связанными с ними метками. Задавая совокупности начальных и конечных вершин маршрутов, а также их метки и длины, можно конструктивно определять различные языки на основе имеющихся графовых алгоритмов. В [1] показано, что множество подобных языков, названных С-языками, является строгим надмножеством регулярных языков.

Аналогичный подход может быть применен к реберно размеченным графам и маршрутам в реберной форме. Возникающие при этом языки так же названы С-языками. Языки, связанные с вершинной разметкой названы языками вершинного типа, а с реберной— языками реберного типа.

Естественный класс алгоритмов нахождения маршрутов на размеченных графах образуют алгоритмы, использующие правило матричного произведения для матриц с элементами из полукольца языков, заданных над алфавитом А. Таким образом, С-языки допускают реализацию посредством матричных алгебр и стандартных типов данных. Помимо этого матричные представления являются удобным инструментом для исследования свойств С-языков, в частности, позволяют установить совпадение классов языков вершинного и реберного типов, или построить расширение класса граф-порожденных языков до класса матрично порожденных языков.

Различные виды полуколец и матричных алгебр над полукольцами традиционно используются в таких областях, как компьютерная алгебра [2-3], теория автоматов [4], оптимальное управление [5], формальные языки [6-8], теория бинарных отношений [9; 10] и др. Таким образом, применение аппарата матричных алгебр является естественным для моделирования генеративных грамматик.

Замечание 1.1. В [1] обнаружены следующие опечатки:

стр. 103, 17 строка снизу: вместо := е, тт+1 := тт о т следует читать := е, := о ж;

стр. 103, 12 строка снизу: вместо ) € Р и Ш1 ^ следует читать (те^, ж 2) € Р и те^ ^ Ж2, соответ-

ственно;

стр. 105, 2 строка сверху: вместо ■Ъ,11х^хМо (Од) следует читать хиО^); стр. 105, 12 строка сверху: вместо хМо(О^) следует читать Ьп1х 1хц(ОА); стр. 105, 20 строка сверху: вместо Ь'п1х1 -^¡(Од) следует читать Ь'п1х1 хМо(Од); стр. 105, 22 строка сверху: вместо следует читать | г € I};

Цветов В.П., 2017

Цветов Виктор Петрович ([email protected]), кафедра безопасности информационных систем, Самарский национальный исследовательский университет имени академика С.П. Королева, 443086, Российская Федерация, г. Самара, Московское шоссе, 34.

стр. 105, 25 строка сверху: вместо F := {Sj | j G J} следует читать F := {Sj | j G J} U | i G I}; стр. 106, 1 строка сверху: вместо {L a, (о)) следует читать (L+, (o)^.

Далее в статье используются обозначения и определения, введенные в [1].

2. Основные результаты

Рассмотрим конечный алфавит A := {a 1,..,an} и множество слов LД над этим алфавитом. Пусть, как и ранее, {Ь*Л, (о))—моноид слов над алфавитом A с операцией сцепления (конкатенации) слов, 2La — булеан над LД, а е—пустое слово.

Пусть L1,L2 С LД —языки, над алфавитом A. Стандартныи образом определим операции объединения и сцепления языков

Li U L2 := {w | w G Li V w G L2},

Li о L2 := {w := w1 о w1 | w1 G L1 A w2 G L2}.

Понятно, что для любых языков L1,Lf2,Li3 С LA выполняются равенства

L1 U$ = $U L1 = L1,

L1 o$ = $o L1 =

L1 о {е} = {е} о L1 = L1,

L1 о (L2 u L3) = (L1 о L2) U (L1 о L2),

(L2 u L3) о L1 = (L2 о L1) U (L3 о L1).

В дальнейшем будем рассматривать некоммутативное полукольцо с единицей (2La, (о, U^.

2.1. Альфа-матрицы

Пусть а : 1..n х 1..m ^ 2La —тотальная функция. Обозначим aij := a(i,j).

Определение 2.1. В предыдущих обозначениях будем называть альфа-матрицей или а-матрицей (размерности n х m над алфавитом A) матрицу (aij ).

Обозначим МП'т—множество а-матриц размерности n х m.

Пусть (а1 ), (a2j) G МП*т. Стандартныи образом определим операции их прямого произведения, объединения и транспонирования, полагая

nxm nxm

(а%) ® (ац) := Н ° ац) е М (а%) И (а%):= (а% и а%) е М^хт,

)т .= (а]г) е мтхп.

Пусть (а%) е М"хе, (а2%) е . Стандартныи образом определим операцию их произведения (по

правилу «строка на столбец»), полагая

(а\и) © (a2kj) := (aij) := ( J a\k о ) G Щ

к=1

Пусть (а%) е М"хп. Для любого т е N определим (а%)т+1 := (а%)т © (а%) е М"хп, где (а%)1 := (а%). Определим а-матрицы (епхт) е М"хт (5пхп) е М"хп, полагая

еП^т ':= М, для всех ',3 е 1..п; ¿пхп ,= \ Ы, если ' = 3 Л ' е 1..П г% | если ' = 3 Л е 1..п .

Понятно, что для любой а-матрицы (а%) е М"хт справедливы равенства

(а%) © (Пт) = (Пт) ® (а%) = (а%),

i j J v-ij K-"-i] ) VJ-iji

"¿Г) = (*ПП © (akj) = (aij)

В дальнейшем будем рассматривать некоммутативные полукольца с единицей (МПхт, (<8>, и

л

xn f^

л

(M^xn, (©, w)).

2.2. Представление граф-порожденных грамматик альфа-матрицами 2.2.1. Граф-порожденные грамматики вершинного типа

Напомним определение граф-порожденной грамматики [1].

Рассмотрим граф ОЕ, заданный множеством вершин V := 1..п := {1, 2, ..,п} и бинарным граф-отношением Е С 1..п х 1..п. Зададим конечный алфавит А := {а1,..,ап1} мощности П1 ^ п, возможно содержащий в себе пустое слово е, и тотальную сюръекцию шп : 1..п ^ А. Обозначим Ь+—множество непустых слов над алфавитом 1 ..п.

Рассмотрим моноид {ЬА, (о)) и определим тотальную функцию ш : Ь+ ^ ЬА правилом

и({го.лт)) = ш(гог1 ...гт) := шп (го) о шп(г1) о ... о шп(гт) = ж € Ь*А.

Обозначим Щ - т (ОЕ) С Ь+- множество маршрутов в вершинной форме длины т на графе ОЕ из вершины г в вершину ]. В случае т = 0 для любого ] € 1..п полагаем Ь%- оОЕ) := {г}. Рассмотрим функцию П : 2Ь+ ^ 2Ьа , индуцированную функцией ш:

0,(Ь) := {ж := ш(гог1 ...гт) | гог1 ... гт € Ь С Ь+} С Ь*А.

Определение 2.2. В предыдущих обозначениях будем называть граф-порожденными языками или С-языками (над алфавитом А) языки

ьм (ОЕ , А,шп):= у ОД,- т(ОЕ)),

(гт)еМ

где 0 = М С 1..п х 1..п х Мо. В случае одноэлементных множеств М = {(го]о,то)} соответствующие С-языки будем обозначать Цо-0 то (ОЕ, А,Шп).

Граф-порожденными грамматиками или С-грамматиками (над алфавитом А) будем называть четверки

{ОЕ, А, Шп,М).

Языки и грамматики, фигурирующие в определении 2.2. будем также называть С-языками и С-грамма-тиками вершинного типа или у-типа, а граф ОЕ — порождающим графом.

Рассмотрим граф-порожденную грамматику {ОЕ, А,шп ,М) и ее порождающий граф ОЕ.

Пусть (дп)—матрица смежности вершин графа ОЕ. Определим а-матрицу (а- ) € М"Пхп, полагая

а

:= { := 0,

шп(г)}, если дП = 1 А г,] € 1..п

г] ' 1 0- если дп =0 А г] € 1..п '

Определим а-матрицу (а]) € Мпхп, полагая

г3>

,Д -

а] := {шп(г)}, для всех г€ 1..п. Рассмотрим а-матрицу (а]) := (а] ) 0 (а])Т. Понятно, что

1 I {ш(г])}, если дгп = 1

I {ш(г])},

0,

а = .

а'г] 1 0, если дп = 0 '

Таким образом, элемент а-матрицы а1- содержит слово языка Щ- 1(ОпЕ, А,шп), соответствующее маршруту длины 1 на графе ОЕ из вершины г в вершину ], если такой маршрут существует, и пуст, в противном случае.

Рассмотрим а-матрицу (а2) := (а] )2 0 (а])Т. Понятно, что

а2 = У {ш(гкз)}-

у2-г]

Таким образом, элемент а-матрицы а2 содержит все слова языка Ь- 2(ОЕ, А,шп), соответствующие маршрутам длины 2 на графе ОЕ из вершины г в вершину ], если такие маршруты существуют, и пуст, в противном

случае.

Аналогичным образом рассматривая а-матрицу (а.т) := (а- )т 0 (а])Т, получаем, что ее элемент ат

содержит все слова языка Щ - т(ОЕ, А,шп), соответствующие маршрутам длины т из на графе ОЕ вершины г в вершину ], если такие маршруты существуют, и пуст, в противном случае.

В терминах С-языков вершинного типа сказанное означает то, что справедлива следующая

Лемма 2.1. С-язык вершинного типа допускает представление

ЬМ(СпЕ, Л,Шп):= У ^ЬтСЕ)) = У

%'

(г %, т)еМ

(г т)еМ

где

(а%) := {

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

= \ (а% )т © (а%)Т, если 0 = М С 1..п х 1..п х N

(аг%),

если 0 = М С 1..п х 1..п х {0}

Замечание 2.1. В определении 2.2 единственный маршрут нулевой длины из вершины ' в вершину 3 на графе ОтЕ полагается равным самой вершине ' для любого значения 3 е 1..п. В [1] показано, что определенный таким образом С-язык вершинного типа, является регулярным.

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

ту (Пп\ — \ если 'У'3) е Е

Ьг%,с(СЕ) = 1 0,

если (',3) е Е

Распознающий такой язык конечный автомат можно определить следующим образом:

5 := {Б-г | г е IЛ 33 3 е 3 Л (г,з) е Е} и {Бс, Б1,...,Бп, Бп+1}-, X := Л; «с := Бо;

Б-г, если г е Iлзз3 е 3л (г,з) е Е Бп+1, если г е 1..п л г е I '

5(Йс,шп(г)) :

ё(Бишп(з)) :={ Б, если г,3е 1..п Л Н е Е ;

\ Бп+1, если г,з е 1..п Л (г,з) /Е ' 5(Б-г,Шп(3)) := 6(Бг,Шп(3)), если ' е I Л 333 е 3 Л (', 3) е Е; 6(Бп+1,Шп(г)) := Бп+1, если ' е 1..п; ^ := {Б% 13 е з}и {Б-г | г е IЛ 33 з е 3 Л (г,з) е Е}.

Для подобных языков справедлива

Лемма 2.2. Определенный в текущем замечании С-язык вершинного типа допускает представление

ЬМ(СЕ, Л,Шп):= и П'ЬЬ,т(СЕ))= и а™,

(г,],т)ем (г,],т)€М

где

(а™) ■= |

(а9% )т © (а%)Т, если 0 = М С 1..п х 1..п х N

(а% ),

если 0 = М С 1..п х 1..п х {0}

Пример 2.1.

Рассмотрим порождающий граф С4Е, заданный граф-отношением

Е := {(1, 2), (1, 3), (2,4), (3, 4)} С 1..4 х 1..4,

и его матрицу смежности вершин

0110 0 0 0 1 0 0 0 1 0000

Зададим алфавит Л := {а,Ь} и тотальную сюръекциию : 1..4 ^ Л, полагая

(4) -

ш4(1) := а, ш4(2) := Ь, Ш4(3) := а, Ш4(4) := а.

4

В данном случае порождающие матрицы (а% ), (а%), фигурирующие в формулировке леммы 2.1, будут

иметь вид

(а% ) :=

( 0 {а} {а} 0 \ {а} {а} {а} {а}

0 0 0 {Ь} , (а%):= {Ь} {Ь} {Ь} {Ь}

0 0 0 {а} {а} {а} {а} {а}

0 0 0 0 {а} {а} {а} {а}

Непустые множества маршрутов в вершинной форме длины т > 0 на графе СЕ и соответствующие им

т

языки имеют вид

где

ТУ

Ь1,2 ТУ

Ь1,3

ТУ

Ь2,4

ТУ

Ь3,4

ТУ

Ь1,4

ТУ

Ь1,2 ТУ

Ь1,3

ТУ

Ь2,4

ТУ

Ь3,4

ТУ

Ь1,4

1(ОЕ ) = {12},

1(О3Е ) = {13}, 1(ОЕ ) = {24}, 1(ОЕ ) = {34}, 2(ОЕ ) = {124,134},

1(ОЕ, А,Ш4) = {аЬ} = аХ12, 1(ОЕ, А,Ш4) = {аа} = а\3, 1(ОЕ, А,Ш4) = {Ьа} = а24, 1(О4Е, А, Ш4) = {аа} = а\4, 2(ОЕ, А, Ш4) = {ааа, аЬа} = а24,

(а- ):= (а-) 0 (а])Т

0 {аЬ} {аа} 0 0 0 {Ьа}

0 0 {аа} \ 0 0 0 0 )

(0 0 0 {ааа,аЬа} \

(а2]) := (а- ? 0 (а])Т

2.2.2. Лемма о прямом произведении

Пусть (а—), (в—) € Мпхп— а-матрицы размерности п х п над алфавитом А, причем Уг1,г2,з € 1..п ¡3^- = = , то есть все элементы, находящиеся в одном столбце матрицы (в—) совпадают. Рассмотрим а-матрицу (^г-) € М^х2п, элементы которой определены правилом

аг], если г,] € 1..п := \ ви, если г € 1..п А ] = п + г .

0, если (г € 1..п А ] = п + г) V (г,] € п +1..2п)

Обозначим

(ат) := (ацГ = (а- )Г-1 © (а-) = ( а^-1 о а-)

к=1 2п

Ю := Ы)т = Ы)т-1 © (Ъ]) = (и ^Гк-1 о 1к]),

к=1

(ПГ) := (ац)Г 0 (в-) = (аГ о вц)■

Понятно, что если г,] € 1..п и т> 1, то

1Г := и ^Гк-1 о 1к] к=1

Если же г € 1..п А ] € п + 1..2п, то

2п п

Г1

^1Гк-1 о 1к]

к=1

и

к=1

Г 1 Г

агк о ак] = аг] .

1Г := и ^Г-1 о 1к] = и 1Г-1 о 1к] = 1Г-1 о 3]] = аГ-1 о вг- = г,Г-1.

к=1

к=1

Положим 7Г := ^Гц+п), при г,] € 1..п, и рассмотрим а-матрицу (7Г) € М^хп, являющуюся подматрицей матрицы (уГ).

В силу ранее сказанного справедлива

Лемма 2.3. С учетом введенных обозначений при т ^ 1 имеет место равенство

(агц )Г 0 (вц ) = (%+Х)-

Из лемм 2.1-2.3 вытекают

Следствие 2.1. С-язык вершинного типа допускает представление ЬУМ(ОЕ, А,шп):= и П(ЬУ-т(ОпЕ))= и аГ

(г-Г^^м

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

г] :

(гц^^м (гц^^м'

и

где

ч

_ 1 (а9ц )™ © (ай)Т, если 0 = М С 1..п х 1..п х N

К)■= О

(а£), если 0 = М С 1.п х 1..п х {0}

а- , если г] £ 1..п 7п ■ = ^ аЦ, если г £ 1..п Л ] = п + г

0, если (г £ 1..п Л ] = п + г) V (г] £ п + 1..2п)

=

МI ■ I {(г,] + п,т + 1) I (г,], т) £ М}, если 0 = М С 1..п х 1..п х N ■ {(г, г + п,т + 1) | (г,],т) £ М}, если 0 = М С 1..п х 1..п х {0} '

Следствие 2.2. Определенный в замечании 3.1 О-язык вершинного типа допускает представление

ЬМ(СЕ, А,ип): = У ПЩ^СЪ))= У а™ = и ^,

{г,],т)еМ (г,],т)€М (г,],т)еМ'

где

(а™) ■ = |

I (Ы

т) ■ , аП)т © (а£), если 0 = М С 1..п х 1..п х N

М'

{

ю ' (а9- ), если 0 = М С 1..п х 1..п х {0}

{(г,] + п,т +1) I (г], т) £ М}, если 0 = М С 1..п х 1..п х N {(г,з,т + 1) | (г,з,т) £ М}, если 0 = М С 1..п х 1..п х {0} .

Следствие 2.3. Лемма 2.3 и следствия 2.1, 2.2 остаются справедливыми, если определять элементы а-матрицы (^) £ М'2П+кх2п+к при произвольном к £ N правилом

1гз ■ = \

агз, если г,] £ 1..п

а^г, если г £ 1..п Л ] = п + г

0, если (г £ 1..п Л ] = п + г) V (г,] £ п + 1..2п) .

0, если г £ 2п +1..2п + к Л ] £ 1..2п

0, если г £ 1..2п + к Л ] £ 2п +1..2п + к

Пример 2.2.

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

I 0 {а} {а}

Ы) ■=

\

{Ь}

{а}

{а}

{Ь}

\

{а}

{а}

При этом выполняются легко проверяемые равенства

Ь] 2 \(САЕ, А, ш4) = {аЬ} = а

г V

12

11Ъ

Ь1,3,1(СЕ, А,ш4) = {аа} = а]3 = 117,

Ь2АЛ(СЕ, А ш4)

{Ьа}

13 1

*24

2

728,

Ц,4,1 (СЕ, А,ш4) = {аа} = а34 = 738,

М,4,2(СЕ, А ш4)

{ааа, аЬа} = а

14

где

Ы ) ■ =

Ы )2

{аа, аЬ} 0 {аЬ} {аа}

{Ьа} {аа}

1

(1%) := Ы? =

{ааа, аЬа}

а матрицы (а1-), (а2-) определены в примере 2.1.

2.2.3. Граф-порожденные грамматики реберного типа

Наряду с маршрутами в вершинной форме на графе ОЕ рассмотрим маршруты в реберной форме. Маршрут в реберной форме на графе ОЕ из вершины го в вершину гГ будем обозначать {^^^..^„^^т]) := = (го, г1), (г1,г2), ., (гт-2,гт-1), (гт-1 ,гт) € Ь+

Обозначим Ц- Г(ОЕ) С Ь+- множество маршрутов в реберной форме длины т из вершины г в вершину ]. В отличие от предыдущего будем рассматривать только маршруты ненулевой длины.

Как и ранее, зададим конечный алфавит А := {а1,..,ап1} мощности п1 ^ Е1 возможно содержащий в себе пустое слово е, и тотальную сюръекцию Ше : Е ^ А. Определим тотальную функцию ш : Ь+ ^ Ь*А правилом

ш({[гог1]..[гт-1гт])) := Ше((го, г1)) о Ше((г1,г2)) о .. . о Ше((гт-1, гт)) = ж € ЬД.

Рассмотрим функцию П : 2Ь+ ^ 2Ьа , индуцированную функцией Ш.

Определение 2.3. В предыдущих обозначениях будем называть граф-порожденными языками реберного типа или С-языками е-типа (над алфавитом А) языки

ЬМ (ОЕ, А,ШЕ ):= и П(Ц-, Г(ОЕ )),

(г -, ш)ем

где 0 = М С 1..п х 1..п х N. В случае одноэлементных множеств М = {(го]о,то)} соответствующие С-языки будем обозначать Ц0ц0,т0 (ОЕ, А,Ше).

Граф-порожденными грамматиками реберного типа или С-грамматиками е-типа (над алфавитом А) будем называть четверки {ОЕ, А,Ше ,М).

Определим а-матрицу (а] ) € Мпхп, полагая

:=

{ше((г]))}, если дп = 1 А г] € 1..п

дп

если дп =0 А г,] € 1..п

Проводя рассуждения, аналогичные проведенным при обосновании справедливости леммы 2.1, легко показать, что справедлива

Лемма 2.4. С-язык реберного типа допускает представление

ьм (ОпЕ, А,Шп):= и П(ЬУ-т(ОпЕ ))= и аГ,

(гц,Г)ем (гц,Г)ем

где (аГ) := (а-)™. Пример 2.3.

Рассмотрим порождающий граф О4Е, определенный в примере 2.1. Зададим алфавит А := {а,Ь,с} и тотальную сюръекциию : Е ^ А, полагая

Ше((1, 2)) := а,ШЕ((1, 3)) := Ь,ШЕ((2,4)) := С,ШЕ((3,4)) := с. овке леммы 2.4, буде ( 0 {а} {Ь} 0 \

Матрица (а9г -), фигурирующая в формулировке леммы 2.4, будет иметь вид

(а- ) :=

0 0 0 {с}

0 0 0 {с} 0 0 0 0

Непустые множества маршрутов в реберной форме длины т > 0 на графе СЕ и соответствующие им языки имеют вид

Ье1,2,1(С3Е) = {(1, 2)},

Ь1,3,1(С3Е) = {(1, 3)},

Ье2,4,1(С3Е) = {(2, 4)},

ЬезЛЛ(С3Е) = {(3, 4)},

Ье1 , 4 ,2(С%)= {(1, 2)(2, 4); (^3), (3,4)},

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

Ье1 , 2 ,1(С4Е, А,ШЕ) = {а} = а12,

Ь1зА(С4Е, А,Ше) = {Ь} = а.1з,

ЬР2,4,1(С4Е, А,ШЕ ) = {с} = а.24,

Ь3,4,1(С4Е, А,Ше) = {с} = аз4,

Ьг,4,2(СЕ, А,Ше) = {ас, Ьс} = а214,

где

(а%) ■ = (агз? =

{ ас, Ьс}

0 0 0 0

2.3. Лемма о вершинном представлении

Определение 2.4. Будем назыаать а-матрицу (аг^) £ МП*™ матрицей вершинного типа, если

У г £ 1..п,]1,]2 £ 1..тагз! = аг^2.

п

Рассмотрим матрицу (а^) £ МП*п и определим алфавит А ■ = аг^.

г,з=1

Непустые элементы матрицы (а^) будем интерпретировать как метки соответствующих ребер (г]) £ Е ■= = {(г,]) I агз = 0} графа СЕ.

Если определить тотальную сюръекцию Ше ■ Е ^ А правилом Ше((г,])) ■ = а= 0, то в силу леммы 2.3 порожденные этим графом языки реберного типа будут иметь представление

ЬМ (СпЕ, А,Шп)■ = У ЩЬ1,т(СПЕ ))= У а™,

{г,],т)еМ (г,],т)еМ

где (а™) ■ = (аг^)т. п

Обозначим с!г—количество непустых элементов в г-ой строке матрицы (а^). Понятно, что Е1 = ^П=1 !г = = !. Занумеруем ребра графа СпЕ в порядке появления соответвующих им непустых элементов в строках матрицы (агу), начиная с первой строки. Таким образом, первые с!1 ребер будут иметь вид (1,]3) в £ 1..т1, следующие !2 ребер будут иметь вид (2,]3) в £ !1 + 1..!1 + !2, и т.д.

На множестве Е зададим бинарное отношение К С Е х Е, полагая, что ребра е3 ■ = (г3]3), вк ■ = (гк,]к) находятся в отношении К, если ]3 = гк, то есть, если ребро е3 входит в вершину ]3, а ребро исходит из нее.

На множестве вершин 1..! зададим граф-отношение Ед, полагая (в, к) £ Ед, если (е3,вк) £ К. Определим граф СЕН. Понятно, что к-ой вершине графа СЕН соответствует к-ое ребро графа СЕ. Зададим метки вершин графа С"та в соответствии с метками ребер графа СЕ, то есть определим тотальную сюръекцию ша ■ 1..! ^ А, полагая

ша(в) ■ = аг3з3 для всех в £ 1..!,

где (г3,]3) = в3— в-ое ребро графа СЕ.

Пусть (д3,к)—матрица смежности вершин графа СаЕя. Как и ранее, определим а-матрицу (а9вк), полагая

а

=

{ша(в)}, если д^к = 1 Л в, к £ 1..!

если д^к =0 Л в, к £ 1..!

дк ■ = I с^ил Узк

зк ■ 1(71 если да

Рассмотрим ребро е3 ■ = (г3]3) графа СпЕ, исходящее из вершины г3 и входящее в вершину ]3. В этом

п Т Е,

случае агвзв = Ше((3 ]3)) = 0. Если существует ребро ек ■ = (]3,]к) графа СЕ, исходящее из вершины ]3 и

У

входящее в вершину ]к, то ад3к = ша(в) = аг^в = ше((13,03)) = 0, в противном случае адк = 0.

дк _

Таким образом, элемент а-матрицы адк содержит слово языка 1 (СЕ, А,шп), соответствующее марш-

руту длины 1 в реберной форме на графе СЕ из вершины г3 в вершину ]3, если существует маршрут длины

2 из вершины гэ через вершину в некоторую вершину ]к, и пуст, в противном случае. Это слово также принадлежит языку ЬУ к о(О%н, А,што есть соответствует маршруту длины 0 в вершинной форме из вершины в в вершину к на графе ОЕн, если полагать, что этот путь равен в для любой вершины к € 1..й. Если, как и ранее при доказательстве леммы 2.1, определить а-матрицу (а^к) € полагая

и рассмотреть а-матрицу (а1к)

аук := {ш^(в)}, для всех в, к € 1..й,

„л

(<к) 0 )

А \Т

то

1 _ ( Мй^^ если д^к

хвк

0, если д^к = 0

Таким образом, элемент а-матрицы а^ содержит единственное слово языка ЬУ к 1(О%К, А,ш¡¡), соответствующее маршруту длины 1 в вершинной форме на графе ОЕн из вершины в в вершину к, если такой маршрут существует, и пуст, в противном случае. Этому маршруту соответствует маршрут длины 2 в реберной форме на графе ОЕ из вершины гэ через вершину в вершину ]к, и, как следствие, слово а^ также принадлежит языку Ц3, ]к, 2 (ОЕ, А,Шп ).

(аГ) :=(а93к)Г 0 (а&)Т.

Рассмотрим а-матрицы (аГ-) := (а— )г Обозначим (г) := {в | еэ = (г,])}—множество индексов ребер графа ОЕ, исходящих из вершины г, {к 1 ек = (г,])}—множество индексов ребер графа ОЕ, входящих в вершину ]. Понятно, что ^ (г)

={в 1 Егт=1 <в < ЕГ=1 Лг}.

Рассуждая аналогично предыдущему, можно показать, что при т > 1

аГ =

аг]

1

и

эе^ (г)лкеК (ц)

Из сказанного, а также из леммы 2.3 о прямом произведении и ее следствий вытекает

Лемма 2.5. С учетом введенных обозначений при т > 1 имеет место равенство

--ш I I

аг- = и 1ь(к+а), (г)АкеК (])

где элементы матрицы вершинного типа ) € М^+1х2Л+1 заданы правилом

аэк, если в, к € 1..й

Ък := <

если в € 1..й А к = й + в

если (в € 1..й А к = й + в) V (в, к € й + 1..2й)

если в = 2й +1 А к € 1..2й

если в € 1..2й + 1 А к = 2й +1

и ЬГк) := Ы)

Кроме того,

:=

:= Ъ(з+4),

если (г]) = еэ € Е

1(2й+1)(2й+1), если (г,]) € Е

Пример 2.4.

Рассмотрим порождающий граф ОЕ, а-матрицу и О-языки реберного типа, определенные в примере 2.3. Примем следующую нумерацию ребер графа О4Е:

е1 := (1, 2),е2 := (1, 3),е3 := (2, 4),е4 := (3,4).

Бинарные отношения К С Е х Е и Еп С 1..4 х 1..4, фигурирующие в предыдущих рассуждениях, будут иметь вид:

К := {(е1,е3), (е2,е3)}, Еп := {(1, 3), (2, 3)}.

В этом случае

(ак =

0 0 {а} 0 {а} {а} {а} {а} \

0 0 0 {Ь} , (а& ) = {Ь} {Ь} {Ь} {Ь}

0 0 0 0 {с} {с} {с} {с}

0 0 0 0 {с} {с} {с} {с} )

^(1) = {1, 2}, ^(2) = 13}, ^(3) = {4}, ^(4) = 0, К(1) = 0, К(2) = {1}, К(3) = {2}, К(4) = {3,4}.

и

Соответствующая им матрица (73к), фигурирующая в формулировке леммы 2.5, будет иметь вид

0 0 {а} 0 {а} 0

0 0 0 {Ь} 0 {Ь}

(13к) ■ =

\

{с}

{с}

0 0 0 0 0 При этом выполняются легко проверяемые равенства

Ь1,2,1(С%, А,ШЕ) = {а} = а.12 = 415,

Ье1 , 3 ,1(С4е, А,ШЕ) = {Ь} = а13 = Ч2в,

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

ЬР2,4,1(С4Е, А,Ше) = {с} = а.24 = 137,

Ь3 4 1(С4е , А,ШЕ) = {с} = &34 = 748 ' ' ' - - 2

Ь1,4,2(СЕ, А,ШЕ) = {ас Ьс} = а214 = У3е{1,2}Лке{3

4}

где

{ ас}

1.3(к+4), 0 \

{Ьс}

Ык) ■ = Ы ? =

0 0 0 0 0 0 0 0 0

а матрицы а1), (а-) определены в примере 2.3.

Непосредственным следствием леммы 2.5 является

Лемма 2.6. Классы О-языков вершинного и реберного типов совпадают. Пример 2.5.

Рассмотрим порождающий граф СЕ, заданный граф-отношением

с матрицей смежности вершин

Е ■ = {(1, 2)} С 1..2 х 1..2, (д2) ■ ^ 0 1 ) .

Зададим алфавит А ■ = {а,е} и тотальные сюръекции ш2 ■ 1..2 ^ А, ш2 ■ Е ^ А, полагая

Ш2(1) ■ = е, Ш2(2) ■ = а; Ше((1, 2)) ■ = е.

2.2

В данном случае матрицы (а9^ ), (ац), (а), фигурирующие в формулировках лемм 2.1 и 2.4 будут иметь

вид

(ад2) ■ =( 0 И (а-^) ■ =( ^ ) ■ =( 0

а) ■ = ^ 0 0 ) , (агз) ■ = ^ {а} {а}) , а) ■ = ^ 0 0 ).

Понятно, что (С2е, А,Ш2) = {е} и Ь11Л(С'2Е, А,ше) = {е}. Пример 2.6.

Рассмотрим алфавит А и непустое слово те £ Ь+ длины |те| = п.

Зададим вспомогательный алфавит А1 ■ = {те[г] | г = 1..п}, где те[г]— г-ая буква слова те. Зададим порождающий граф СпЕ при помощи граф-отношения

Е ■ = {(1, 2), (2, 3),.., (г - 1,1),., (п - 1, п)} С 1..п х 1 ..п,

и определим тотальную сюръекцию шп ■ 1..п ^ А1, полагая

шп(г) ■ = те[г], для всех г £ 1..п.

Понятно, что Цпп-ЛСЕ, А1,Шп) = {те}.

Также зададим порождающий граф ОЕ+1 при помощи граф-отношения

Е := {(1, 2), (2, 3),.., (г - 1,1),.., (п,п + 1)} С 1..п + 1 х 1..п + 1. и определим тотальную сюръекцию шп+1 : Е ^ А1, полагая

шЕ((г, г + 1)) := ж[г], для всех г € 1..п. Понятно, что Ье1п+1 ,п(ОгЕ+1, А1,ше) = {ж}.

Непосредственно из результатов примеров 2.5, 2.6 следует

Лемма 2.7. Любой конечный язык над алфавитом А является С-языком (вершинного, реберного типа).

2.4. Матрично порожденные грамматики

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

Определение 2.5. Пусть {(аг-)8}^=1—последовательность а-матриц согласованных размерностей над алфавитом А, то есть (аг-)е € мnsXms и п3+1 = т3. Матрично порожденными языками или Ма-языками (над алфавитом А) будем называть языки

Ьм({(аг-)В}Т=1, А):= и

(г -, к)ем

где М С 1..п1 х 1..тк х N и

4,

k

(aij) :=Q(aij )s := (aisl h О ■■ О (ask-lj )k ■ s=1

В случае одноэлементного множества M = {(iojo,^)} соответствующие Ma-языки будем обозначать

Lio, jo, ko ({(aij )s}s = l , A).

Матрично порожденными грамматиками или Ma-грамматиками (над алфавитом A) будем называть тройки ({(a.)s}%1, A, M). Матрицы (a.)s будем называть базисными порождающими матрицами.

Пример 2.7.

При произвольном M С 1..3 х 1..3 х N определим Ma-грамматики полагая

{aa} {a, aba} 0

(aij)2s := I {bbb,aaa,ab} 0 {b}

{e} {e, a, b}

{ab,e} {b} {e} (aij)2s+l := I {a,b,e} {a} L'A { bb, aa} { e} { e}

При исследовании матрично порожденных грамматик естественно использовать графовые интерпретации базисных матриц (aj) := (a.)s, а именно, в случае ns = ms можно трактовать их непустые элементы, как вершинные или реберные метки GrE(a(s)), заданого граф-отношением

E(a(s)) := {(i,J) j aj = 0} С 1..щ х 1..^.

В случае ns = ms рассматриваются ребра соответствующих двудольных графов.

Нетрудно понять, что G-языки обоих типов являются частным случаем Ma-языков, а приведенные выше леммы при соответствующих ограничениях допускают обобщение на случай a-матриц общего вида.

Литература

[1] Цветов В.П. Об одном надклассе A-грамматик. // Вестник СамГУ. Естественнонаучная серия. 2014. №10(121). С. 102-108.

[2] Golan J.S. The Theory of Semirings with Applications in Mathematics and Theoretical Computer Science. Pitman, 1991. (Pitman Monographs and Surveys in Pure and Appl. Math.; Vol.54).

[3] Hebisch U., Weinert H.J. Semirings. Algebraic Theory and Applications in Computer Science. Singapore: World Scientific, 1998.

[4] Молчанов В.А. О матричных полугруппах над полукольцами и их приложения к теории формальных языков // Математика. Механика: сб. науч. тр. Вып. 3. Саратов: Изд-во Сарат. ун-та, 2001. С. 98-101.

[5] Маслов В.П., Колокольцов В.Н. Идемпотентный анализ и его применение в оптимальном управлении. М.: Наука, 1994.

[6] Формальные языки и автоматы I: полукольца Конвея и конечные автоматы / С.И. Алешников [и др.] // Вестник Калининградского государственнного университета. 2003. Вып. 3. С. 7-38.

[7] Формальные языки и автоматы II: непрерывные полукольца и алгебраические системы / С.И. Алешников [и др.] // Вестник Калининградского государственнного университета. 2005. Вып. 1-2. С. 19-45.

[8] Исмагилов Р.С., Мастихина А.А. К вопросу частичного угадывания формальных языков // Вестник МГТУ им. Н.Э. Баумана. Сер. Естественные науки. 2016. № 2. C. 3--15. DOI: 10.18698/1812-3368-2016-2-3-15.

[9] Бисеров Д.С., Игудесман К.Б. Матрицы над полукольцом бинарных отношений и V-компонентные фракталы // Изв. вузов. Матем. № 5. 2011. С. 75-79.

[10] Цветов В.П. О специальном сужении конечного рефлексивного симметричного отношения до отношения эквивалентности // Вестник Самарского государственного университета. Естественнонаучная серия. 2006. № 4(44). C. 26-47.

References

[1] Tsvetov V.P. Ob odnom nadklasse A-grammatik [On a superclass of A-grammars]. Vestnik Samarskogo gosudarstvennogo universiteta. Estestvennonauchnaia seriia [Vestnik of Samara State University. Natural Science Series], 2014, no. 10(121), pp. 102-108 [in Russian].

[2] Golan J.S. The Theory of Semirings with Applications in Mathematics and Theoretical Computer Science. Pitman, 1991. (Pitman Monographs and Surveys in Pure and Appl. Math.; Vol. 54) [in English].

[3] Hebisch U., Weinert H.J. Semirings. Algebraic Theory and Applications in Computer Science. Singapore: World Scientific, 1998 [in English].

[4] Molchanov V.A. O matrichnykh polugruppakh nad polukol'tsami i ikh prilozheniia k teorii formal'nykh iazykov [On matrix semigroups over semirings and their applications to the theory of formal languages]. Matematika. Mekhanika. Sbornik nauchykh trudov. Vyp. [Mathematics. Mechanics. Collection of Scientific Papers. Issue 3]. Saratov: Izd -vo Sarat. un-ta, 2001, pp. 98-101 [in Russian].

[5] Maslov V.P., Kolokoltsov V.N. Idempotentnyi analiz i ego primenenie v optimal'nom upravlenii [Idempotent analysis and its application in optimal control]. M.: Nauka, 1994 [in Russian].

[6] Aleshnikov S.I., Boltnev Yu.F., Ezik Z. et al. Formal'nye iazyki i avtomaty I: polukol'tsa Konveia i konechnye avtomaty [Formal languages and automata I: Conway semirings and finite state machines]. Vestnik Kaliningradskogo gosudarstvennogo universiteta [IKBFU's Vestnik], 2003, Issue 3, pp. 7-38 [in Russian].

[7] Aleshnikov S.I., Boltnev Yu.F., Ezik Z. et al. Formal'nye iazyki i avtomaty II: nepreryvnye polukol'tsa i algebraicheskie sistemy [Formal languages and automata II: continuous semirings and algebraic systems]. Vestnik Kaliningradskogo gosudarstvennogo universiteta [IKBFU's Vestnik], 2003, Issue 1-2, pp. 19-45 [in Russian].

[8] Ismagilov R.S., Mastikhina A.A. K voprosu chastichnogo ugadyvaniia formal'nykh iazykov [On the problem of partial guessing of formal languages]. Vestnik MGTU im. N.E. Baumana. Ser. Estestvennye nauki [Herald of the Bauman Moscow State Technical University, Series Natural Sciences], 2016, no. 2, pp. 3—15. DOI: 10.18698/1812-3368-2016-2-3-15 [in Russian].

[9] Biserov D.S., Igudesman K.B. Matritsy nad polukol'tsom binarnykh otnoshenii i V-komponentnye fraktaly [Matrices over the semiring of binary relations and V-component fractals]. Izv. vuzov. Matem. [Russian Mathematics (Iz. VUZ)], 2011, no. 5, pp. 75-79 [in Russian].

[10] Tsvetov V.P. O spetsial'nom suzhenii konechnogo refleksivnogo simmetrichnogo otnosheniia do otnosheniia ekvivalentnosti [On a special restriction of reflexive and symmetric relation to an equivalence relation]. Vestnik Samarskogo gosudarstvennogo universiteta. Estestvennonauchnaia seriia [Vestnik of Samara State University. Natural Science Series], 2006, no. 4(44), pp. 26-47 [in Russian].

V.P. Tsvetov2

ALPHA-MATRIX AND GRAPH-GENERATED GRAMMARS

In this paper we consider the extension of graph-generated grammars based on their matrix representations. We study two classes of graph-generated grammars associated with the vertex and edge marking of graphs. We define alpha-matrices over a semiring of languages specified by finite alphabet A and then define the corresponding matrix algebras. These concepts are then used for constructive representation of graph-generated languages and research of their equivalence. We define a matrix-generated grammars as a natural superclass of graph-generated grammars. All the proofs are illustrated by examples.

Key words: semirings of languages, formal grammars, generative grammars, graph theory, paths in graphs, labeled graphs, graph-generated grammars, matrix-generated grammars.

Статья поступила в редакцию 21/7/2017. The article received 21/7/2017.

2 Tsvetov Viktor Petrovich ([email protected]), Department of Information Systems Security, Samara National Research University, 34, Moskovskoye shosse, Samara, 443086, Russian Federation.

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