Максимальные префиксные коды и подклассы класса контекстно-свободных языков

УДК 519.713

КОРАБЕЛЬЩИКОВА Светлана юрьевна,

кандидат физико-математических наук, доцент кафедры математического анализа, алгебры и геометрии института математики, информационных и космических технологий Северного (Арктического) федерального университета имени М.В. Ломоносова. Автор 22 научных публикаций, в т. ч. одной монографии

МЕЛЬНИКОВ Борис феликсович, доктор физико-математических наук, профессор, заведующий кафедрой прикладной математики и информатики Тольяттинского филиала Самарского государственного университета. Автор около 200 научных публикаций, в т. ч. 6 монографий

МАКСИМАЛЬНЫЕ ПРЕфИКСНЫЕ КОДЫ И ПОДКЛАССЫ КЛАССА КОНТЕКСТНО-СВОБОДНЫХ ЯЗЫКОВ

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

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

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

Максимальных префиксных кодов мощности г над д-буквенным алфавитом не существует, если остаток от деления г на д-1 не равен 1.

Частное k от деления г на д-1 можно интерпретировать как максимальное число ярусов в кодовом дереве, а также как количество пучков из д ребер, составляющих дерево. Набор (пр п , п , ... , п8) представляет собой распределение этих пучков по ярусам кодового дерева.

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

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

© Корабельщикова С.Ю., Мельников Б.Ф., 2015

Максимальные префиксные коды рассматриваются в нескольких разделах широко известной монографии [1]. Очевидна связь этой проблематики с некоторыми вопросами теории формальных языков, в частности с бесконечными итерациями языков, исследуемыми одним из авторов настоящей статьи в [2, 3]. В терминах максимальных префиксных кодов формулируются условия коммутирования в глобальном надмоноиде свободного моноида [4]. Результаты этих исследований применяются, например, в задачах описания подклассов класса контекстно-свободных языков с разрешимой проблемой эквивалентности.

В некоторых подклассах класса контекстно-свободных (КС) языков в отличие от всего этого класса разрешима проблема эквивалентности [5-7]. Важно отметить, что мы при этом имеем в виду недостаточно подробно исследованный класс детерминированных контекстно-свободных языков, проблема эквивалентности для которого была сформулирована еще в конце 1960-х [8, разд. 4.2] и впоследствии была решена. На наш взгляд, вопрос о приоритетах в решении этой проблемы является довольно спорным. Например, авторам неизвестно, чтобы кто-либо обнаружил ошибки в доказательстве, приведенном в серии статей Л. Станевичене (см. статьи [9, 10] и работы, процитированные в них). По-видимому, можно довести до конца и не совсем завершенное доказательство В. Мейтуса в [11] - явных ошибок эта статья не содержит. Но, как и обычно в подобных ситуациях, автором доказательства о разрешимости проблемы равенства детерминированных КС-языков (иными словами, разрешимости про-

блемы эквивалентности детерминированных магазинных автоматов) считается не российский ученый, а Ж. Сьёнизерг (см. окончательный вариант его доказательства в [12])1.

Итак, мы имеем в виду подклассы, не совпадающие с классом детерминированных КС-языков. Однако с их помощью могут быть описаны некоторые реальные языки программирования (см. примеры в [13]). Для описания этих подклассов мы часто рассматриваем пары языков, удовлетворяющих рассматриваемому в [2-4, 6, 7] отношению эквивалентности А ~ даВ.

Отметим еще, что возможная связь между условиями выполнения отношения А ~ даВ и некоторыми другими алгебраическими проблемами может быть получена на основе результатов статей [14-16], в которых рассматриваются ю- и 2ю-языки2 , порожденные в результате бесконечных последовательностей отражений точки от сторон некоторого многоугольника (иными словами, порожденные специальными биллиардами; см. также [17]). Эти результаты связаны с алгоритмическими проблемами для мономиальных алгебр (т. е. ассоциативных алгебр, заданных с помощью так назывемых языков обструкций)3. Стоит также обратить внимание, что и вместо обычных недетерминированных конечных автоматов можно рассматривать схожие с ними ю-автоматы (также см. [14, 15]) и формулировать условия эквивалентности для них.

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

