УЧЕНЫЕ ЗАПИСКИ КАЗАНСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
Том 151, кн. 2
Физико-математические пауки
2009
УДК 519.713
О МАТРИЦЕ ПЕРВЫХ МОМЕНТОВ РАЗЛОЖИМОЙ СТОХАСТИЧЕСКОЙ КС-ГРАММАТИКИ
Л. П. Жильцова
Аннотация
Рассматривается стохастическая контекстно-свободная грамматика с произвольным числом классов нетерминальных символов без ограничений па порядок следования классов. Соответствующая ей матрица А первых моментов является разложимой. Для случая, когда перронов корень г матрицы А строго меньше единицы, исследуются свойства матрицы А' при Ь ^ то.
Ключевые слова: алгоритм, кодирование, сжатие, контекстно-свободный язык, грамматика, оптимизация, автомат, вероятность.
Введение
В работах [1. 2] нами рассматривались вопросы, связанные с кодированном сообщений. являющихся словами стохастического контекстно-свободного языка (стохастического КС-языка), при условии, что матрица первых моментов грамматики неразложима, нопориодична и ее максимальный по модулю собственный корень (перронов корень) строго меньше единицы (докритичоский случай). При неразложимой матрице первых моментов нетерминальные символы грамматики образуют один класс.
При изучении вопросов кодирования важную роль играет строение матрицы А первых моментов и асимптотическое поведение элементов матрицы А4 при £ ^ то. Свойства неразложимой матрицы А4 изучены в [3]. Для докритического случая в [4] проведено исследование грамматик с двумя классами нетерминальных символов, при этом установлено асимптотическое поведение матрицы А4.
В настоящей работе свойства матриц А и А4 исследуются для стохастических КС-грамматик с произвольным числом классов нетерминальных символов грамматики без ограничений на порядок следования классов.
1. Основные определения
Для изложения результатов о контекстно-свободных языках будем использовать определения КС-языка и стохастического КС-языка из [5. 6]. Стохастической КС-грамматикой называется система О = {Ут, Уы, Д, в), где Ут и УЫ — конечные множества терминальных и нетерминальных символов (терминалов и нетерминалов) соответственно; в € Уы — аксиома, Д — множество правил. Множество Д
к
можно представить в виде Д = Д > гДе к - мощность алфавита Уы и Д^ =
г=1
= {тц,..., ГгГН }. Каждое правило г^ из Д^ имеет вид
где Лг £ Ун, вц £ (Ут и Ун)* и рц - вероятность применения правила тц (вероятность правила тц), которая удовлетворяет следующим условиям:
П-
0 <рц < 1 И "^Рго = 1, г = 1, 2,...,к.
3=1
Для слов а и в из (Ут и Ун )* будем говорить, что в непосредственно выводимо из а (и записывать а ^ в\ если а = а1Лга2, в = а\вгза2 для некоторых а\, а2 £ £ (Ут и Ун)*, и в грамматике С имеете правило Лг — вц ■
Обозначим через рефлексивное транзитивное замыкание отношения КС-язык, порождаемый грамматикой С, определяется как множество слов Ьа = {а : в ^* а, а £ У*}.
а
тики (вывод), с помощью которой а выводится из аксиомы в. Вероятность вывода определяется как произведение вероятностей правил, образующих вывод. Вероят-а
а
иетермииалу в слове).
Грамматика С называется согласованной, если
Ит р(а) = 1
аеЬ,\а\<М
(здесь |ж| - длина слова ж). В работе рассматриваются согласованные КС-
С
ятностей Р на множестве слов порождаемого КС-языка Ь и определяет стохастический КС-язык С = (Ь, Р).
Важное значение имеет понятие дерева вывода. Дерево строится следующим образом.
Корень дерева помечается аксиомой в. Пусть при выводе слова а па очередном шаге в процессе левого вывода применяется правило Л — Ьг1 Ьг2 ■ ■ ■ Ьгт, где Ъц £ Ун и Ут (1 = 1, ...,ш). Тогда из самой левой вершины-листа дерева, помеченной символом Л (при обходе листьев дерева слева направо), проводится ш дуг в вершины следующего яруса, которые помечаются слева направо символами Ьг1 ,Ьг2,..., Ьгт соответственно. После построения дуг и вершин для всех правил грамматики в выводе слова языка все листья дерева помечены терминальными символами и само слово получается при обходе листьев дерева слева направо.
Ярусы дерева будем нумеровать следующим образом. Корень дерева расположен в пулевом ярусе. Вершины дерева, смежные с корнем, образуют первый ярус, и т. д. Дуги, выходящие из вершин ] -го яруса, ведут к вер шинам (] + 1)-го яруса.
Рассмотрим многомерные производящие функции в2,..., вк), г =
= 1,..., к, где переменная соответствует нетерминальному символу Лг. Функция (в 1, в2,..., ) строится по множеству правил с одинаковой левой частью Лг следующим образом.
Для каждого правила Лг — вц выписывается слагаемое
11 12 1 к Яц=рц ■ ■ в2 ■ ... ■ вк ,
где 1т - число вхождений нетерминального символа Лт в правую часть правила (ш = 1, . . . , к).
п-
в2,..., вк ) = ^ % .
3=1
Пусть
. . . , вк)
дв,-
81=82 = " = ЯЬ = 1
Квадратная матрица А порядка к, образованная элементами аО, называется
О.
А
ствитольный неотрицательный собственный корень (перронов корень) [7]. Обозна-г
Извостно необходимое и достаточное условие согласованности стохастической КС-грамматики [6]: стохастическая КС-грамматика при отсутствии бесполезных нетерминалов (то есть не участвующих в порождении слов языка) является согласованной тогда и только тогда, когда перронов корень матрицы первых моментов не превосходит единицы.
В работе рассматривается случай, когда г < 1.
Введем некоторые обозначения. Будем говорить, что нетерминал АО- непосредственно следует за нетерминалом А^ (и обозначать А^ ^ АО ), если в грамматике
существует правило вида О«2, где «1,«2 € (Ут и Уу)*. Транзитивное
замыкание отношения ^обозначим .
Пусть А^ € Уы .Через /1(А^) обозначим множество нетерминалов таких, что Аг АО для любого Ао € 11 (А4). Через ^(А^) обозначим множество нетерминалов таких, что АО- ^ А^ для любо го АО- € /2(А4). Через /о(А^) обозначим пересечение этих множеств, то есть /о(А^) = ^(А^) П ^(А^). Множество нетерминалов К = {А^,..., А^}, для которых /о(А»з.) совпадают и /о(А^) = 0, з = 1,..., д, назовем классом. Если /0(А^) = 0, то будем считать, что А^ образует особый класс
Ш.
Грамматика О называется неразложимой, если все нетерминалы из Уы обра-
О
грамматико соответствует разложимая матрица [7] первых моментов.
К1 К2 К2
непосредственно следует за классом К1 (и обозначать К1 — К2), если существуют А1 € К1 и А2 € К2 такие, что А1 ^ А2. Рефлексивное транзитивное замыкание отношения — обозначим через — * и назовем отношением следования.
Пусть {К1, К2,..., Кт} - множество классов нетерминалов грамматики, т > 2. Без ограничения общности можно считать, что в грамматике нет особых классов.
Будем полагать, что классы нетерминалов перенумерованы таким образом, что К — КО- тогда и только тогда, когда г < 3 (это всегда можно сделать). Соответствующая разложимой грамматике матрица первых моментов А имеет следующий
А:
/А11 А12 . . А1т_1 А1т ^
0 А22 . . А2т_1 А2т
0 0. . Ат_1т_1 Ат_ 1т
V0 0. . . 0 Атт /
(1)
Одни класс нетерминалов в матрице первых моментов представлен множеством подряд идущих строк и соответствующим множеством столбцов с темп же номерами. Для класса К квадратная подматрица, образованная соответствующими строками и столбцами, обозначается через А^ . Подматрица А^ является нулевой, если К ^ КО-. Блоки, расположенные ниже главной диагонали, - нулевые в силу упорядоченности классов нетерминалов.
Для каждого класса К, матрица Лгг неразложима. Без ограничения общности будем считать, что она строго положительна и непериодична. Этого всегда можно добиться, применяя метод укрупнения правил грамматики, описанный в [2].
Обозначим через т, перронов корень матрицы Лгг. Для неразложимой матрицы перронов корень является действительным и простым [7]. Очевидно, в силу структуры матрицы первых моментов, т = тахг{тг} и т > 0.
Пусть 7 = {¿1, г2,..., г;} - множество всех номеров гц классов, для которых т, - = т.
Введем некоторые соглашения. Рассматривая вектор, будем считать, что мы имеем дело с вектором-столбцом, если противное не оговорено специально. В дальнейшем для вектора или матрицы X будем писать X = с (X < с), где с - скаляр, если все компоненты вектора или матрицы X равны (соответственно меньше или равны) с. Через Xт обозначим транспонирование вектора или матрицы X. Через (г>1, г>2), где «1, «2 - векторы-столбцы, будем обозначать объединенный вектор-столбец («т, г>т)т.
2. Асимптотика для матрицы Л4
Зафиксируем пару (1, Н), 1, Н £ {1, 2,..., ш}, и рассмотрим всевозможные последовательности классов Кг1 — К,2 — ... — К,в, где ¿1 = 1, г3 = Н. Среди всех таких последовательностей выберем ту, которая содержит наибольшее число классов с номерами из Это число обозначим через .
Дополнительно переупорядочим классы по неубыванию величины в к, причем при одинаковых значениях в1; сначала поставим массы с номерами из 7
Разобьем последовательность классов на группы классов М1, М2,..., Мш, при этом класс К; отнесем к группе М1 при в1; < 1 и к группе Мц при в1; = ] (1 = = 2, . . . , ш) .
Для групп Мг И Мц определим в* гак тахк1еМ-,кнеМ,
Матрицу первых моментов будем также представлять в виде
В11 В12 .
Л= 0 В22 . . В2ш
0 0. . Вшш /
где Вц - подматрица на пересечении строк для классов из группы М, и столбцов для классов из Мц. Очевидно, каждая матрица Вгг имеет перронов корень т.
Рассмотрим подматрицу матрицы первых моментов Л. Запись будем применять для обозначения соответствующей подматрицы матрицы Л4. Изучим поведение матрицы Л4 щи £ — то.
Теорема 1. При £ — то
= Н11г ■ ^-V(1 + о(1)), где Игь - матрица, не зависящая от
Доказательство. Доказательство проведем индукцией по числу групп.
Пусть Л = (В11). Группу М1 разобьем па три подгруппы. К первой подгруппе М11 отнесем классы нетерминалов с в1; = 0, то второй подгруппе М12 - классы с номерами из множества 7, к третьей подгруппе М13 - все остальные классы.
В11
(Си С12 СЦ 0 С22 С23 I , 0 0 Сзз/
где Су - подматрица со строками для классов из Мц и столбцами для классов из Му.
Исследуем строение подматриц матрицы В11 щи г ^ то. Заметим, что подгруппа М11 может быть пустой, тогда в В11 присутствуют только подматрицы С22, С23 И С33.
Известно следующее представление для степени произвольной матрицы С [7]:
С = Е (А^1 + (АО' • + ... + (А4)(т1_1)
(2)
;=1
где А; - корпи минимального многочлена ^(А) матрицы С (1 = 1,..., в), т; — кратность корня А; для минимального многочлена, (А[)(и) - п-я производная по А; от А*, матрицы вполне определяются заданием матрицы С и не зависят от
г.
Так как каждому классу К^ из М11 или из М13 соответствует перронов корень г < г, то для С11 и С33 из (2) следуют оценки С11 = о(г4) и С33 = о(г4).
Пусть М1; содержит ^ классов (1 = 1, 2, 3). Любому классу К из М12 соответствует неразложимая подматрица Ац в представлении (1), и классы из М12 попарно несравнимы.
Для неразложимой положительной матрицы А^ применим представление, установленное в [3]:
Ай = и4У4 • г4(1 + о(1)),
где и - правый собственный вектор (вектор-столбец), У — левый собственный вектор (вектор-строка), соответствующие г, и > 0, У > 0 и У^ = 1. С22
М, +1Уо,
С 4
С22
уО"1 + 1 УО1 + 1 0
0 и01+2У01+2
\
\
0 0 ..
Обозначим через В матрицу
/ио1+1Уо1+1 0
0 и01+2У01+2
т4(1 + 0(1)). (3)
0 иО1+О2 УО'1+О2/
\
0
0
0 иО1+О2 УО'1+О2/
Очевидно, что В можно представить в виде ^^ и(2)у(2), где
и(2) =
¿=01 + 1
(2)
= (0,..., 0, 0,..., 0), У>! = (0,..., 0, У, 0,..., 0) и и и У расположены па местах, соответствующих классу К^.
Непосредственной проверкой устанавливается, что
4_1
4_1
с(2) = £ суС12 С2_0_1 = £ су С12С2_0_1 + ]т „11
0=0 0=0 ? = 4] +1
с?, С12С2_ 0_1.
4_ [1О8 1О§
4_1
Обозначим ^^ С?1С12С22 0 1 через Е1 и ^^ С?1С12С;
22
40-
0=0
рез Е2.
0=4_|_1ОЕ 1О§ 4]+1
Оценим сначала £2. Для этого применим представление (2) для C^. Отметим, что для C11 все собственные корни строг о меньше r, а элементы матрицы C|2 ограничены некоторой константой, не зависящей от t. Поэтому
t-1
£2 < ci • (r')i-Li°gi°giJ+1 ^ C12Ct-j-1 <
j=t-Llog log tJ+1
C2 • (r')i-LloglogtJ+1 • [loglogtj = O (loglogt • (logt)c3 • (r')4) = o (r4)
для некоторых констант C1, C2 и сэ, и r', удовлетворяющего неравенству r' < r. Учитывая представление (3) для C^ j 1, получим:
t- Llog logtJ , n x j ,,t—111 , ^ f ill ^
Si = г (1 + o(l)) C12D.
Нетрудно проверить, что
^(^(■•Я-СпГ1.
j=0
C11 r,
ратная матрица для (rE — C11) существует. Поэтому
£1 = r4(rE — CU)-1C12D • (1 + o(1)).
Найдем правый собственный вектор матрицы Бц для перропова корпя r. Компоненты вектора представим в виде U = (U(1),U(2),U(э)), где U « соответствует M11, U(2) - ^Л12, и U(э) - M13. Вектор U удовлетворяет системе уравнений
( CnU(1) + C12U(2) + C13U(э) = rU(1), | C22U(2) + C23U(э) = rU(2), [C33U(э) = rU(э).
Отсюда U(э) = 0, так как перронов корень матрицы C33 строго меньше r, u (2) C22 U(1) = (rE —
— C11)-1C12U(2). Таким образом,
C(2) = r4(rE — CU)-1C12 £ иГ^г(2) • (1 + o(1))= r4 £ Uf)V(2) • (1 + o(1)),
i=jl +1 i=j1 + 1
где U(1) соответствует правому собственному вектору U(2) матрицы C22.
Рассмотрим матрицу C23). Непосредственной проверкой устанавливается, что
t-1
c(t) = сj с сt-j-1
C23 = C22 C23C33 .
j = 0
Представим эту сумму в виде £1 + £2, где
t-1 Llog log tJ
£1 =53 C22 C23 C33 j 1 > £2 = C22 C23 C33 j 1.
j= Llog log tJ+1 j = 0
Аналогично тому, как это сделано для С{2, доказывается оценка £2 = о(г4). Для £1 справедливы соотношения
t—1 t—Lloglog 4J—2 ,
Si =D. £ riC23C^-1.(l + o(l)) = ri. (1 + 0(1)) ]Г (-
j=Lloglog tJ+1 j = 0 ^
Найдем левый собственный вектор матрицы Бц для перропова корпя r. Компоненты вектора представим в виде V = (V(1), V(2), V(3)). Вектор V удовлетворяет системе уравнений
'V (1)C11 = rV(1),
V (1)Ci2 + V (2)C22 = rV(2),
V (1)Ci3 + V (2)C23 + V (3)Сзз = rV(3).
Отсюда V(1) = 0, так как перронов корень матрицы C11 строго меньше r, V(2) является левым собственным вектором для матрицы C22, и V(3) = V(2) C23(rE -— C33)— 1. Поэтому
C23) = r1 £ ufvf^rE — C33) —1 • (1 + o(1))= r1 £ Uf v/3) • (1 + o(1)).
i=jl +1 i=jl + 1
Наконец, рассмотрим матрицу C(3). Нетрудно проверить, что t—1 t—1
Ci3 = £Cj1 C13C33j 1 + £Cj2C23с3зj 1.
j=0 j=0
Так как перроповы корпи матриц C11 и C33 строго меньше r, то справедлива оценка
t-1
Х^С^j—1 = o(r4).
j=0
Поэтому
C(3) = £ Cj C23C33-j—1 + o(r4).
j=0
Применяя полученную оценку для Су), после несложных преобразований получим. что
С(3) = г4 • £ У.(2)С23(гЕ - С33)_1 • (1 + о(1)) = г4 £ ^^¿(3) • (1 + о(1)).
¿=01 + 1 ¿=01 +1
Таким образом,
B11
/0 V* U(1)V(2) V* U(1)V(3)N
0 Ej=ji+1 ufV(2) Ej=ji+1 ufv/3)| •rt + o(rt). (4) 0 0 0
Отметим, что строки матрицы В11, соответствующие классам К € М12, то
есть классам, для которых г € ^ пропорциональны компонентам правого соб-(2)
ственного вектора С/> , а столбцы, соответствующие классам К0- € М12, пропорциональны компонентам левого собственного вектора У0(2).
Рассмотрим случай ад = 2. В этом случае матрица А2 имеет вид
А2 =
0
В
В22
Строение матрицы В22 аналогично строению исследованной ранее подматрицы для В21; соответствующей подклассам М12 и М13. Для В(2 справедлива формула
4-1
В12 =53 В11В12В22 1 1.
5 = 0
В11 В22,
В11 ,
цы В22. Для группы М2 отсутствует подгруппа М21, поэтому М2 = (М22, М23). В результате преобразований, учитывающих вид (4). получим, что
В(2) = В12 =
0
0 0
у, и(11) у(21) 2-^1 г г
у, гг (21) у(21)
.¿-/г иг
0
у, и (И)у (31)4
.¿-/г иг г
Ег и^21)Уг(31) 0
• В12Х
(22)у (22) 3 ~1 ^
Е,и
(22)у (32)4 3 " 3 ^
Е,
• ¿г2 + о(^г2
В12
/^11 ^12 В12 = I ^21 ^22
\В31 ^32,
(5)
где разбиение по строкам сделано в соответствии с подгруппами группы М1, а по столбцам - в соответствии с подгруппами группы М2. Тогда
В(2) = В12 =
Е
Ег,' сг.3 ^
. . с, и
г,1 г1
(11)у (22)
(21)у (22)
Ег, С, и,(11)У/32)^ Ег, Сг, иг(21)У,(32)
0
• ¿г2
о(^г2)
где с, = Кг ^ К,.
рг(21)Е21 + Уг(31)Е31^ С,(22). Коэффициент с, > 0 в случае, когда
Блоки матрицы В(2 можно также представить в виде, аналогичном (4), сменив порядок суммирования и проведя суммирование по г:
В
(4) 12
V .и ''
^з з
у .и
^3 3
'(11)у (22) >(21)^(22)
Е ,-и.
3 3
г/
3
Е и
-
/(11)у (32^ 7(21)^(32)
■ ¿г2 + о(^г2
1 = 1, 2.
гдеиТ = £гс,^,
В силу строения собственных векторов, соответствующих подгруппам М12 и М22, строки для класса Кг € М12 пропорциональны компонентам правого собственного вектора матрицы Агг, а столбцы для К, € М22 - компонентам левого собственного вектора матрицы А,.
Таким образом, доказана справедливость теоремы для ад = 2.
В
(4)
32
О(г4) и В33 = О(г4), для получения этих оценок до-
статочно в качестве матрицы первых моментов рассмотреть матрицу без строк и столбцов, соответствующих подгруппам М11 и М12. При этом В32 перейдет в подматрицу С12, а В33 - в подматрицу С13.
Предположим, что утверждение теоремы справедливо для т — 1 групп. Докажем его для т групп.
Обозначим через В1 подматрицу матрицы А, соответствующую первым т — — 1 группам, и через В2 - подматрицу, соответствующую группам с номерами 2, 3,..., т. Тогда матрицу первых моментов А можно представить в виде
А=
В
Е1
0 В,,
В
1ш
где Е1 =
В
Ш_1,Ш у
н в виде
А
Очевидно, что
В11 0
А4 =
Е2 В2
в4
где Е = (В12 ... В^) .
, =
ВШЩ у
В Е(4) В11 Е2
0 В2
где Е(4), Е(4) — подматрицы в А4, соответствующие подматрицам Е и Е2 в А. В1 В2
дукции. Поэтому достаточно доказать теорему для подматрицы В(2. Непосредственной проверкой устанавливается, что
В1^) = Е £в1° ) В;™ В-
;=1 0=0
ш_1 4_1
По предположению индукции В0) = О (гЯ1г 1г^ . Так как группы упорядочены по возрастанию в*;, то определяющим в сумме является слагаемое В^Щ,_1. Поэтому
4_1
В12 = ЕВ(°„)_1ВШ_1ШВ^^_1 • (1 + 0(1)).
0=0
Раскрывая В^^З_1, после несложных преобразований получим:
В(4) -
В1ш =
/V Г/'(11) У(2з) V ^ '(11) У(3З)
у, и'(21) У(2ш) у, и'(21) У(3ш) I • -V + 0(гя1» _1г4)
0 0 о 0
0
где
г/'(; 1) =
'1ш — 1 У 7
и В;1 - блоки матрицы Вш_11ш (1 = 1, 2). Теорема доказана.
□
Из доказательства теоремы вытекает Следствие 1. При г ^ то
= Я;Л • V(1 + 0(1)) &1Я 1 = ^
где
ih
у^ 7y'(1i)y(2h) Y^ U'v±l;V Uj j Uj j
v r7'(20V (2h) v rr '(2l) V (3h)
'(1i)T/(3h)N
V
0
0
Проинтерпретируем результаты теоремы 1. используя деревья вывода. Обозначим через П множество деревьев вывода, корень которых помечен аксиомой грамматики А1, и через Мг(£) - математическое ожидание числа вершин на ярусе £ дерева вывода из П, помеченных нетерминальным символом Аг.
Следствие 2. Пусть Аг € К,. Тогда при £ ^
Мг(£) ~ Сг • -1г2 где сг - некоторая неотрицательная константа.
то
Работа выполнена при финансовой поддержке РФФИ (проект Х- 07-01-00739).
Summary
L.P. Zhiltsuva. On a Matrix of First Moments for Decomposable Stochastic CF-Grammar.
Stochastic context-free grammar is considered which contains arbitrary number of classes of non-terminal symbols without restrictions on the succession order of classes. Corresponding matrix A of first moments is decomposable. For the case when Perron's root of the matrix A is strictly less than one, properties of the matrix A' are investigated under t ^ <x.
Key words: algorithm, coding, compression, context-free language, grammar, optimization, automaton, probability.
Литература
1. Жильцова Л.П. Закономерности применения правил грамматики в выводах слов стохастического коптекстпо-свободпого языка // Матем. вопр. кибернетики. 2000. Вып. 9. С. 101 126.
2. Жильцова Л.П. О нижней оценке стоимости кодирования и асимптотически оптимальном кодировании стохастического коптекстпо-свободпого языка // Дискр. анализ и исслед. операций. Сер. 1. 2001. Т. 8, Л' 3. С. 26 45.
3. Севастьянов Б.А. Ветвящиеся процессы. М.: Наука, 1971. 436 с.
4. Борисов А.Е. О свойствах стохастического КС-языка, порожденного грамматикой с двумя классами нетерминальных символов // Дискр. анализ и исслед. операций. Сер. 1. 2005. Т. 12, Л» 3. С. 3 31.
5. Ахо А,, Ульман Дон:. Теория синтаксического анализа, перевода и компиляции. Т. 1. М.: Мир, 1978. 616 с.
6. Фу К. Структурные методы в распознавании образов. М.: Мир, 1977. 320 с.
7. Гап'пшахер Ф.Р. Теория матриц. М.: Наука, 1966. 576 с.
Поступила в редакцию 30.03.09
Жильцова Лариса Павловна доктор физико-математических паук, профессор кафедры математической логики и высшей алгебры Нижегородского государственного университета им. Н.И. Лобачевского. Е-шаП: larzhiMirambler.ru