'Еще более ярким примером, также связанным с теорией формальных языков, является, по-видимому, опубликование Ю. Медведевым в 1956 году статьи с фактическим описанием недетерминированных конечных автоматов. Однако авторами НКА считаются М. Рабин и Д. Скотт, описавшие их лишь в 1959 году и впоследствии получившие за это Тьюринговскую премию.

2Например, ю-словом а над заданным алфавитом Е можно считать любое отображение вида а: Ъ ^ Е.

3Эта связь видна из результатов, приведенных в широко известных работах [18, 19]. Один из авторов выражает благодарность за консультации по данному вопросу А.Б. Верёвкину, доценту кафедры алгебро-геометрических вычислений Ульяновского государственного университета.

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

ности. Их также можно рассматривать как некоторый язык в кодирующем алфавите. Такие ограничения мощности являются вполне естественными. Например, при алфавитном кодировании количество элементарных кодов должно быть равно мощности алфавита сообщений, т. е. должно быть фиксированным. Одним из авторов в работах [20-22] рассматривались вопросы подсчета помехоустойчивых кодов с некоторыми дополнительными свойствами.

Приведем основные определения, используемые в статье, согласно [23] и [24]. Алфавитное кодирование задается схемой

а ^ В

I:

а2 ^ В2

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

Приведем пример полного кода в алфавите Ж = {0, 1, 2} и соответствующего ему кодового дерева (рис. 7).

Символам алфавита сообщений и = {а1, а, ... , аг} ставятся в соответствие некоторые слова В7, В2, ... , Вг в кодирующем алфавите Ж, называемые элементарными кодами. Используя указанное схемой X соответствие, любое слово в алфавите сообщений и можно преобразовать в слово кодирующего алфавита Ж:

а. ...а, ^ В, ...В. .

Ч гп Ч гп

Код называется однозначно декодируемым, если любое слово в кодирующем алфавите либо не является кодовым, либо является кодом ровно одного сообщения. Однозначная декоди-руемость кода зависит от множества С = {В1, В2, ... , Вг} элементарных кодов, само соответствие X при этом не важно.

Будем говорить, что код (или множество элементарных кодов) С обладает свойством префикса, если ни один элементарный код не является префиксом (т. е. началом) никакого другого элементарного кода. Свойство префикса гарантирует однозначную декодируемость кода и эффективный алгоритм декодирования.

Префиксному коду С = {В1, В2, ... , Вг} можно сопоставить корневое дерево, в котором каждой цепи от корня до концевой вершины соответствует элементарный код и наоборот.

Рис. 1. Кодовое дерево, соответствующее полному коду С = {2, 00, 01, 02, 11, 12, 100, 101, 102}

Для полных кодов, как известно, в неравенстве Макмиллана выполняется равенство, т. е. г 1

=1.

и г

Здесь I. - длина элементарного кода В.. Процедура построения кодов с минимальной избыточностью (кодов Хаффмана) также в итоге дает полный код, если порядок ветвления всех вершин, в т. ч. и исключительной, равен q. Это условие выполняется, если г (число элементарных кодов) при делении на q-1 дает остаток 1. Поясним данное соотношение.

Пусть дано произвольное кодовое дерево полного кода, например, изображенное на рис. 7. Перестроим его так, чтобы в каждом ярусе был ровно один пучок ребер. В нашем случае во втором ярусе имеется 2 пучка, поэтому второй пучок отрываем и переносим вниз в одну из концевых вершин самого нижнего яруса. Такое преобразование дерева не изменяет числа концевых вершин, т. к. одна вершина, от которой отрываем пучок, становится концевой,

Рис. 2. Результат преобразования кодового дерева

и одна вершина, к которой приставляем пучок, перестает быть концевой (рис. 2).

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

Подсчет количества различных максимальных префиксных кодов N(r, ф с заданным числом слов г над кодирующим алфавитом мощности ф. Эта задача эквивалентна задаче подсчета всех различных корневых деревьев с порядком ветвления не концевых вершин д, имеющим г концевых вершин.

Разделим г на д-1 с остатком. Как было сказано выше, если остаток от деления не равен 1, то число таких кодов N(r, ф = 0.

Далее будем считать, что г = k  (д-1) + 1. Число k можно интерпретировать как максимальное число ярусов в кодовом дереве, а также как количество пучков из д ребер, составляющих дерево.

Если k = 1, то имеется 1 дерево, состоящее из одного пучка д ребер.

Если 1 < к, то минимальное число ярусов равно 2, а максимальное, как всегда, k.

2 яруса имеют С(ф, к- 1) деревьев, ибо всего k пучков: один начальный в первом ярусе, остальные к-1 - во втором. В пучке первого яруса из д ребер выбираем к-1 ребро для ветвления, что можно сделать С(ф, к- 1) различными способами и к-1 < д, т. е. k < д + 1.

Подсчитаем число кодовых деревьев, имеющих 3 яруса. Всего k пучков: один начальный в первом ярусе, остальные к-1 надо распределить во второй и третий ярус. Пусть п. - число пучков в 1-м ярусе, и всегда имеем п1 = 1. Тогда для чисел п2 и п3 должны выполняться условия:

п2 + п3 = к-

1

1 < п2 < д 1 < п3 < п2  д

Тогда по каждой паре (п2, п3), удовлетворяющей условиям (*), получим С(д, п2)  С(п2д, п3) различных деревьев. Итого 3 яруса имеют X С(ф,п2) С(п2  ф,п3) деревьев.

Из проведенных рассуждений следует, что справедлива следующая теорема.

Теорема. Пусть д - мощность кодирующего алфавита Ж, г - количество слов в максимальном префиксном коде над алфавитом Ж, и г = к  (д-1) + 1. Тогда число различных максимальных префиксных кодов, у которых кодовое дерево имеет £ ярусов (£ < к), находится по формуле:

X С (Ф' П2) ^ С (П2 ^ Ф' П3) ^ ... ^ С (П-1 ^ Ф> П X

где суммирование происходит по всем наборам (п2, п3, ... , п), удовлетворяющим условиям:

п2 + п3 +... + = k _1

1 < п2 < д 1 < < п_х • д V/ = 3,5

Условия (**) эквивалентны условию:

п1 + п2 + п3 +... + = k п1= 1 .

1 < п < п_ • д V/ = 2, 5

Тогда формула, приведенная в теореме, запишется более кратко:

X с (п1 • q, П2) •с (п2 • q, пз) • ...-с • q, п) =

5-1

= X П с (п • q, п+1).

Рассмотрим применение формулы из теоремы в двух частных случаях.

1. Произведем подсчет деревьев, имеющих £-1 ярус. В случае 5 = £-1 имеется 2 набора чисел, удовлетворяющих условиям (**):

п2 п3 п4

2 1 1 1

1 2 1 1

1 1 1 2

Для первого набора чисел: С(д, 2)С(2д, 1)-С(д, 1)С(д, 1),..С(д, 1) = = С(д, 2)2ддм = С(д, 2)-2-ды Ровно столько различных деревьев имеют k пучков, распределенных в £-1 ярус по одному пучку, и лишь во втором ярусе 2 пучка.

Для второго набора чисел и далее, кроме последнего, получается тоже С(д, 2) • 2 • дк-3 деревьев.

ВпоследнемслучаеС(д,1) • С(д,1) • ... • С(д, 1) х х С(д, 2) = С(д, 2) • дk-3 деревьев.

Итого получим, что £-1 ярус имеют С(д, 2) • 2 • дк-3 • (k-3) + С(д, 2) • дk-3 = С(д, 2) х х д£-3(2£-5) различных деревьев.

2. Произведем подсчет деревьев, имеющих k ярусов. В случае 5 = k имеется только один

набор чисел, удовлетворяющих условию (**): п2 = 1, п3 = 1, ... , пк = 1. Таким образом, k ярусов имеют gk-1 различных деревьев.

Значения, полученные по формуле для случаев 5 = £-1 и 5 = согласуются с проведенными комбинаторными подсчетами.

Пример. В качестве примера произведем подсчет различных максимальных префиксных кодов с кодирующим алфавитом Ж = {0, 1, 2} и количеством слов 9.

Имеем д = 3, 9 = 4 • 2 + 1, поэтому k = 4.

1 ярус имеет 0 деревьев, т. к. k ф 1.

2 яруса имеют С(д, £-1) = С(3, 3) = 1 дерево.

Подсчитаем количество деревьев, имеющих 3 яруса и 9 концевых вершин. Условиям (*) удовлетворяют пары чисел (1, 2) и (2, 1). Получим:

С(3, 1) • С(3, 2) + С(3, 2) • С(6, 1) = 3 • 3 + + 3 • 6 = 27 деревьев.

Подсчитаем количество деревьев, имеющих 4 яруса и 9 концевых вершин. Условиям (**) удовлетворяет одна тройка чисел (1, 1, 1), поэтому имеется С(3, 1) • С(3, 1) • С(3, 1) = 27 деревьев.

Итого имеется 55 различных деревьев, а значит, 55 соответствующих им различных максимальных префиксных кодов.

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

- если остаток от деления г на д-1 не равен 1, то число таких кодов №(г,ц) = 0;

- если остаток от деления г на д-1 равен 1, а частное равно то число таких кодов И(г, д находится по формуле:

Жг,д) = Х X ПС(п/ д,П+1).

5=1

Здесь второе суммирование производится по всем наборам (п1, п2, ... , п), удовлетворяющим условиям (***), сформулированным выше.

Далее приведем две гипотезы, для которых у авторов в настоящее время нет ни доказательств, ни контрпримеров.

Пусть А - конечный язык, заданный над алфавитом £.

Для языка А с £* обозначим ру(А) = {и ёА|(Уу е А) и £ ОргеДу)}. Здесь ОргеДу) -множество всех собственных префиксов слова V, включая е.

Гипотеза 1. Если языки А и В коммутируют, то верно равенство:

ру(А) • ру(Б) = ру(Б) • ру(А).

Гипотеза 2. Если верна гипотеза 1, то можно выбрать некоторое префиксное множество С с £* так, что А,В с С*.

Заметим, что, например, пары бесконечных языков А = £2 х £* и Б = £4 х £* для произвольного алфавита £ контрпримерами ко второй гипотезе не являются, поскольку мы можем выбрать не только С = £2, но и С = £. Для ана-

лиза обеих сформулированных гипотез может оказаться полезным следующий факт: вообще говоря, ру (А) • ру(Б) фру(А • Б).

Отметим еще, что с задачей описания критериев равенства А • Б=Б • А, а также с многими из задач, рассматривавшимися прежде всего в [4, 5], непосредственно связана задача «извлечения корня» из заданного языка: для заданного языка А с £* требуется найти максимально возможное п е N и зависящий от п язык Б такие, что А = Бп. До конца эта задача авторами еще не исследована, поэтому приведем лишь один интересный пример: для произвольного

алфавита £ (в т. ч. при |£| = 1 и |£| = ю) из языка и £ извлекается не только «очевидный»

25'-10 I I II-

квадратный корень II £ , но и И £' .

1<1<5 ¿£{1,2,4,5}

Таким образом, в случае языков операция извлечения корня заданной степени не является однозначной функцией.

Список литературы

1. Лаллеман Ж. Полугруппы и комбинаторные приложения. М., 1985. 376 с.

2. Melnikov B. The Equality Condition for Infinite Catenations of Two Sets of Finite Words // Int. J. of Found. of Comp. Sci. 1993. Vol. 4, № 3. Р. 267-274.

3. Melnikov B. Some Equivalence Problems for Free Monoids and for Subclasses of the CF-grammars Class // Number Theor. and Algebr. Methods in Comput. Sci. 1995. P. 125-137.

4. Мельников Б.Ф. Описание специальных подмоноидов глобального надмоноида свободного моноида // Изв. высш. учеб. заведений. Математика. 2004. № 3. С. 46-56.

5. Мельников Б. Некоторые следствия условия эквивалентности однозначных скобочных грамматик // Вестн. Моск. ун-та. Сер. 15. 1991. № 3. С. 51-53.

6.Дубасова О.А., Мельников Б.Ф. Об одном расширении класса контекстно-свободных языков // Программирование. 1995. № 6. С. 46-56.

7. Melnikov B., Kashlakova E. Some Grammatical Structures of Programming Languages as Simple Bracketed Languages // Informatica. 2000. Т. 11, № 4. С. 441-446.

8. Гинзбург С. Математическая теория контекстно-свободных языков. М., 1970. 232 с.

9. Станевичене Л. Об одном средстве исследования бесконтекстных языков // Кибернетика. 1989. № 4. С. 135-136.

10. Staneviciené L. D-graphs in ^^ext-Pree Language Theory // Informatica Lithuanian Acad. Sci. 1997. Vol. 8, №. 1. С. 43-56.

11. Мейтус В. Разрешимость проблемы эквивалентности детерминированных магазинных автоматов // Кибернетика и систем. анализ. 1992. № 5. С. 20-45.

12. Sénizergues G. L(A)=L(B)? Decidability Results From Complete Formal Systems // Theor. Comput. Sci. 2001. Vol. 251, № 1-2. С. 1-166.

13. Мельников Б.Ф. Подклассы класса контекстно-свободных языков. М., 1995. 160 с.

14. Melnikov B. 2ra-Finite Automata and Sets of Obstructions of Their Languages // Korean J. of Computational and Appl. Math. 1999. № 6. P. 23-28.

15. Мельников Б.Ф. Об ю-языках специальных биллиардов // Дискрет. математика. 2002. № 3. С. 95-105.

16. Melnikov B. On an Expansion of Nondeterministic Finite Automata // J. Applied Mathematics and Computing. 2007. Т. 24, № 1-2. С. 155-165.

17. Драгович В., Раднович М. Интегрируемые биллиарды, квадрики и многомерные поризмы Понселе. М., 2010. 338 с.

18. Уфнаровский В. Комбинаторные и асимптотические методы в алгебре // Итоги науки и техн. Современные проблемы математики. Фундамент. направления. 1990. Т. 6. С. 5-177.

19. Белов A., Борисенко В., Латышев В. Мономиальные алгебры // Итоги науки и техн. Соврем. математика и ее прил. Темат. обзоры. 2002. Т. 26. С. 35-214.

20. Корабельщикова С.Ю., Чесноков А.И. Об одном алгоритме определения количества циклических кодов // Междисциплинарные исследования в области математического моделирования и информатики: материалы 3-й науч.-практ. internet-конф. Ульяновск, 2014. С. 37-41.

21. Корабельщикова С.Ю., Чесноков А.И. О числе различных циклических кодов заданной длины // Вектор науки ТГУ 2013. № 4(26). С. 25-26.

22. Зяблицева Л.В., Корабельщикова С.Ю., Чесноков А.И. Линейные коды, исправляющие ошибки, и алгоритмы их подсчета // Эврист. алгоритмы и распределенные вычисления. 2014. Т. 1, вып. 3. С. 47-59.

23. Яблонский С.В. Введение в дискретную математику: учеб. пособие для студентов вузов. 3-е изд. М., 2002. 384 с.

24. Гаврилов Г.П., Сапоженко А.А. Задачи и упражнения по дискретной математике. М., 2004. 416 с.

References

1. Lallement G. Semigroups and Combinatorial Applications. Wiley, 1979. 376 p.

2. Mel'nikov B. The Equality Condition for Infinite Catenations of Two Sets of Finite Words. Int. J. Found. Comput. Sci., 1993, vol. 4, no. 3, pp. 267-274.

3. Mel'nikov B. Some Equivalence Problems for Free Monoids and for Subclasses of the CF-grammars Class. Number Theor. Algebr. Methods Comput. Sci., 1995, pp. 125-137.

4. Mel'nikov B.F. Opisanie spetsial'nykh podmonoidov global'nogo nadmonoida svobodnogo monoida [Special Submonoids Description of Global Supermonoid of Free Monoid]. Izv. vussh. ucheb. zavedeniy. Matematika, 2004, no. 3, pp. 46-56.

5. Mel'nikov B.F. Nekotorye sledstviya usloviya ekvivalentnosti odnoznachnykh skobochnykh grammatik [Some Consequences of Equivalence Condition of Unambiguous Parenthesis Grammar]. Vestn. Mosk. univ., Ser. 15, 1991, no. 3, pp. 51-53.

6. Dubasova O.A., Mel'nikov B.F. Ob odnom rasshirenii klassa kontekstno-svobodnykh yazykov [On an Extension of the Context-Free Languages Class]. Programmirovanie, 1995, no. 6, pp. 46-56.

7. Mel'nikov B., Kashlakova E. Some Grammatical Structures of Programming Languages as Simple Bracketed Languages. Informatica, 2000, vol. 11, no. 4, pp. 441-446.

8. Ginzburg S. Matematicheskaya teoriya kontekstno-svobodnykh yazykov [Mathematical Theory of the Context-Free Languages]. Moscow, 1970, 232 p.

9. Staneviciene L. Ob odnom sredstve issledovaniya beskontekstnykh yazykov [On a Research Instrument of Context-Free Languages]. Kibernetika, 1989, no. 4, pp. 135-136.

10. Staneviciene L. D-graphs in Сontext-Free Language Theory. Informatica Lithuanian Acad. Sci., 1997, vol. 8, no. 1, pp. 43-56.

11. Meytus V. Razreshimost' problemy ekvivalentnosti determinirovannykh magazinnykh avtomatov [Equivalence Problem Solubility of Deterministic Pushdown Automaton]. Kibernetika i sistem. analiz, 1992, no. 5, pp. 20-45.

12. Senizergues G. L(A)=L(B)? Decidability Results From Complete Formal Systems. Theor. Comput. Sci., 2001, vol. 251, no. 1-2, pp. 1-166.

13. Mel'nikov B.F. Podklassy klassa kontekstno-svobodnykh yazykov [Subclasses of a Context-Free Languages Class]. Moscow, 1995. 160 p.

14. Mel'nikov B. 2ra-Finite Automata and Sets of Obstructions of Their Languages. Korean J. Comput. Appl. Math, 1999, no. 6, pp. 23-28.

15. Mel'nikov B.F. Ob ra-yazykakh spetsial'nykh billiardov [On the Special Billiards ra-Languages ]. Diskret. matematika, 2002, no. 3, pp. 95-105.

16. Mel'nikov B. On an Expansion of Nondeterministic Finite Automata. J. Appl. Math. Comp., 2007, vol. 24, no. 1-2, pp. 155-165.

17. Dragovich V., Radnovich M. Integriruemye billiardy, kvadriki i mnogomernye porizmy Ponsele [Integrable Billiards, Quadrics and Multidimensional Poncelet Porisms]. Moscow, 2010. 338 p.

18. Ufnarovskiy V. Kombinatornye i asimptoticheskie metody v algebre [Combinatorial and Asymptotic Methods in Algebra]. Itogi Nauki Tekhn. Ser.: Sovr. probl. matematiki. Fundament. napravleniya, 1990, vol. 6, pp. 5-177.

19. Belov A., Borisenko V., Latyshev V Monomial'nye algebry [Monomial Algebra]. Itogi Nauki Tekhn. Ser.: Sovr. mat. i ee pril. Tematicheskie obzory, 2002, vol. 26, pp. 35-214.

20. Korabel'shchikova S.Yu., Chesnokov A.I. Ob odnom algoritme opredeleniya kolichestva tsiklicheskikh kodov [On a Number of Cyclic Codes Algorithm]. Mezhdistsiplinarnye issled. v oblasti mat. modelirovaniya i informatiki: materialy 3-y nauch.-prakt. internet-konf. [Multidisciplinary Research in the Math. Model and Computer Sci.: Proc. of the 3rd Sci. and Practical Internet-Conf.]. Ulyanovsk, 2014. pp. 37-41.

21. Korabel'shchikova S.Yu., Chesnokov A.I. O chisle razlichnykh tsiklicheskikh kodov zadannoy dliny [On a Number of Different Cyclic Codes of the Specified Length]. Vektor nauki TGU, 2013, no. 4(26), pp. 25-26.

22. Zyablitseva L.V, Korabel'shchikova S.Yu., Chesnokov A.I. Lineynye kody, ispravlyayushchie oshibki, i algoritmy ikh podscheta [Linear Error-Correcting Codes and Algorithms for Their Calculations]. Evrist. algoritmy i raspredelennye vychisleniya, 2014, vol.1, no. 3, pp. 47-59.

23. Yablonskiy S.V. Vvedenie v diskretnuyu matematiku: ucheb. posobie dlya studentov vuzov [Introduction to Discrete Mathematics]. Moscow, 2002. 384 p.

24. Gavrilov G.P., Sapozhenko A.A. Zadachi i uprazhneniya po diskretnoy matematike [Exercises on Discrete Mathematics]. Moscow, 2004. 416 p.

Korabel'shchikova Svetlana Yur'evna

Institute of Mathematics, Information and Space Technologies, Northern

Mel'nikov Boris Feliksovich

Togliatti Branch of Samara State University

maximal prefix codes and subclasses OF THE context-free LANGUAGES CLASS

This paper analyzes the relation between maximal prefix codes, formal language theory and alphabetic coding. Commutation conditions in the global supermonoid of the free monoid, equivalence criterion of a pair of finite languages and a range of other results, connected with infinite language iterations, are expressed in terms of maximal prefix codes. Many of these results are related to the algorithmic problems of monomial algebra (i.e. associative algebras defined by the so-called languages of obstructions).

Prefix codes are mostly used in alphabetic coding, as the prefix property guarantees unambiguous decodability. Maximal prefix codes have a range of other properties: the MacMillan's inequality becomes equality for them and all the knots of a code tree are saturated.

We used the relation between the maximal prefix codes and the code trees and calculated the number of maximal prefix codes of the given power r in the q-alphabetic. In this paper we deduce the general formula and give its typical applications.

The maximal prefix codes of power r over the q-alphabetic do not exist if the remainder on dividing r by q-1 isn't equal to 1.

The quotient k of r and q-1 can be explanated as the maximal quantity of tiers in the code tree and as the quantity of beams from q edges of the tree. The setup (n1, n2, n3, ..., ns) represents the distribution of these beams over the tiers of the code tree.

A number of unsolved problems and our conjectures of necessary conditions of commutation, requiring further verification, are given in the conclusion.

Keywords: context-free language, prefix code, code tree, maximal prefix code.

Контактная информация: Корабельщикова Светлана Юрьевна адрес: 163002, г. Архангельск, наб. Северной Двины, д. 17;

e-mail: kmv@atnet.ru Мельников Борис Феликсович адрес: 445027, Самарская область, г. Тольятти, ул. Юбилейная, д. 31г;

e-mail: bormel@rambler.ru

Рецензент - Андреев П.Д., кандидат физико-математических наук, доцент кафедры математического анализа, алгебры и геометрии института математики, информационных и космических технологий Северного (Арктического) федерального университета имени М.В. Ломоносова