Научная статья на тему 'УПРОЩЁННЫЕ РЕГУЛЯРНЫЕ ЯЗЫКИ И СПЕЦИАЛЬНОЕ ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ НА КЛАССЕ РЕГУЛЯРНЫХ ЯЗЫКОВ. ЧАСТЬ II'

УПРОЩЁННЫЕ РЕГУЛЯРНЫЕ ЯЗЫКИ И СПЕЦИАЛЬНОЕ ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ НА КЛАССЕ РЕГУЛЯРНЫХ ЯЗЫКОВ. ЧАСТЬ II Текст научной статьи по специальности «Математика»

CC BY
33
5
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
РЕГУЛЯРНЫЕ ЯЗЫКИ / НЕДЕТЕРМИНИРОВАННЫЕ КОНЕЧНЫЕ АВТОМАТЫ / БИНАРНЫЕ ОТНОШЕНИЯ / ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ / УПРОЩЕНИЕ АВТОМАТОВ / АЛГОРИТМЫ

Аннотация научной статьи по математике, автор научной работы — Мельников Борис Феликсович, Долгов Василий Николаевич

Рассматриваемое в статье отношение эквивалентности S на классе регулярных языков необходимо для более полного исследования ранее определённого в наших статьях отношения R. Кроме этого, мотивация к рассмотрению отношения S заключается в необходимости его применения для исследования т. н. лепестковых автоматов - которое также было начато в одной из наших предыдущих статей. Конкретно, для получения лепесткового автомата необходим такой алгоритм неэквивалентного преобразования автомата, как объединение двух букв рассматриваемого алфавита, - и с этим преобразованием связаны оба упомянутых отношения эквивалентности на классе регулярных языков, R и S. В свою очередь лепестковые автоматы возникают при описании нескольких различных алгоритмов проверки бинарного отношения эквивалентности в бесконечности, также рассмотренного в нескольких наших предыдущих статьях, в частности - при использовании в этих алгоритмах конечных автоматов PRI и NSPRI. Итак, в настоящей статье мы определяем S - специальное бинарное отношение на множестве регулярных языков, показываем выполнение всех свойств отношения эквивалентности - и поэтому отношение S разделяет весь класс регулярных языков на непересекающиеся подклассы. Вследствие этого большинство рассматриваемых в теории языков задач можно решать только для одного представителя каждого такого подкласса - причём обычно желательно рассматривать так называемый упрощённый язык, он один в каждом подклассе. Понятие упрощённого языка основано на соединении т. н. параллельных букв, и такому упрощённому языку соответствует специально вводимый нами упрощённый конечный автомат. Всё сказанное позволяет работать лишь с конечным числом рассматриваемых регулярных языков, при условии, что соответствующие им конечные автоматы имеют априори ограниченное число состояний. Оба эти отношения эквивалентности, S и R, сохраняют отношение #, определяемое для конкретного регулярного языка, - и, следовательно, позволяют использовать многие доказанные ранее свойства регулярных языков и недетерминированных конечных автоматов с любым из автоматов его класса эквивалентности и соответствующим ему языком. В представляемой части II мы продолжаем рассмотрение свойств отношения S - существенно более сложных свойств, чем рассматривались в части I. Среди прочего мы приводим варианты применения отношения параллельности букв в нескольких задачах теории формальных языков

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

SIMPLIFIED REGULAR LANGUAGES AND A SPECIAL EQUIVALENCE RELATION ON THE CLASS OF REGULAR LANGUAGES. PART II

The equivalence relation S on the class of regular languages, considered in this paper, is necessary for a more complete study of the relation R previously defined in our articles. In addition, the motivation for considering the relation S is the need to apply it to the study of so-called petal (semiflower) automata, which was also started in one of our previous papers. Specifically, in order to obtain a petal automaton, there is necessary to consider such an algorithm of the nonequivalent transformation of the automaton as the union of two letters of the considered alphabet, and both the mentioned equivalence relations on the class of regular languages, i.e. relations R and S, are associated with this transformation. In turn, petal automata arise when describing several different algorithms for checking the binary relation “equivalence at infinity”, also discussed in some our previous papers, in particular, when using PRI and NSPRI finite automata in these algorithms. Thus, in this paper we define S, a special binary relation on a set of regular languages, show the fulfillment of all the properties of equivalence relations; therefore the relation S divides the whole class of regular languages into some disjoint subclasses. As a result, for most of the problems of the theory of formal languages, we can take only one representative of each such class; and it is usually desirable to consider the so-called simplified language, it is the only in each such subclass. The concept of a simplified language is based on the combination of so-called parallel letters, and the simplified finite automaton specially introduced by us corresponds to such a simplified language. All this makes it possible to limit the number of regular languages under consideration to work with a finite number of corresponding finite automata; moreover, such automata have a pre-fixed number of states. Both these equivalence relations, S and R, preserve the relation # defined for a particular regular language, and, therefore, allow to use many previously proven properties of regular languages and nondeterministic finite automata for arbitrary automaton of its equivalence class and the corresponding language. In the presented Part II, we continue to consider the properties of the relation S, which are significantly more complicated than ones considered in Part I. Among other things, we present variants of the application of the parallel letter in some problems of the theory of formal languages.

Текст научной работы на тему «УПРОЩЁННЫЕ РЕГУЛЯРНЫЕ ЯЗЫКИ И СПЕЦИАЛЬНОЕ ОТНОШЕНИЕ ЭКВИВАЛЕНТНОСТИ НА КЛАССЕ РЕГУЛЯРНЫХ ЯЗЫКОВ. ЧАСТЬ II»

Упрощённые регулярные языки и специальное отношение эквивалентности на классе регулярных языков. Часть II

Б. Ф. Мельников, В. Н. Долгов

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

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

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

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

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

Ключевые слова—регулярные языки, недетерминированные конечные автоматы, бинарные отношения, отношение эквивалентности, упрощение автоматов, алгоритмы.

Статья получена 10 октября 2022 г.

Борис Феликсович Мельников, Университет МГУ-ППИ в Шэнь-чжэне (bormel@smbu.edu.cn).

Василий Николаевич Долгов, Ульяновский государственный технический университет (terenga74@mail.ru).

Предлагаемая часть II настоящей статьи является продолжением части I, т.е. [1]. Мы рассматриваем более сложные свойства специального отношения эквивалентности на классе регулярных языков. Нумерация определений и утверждений продолжается, а нумерация ссылок на использованные источники - новая, начинается с 1.

V. БОЛЕЕ СЛОЖНЫЕ СВОЙСТВА ОТНОШЕНИЯ ПАРАЛЛЕЛЬНОСТИ БУКВ И ПОНЯТИЕ УПРОЩЁННОГО АВТОМАТА

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

В начале приведём два важных утверждения, 4 и 5. Первое из них мы будем использовать для последующего определения упрощённого автомата, а второе нужно для рассмотрения отношения #, относящегося к языку такого автомата.

Утверждение 4: Пусть K - канонический автомат для заданного регулярного языка L С I*. Тогда для каждой пары букв а, b G I выполнено следующее:

L К

а || b^ а || b.

Доказательство.

=> По определению 1 и утверждению 1 (часть I);

По определению 1. □

L

Таким образом, параллельность букв в языке а | b однозначно определяется автоматом K.

Утверждение 5: Пусть L - некоторый регулярный язык над алфавитом I. Тогда для любой пары букв а, b G I выполнено следующее:

L Lr

а| b а | b ,

L

т. е. параллельность а | b выполняется и для зеркального языка.

1 То есть здесь мы применяем обычный, «прямой» порядок определений: сначала - для автоматов, а потом - для соответствующих языков. (Напомним, что в разделе III части I был использован «обратный порядок» - о чём там была соответствующая сноска.)

Доказательство.

L

=> Пусть а || Ь, тогда для некоторого определяющего

язык Ь автомата К = Б,Р) выполнен сле-

к

дующий факт: а || Ь. Рассмотрим автомат

Кк = (д,1,ук,5,Р),

определяющий язык . Для него

ТК(Я1,Я2)= т(Я2,Я1) Э а ^ ТК(Я1,Я2) = Т(Я2, Я1) Э Ь. •<= Обратный факт доказывается аналогично. □

Пример 2: Рассмотрим автомат К, приведённый на рис. 3 (для удобства повторяем этот рисунок из части I),

Рис. 3. Канонический автомат К.

также рассмотрим соответствующий язык L. Как мы уже знаем, выполнено следующее:

L K

а || b и а || b.

То же самое выполняется для языка LR и автомата KR:

lr kr

а || b and а || b

(в рассматриваемом нами примере они просто совпадают соответственно с L и K).

Итак, мы знаем, что каждый регулярный язык L даёт некоторое (зависящее от этого языка) разбиение заданного алфавита I на подмножества параллельных букв. При этом зеркальный регулярный язык LR, согласно утверждению 5, даёт то же самое разбиение:

*=и *,

i=1

где

04 = 0 , Oi П Oj = 0 для i, j G {1,2,..., n}, i = j; будем обозначать это разбиение следующим образом:

O = { Oi , 02,...,0n }.

При этом далее мы будем рассматривать регулярные языки и конечные автоматы над множеством о, которое можно считать новым алфавитом; при этом каждый элемент oi G о будем рассматривать:

• ив качестве буквы этого нового алфавита о,

• и, как выше, в качестве подмножества множества букв старого алфавита I.

Всюду далее мы предполагаем, что L - заданный регулярный язык над алфавитом I, K - канонический автомат2 определяющий L, а о - разбиение алфавита I,

2 Ещё раз отметим, что согласно предыдущим договорённостям возможно применение таких обозначений:

К = (Q, I, S,S,?).

соответствующее языку Ь. Приведём два эквивалентных утверждению 4 варианта - утверждения 6 и 7.

Утверждение 6: Пусть а, Ь £ 1. В этом случае условие а, Ь £ ог (ог £ о) выполняется тогда и только

к

тогда, когда а| Ь. □

Утверждение 7: Пусть а, Ь £ 1. Тогда а, Ь £ ог (где Ог £ о) в том и только том случае, если

У £ д)(б(я,а)= 6(Я,Ь)). □

Доказательства обоих утверждений очевидны: они являются следствием утверждения 4 и вариантов определения параллельных букв. При этом утверждение 7 позволяет дать определение так называемого упрощённого конечного автомата над алфавитом о. Этот автомат определяет регулярный язык, который мы также будем называть упрощённым.

Определение 5: Упрощённый автомат для заданного регулярного языка Ь определяется как

К = (§ ,о,бД р),

где:

• о определённый ранее упрощённый алфавит для языка Ь;

• (__, Б и Р - элементы пятёрки __, который также определён ранее;

• для всех пар, состоящих из состояния ц £ (_ и буквы а £ 1 (где при этом а £ ог) полагаем

6(ц,о0= __(ц,а). □

Заметим, что это определение можно рассматривать и в качестве алгоритма, т. е. как процесс «объединения» параллельных букв. При этом число букв в получающемся алфавите может только уменьшаться - отсюда и название «упрощённый». Также отметим, что К опрделяется только на основе рассматриваемого регулярного языка Ь, поскольку автомат К является его инвариантом. При этм возможно равенство

6(Я,ог) = __(ц,а), поскольку, согласно утверждению 7,

6(ц, а) = 6(ц, Ь) при а,Ь £ ог .

Определение автомата К и утверждение 7 могут быть объединены вместе следующим образом.

Утверждение 8: Пусть задан некоторый ^регулярный язык Ь; рассмторим задающие его автоматы К и К. Тогда для каждых буквы а £ 1 и буквы-множества ог £ о выполнено следующее условие: а £ ог тогда и только тогда, когда

(уц £ Щ (б(ц,оО = 6(ц,а)) .

Доказательство утверждения очевидно. □

VI. ПРИМЕНЕНИЕ ПАРАЛЛЕЛЬНОСТИ БУКВ В ЗАДАЧАХ ТЕОРИИ ФОРМАЛЬНЫХ ЯЗЫКОВ

Этот раздел озаглавлен «Применение ... в задачах теории формальных языков». При этом мы имеем в виду, что доказываемые в этом разделе теоремы формулируют такие важные свойства регулярных языков, как:

• вид отношения # для рассматриваемого языка -свойства этого отношения формулируются явно;

• вид функций фК и для некоторого соответствующего рассматриваемому языку конечного автомата К - свойства этих функций формулируются неявно, поскольку, например, использующиеся в теоремах языки (С~, £ ~ и т. п.) применятся также при определении упомянутых функций фК и

В начале раздела введём следующие новые обозначения.

• Пусть а £ I; обозначим ста подмножество множества I (ста £ ст), содержащее а.

• Пусть и = а1 ... ат, и = Ста, • • • Стат; тогда будем писать и £ и. Аналогично в общем случае, при этом и - слово языка ст*.

• Ь обозначает язык автомата К (упрощённый язык).

Теперь покажем, что в процессе объединения параллельных букв сохраняются важные свойства регулярных языков. В частности, автомат К также является каноническим, а язык Ь имеет ту же самую таблицу бинарного отношения #, что и язык Ь.

Теорема 1: Автомат К - детерминированный.

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

• К не изменяется, т. е. число стартовых состояний не превышает 1;

• согласно определению автомата К, £-перехды отсутствуют;

• для каждых состояния ц £ (( и буквы а £ ста

|6(я,СТа)| = |6(я,а)К 1,

поскольку детерминированным является и автомат К. □

Теорема 2: Пусть и £ и. Тогда для каждого состояния ц £ Б выполнено следующее:

u €££(q)

u GLf(q).

s G S—»qi—»

и поэтому

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

u = Ста ... Ста

ai G CTai, 6(q, Ста) = 6(q, a)

s G S-

отсюда u G (q).

K

qi

.... -m q;

Теорема 3: Пусть и £ и. Тогда для каждого состояния ц £ Б выполнено следующее:

u g Lf (q)

u GLf(q).

А следующая теорема 4, по-видимому, неочевидна -несмотря на очень простую формулировку.

Теорема 4: Автомат К - канонический автомат для языка Ь.

Доказательство состоит из следующих пунктов.

• Покажем, что в графе переходов автомата К отсутствуют недостижимые состояния.

Пусть ц £ К, тогда, поскольку автомат К является каноническим, выполнено следующее

= 0;

т. е. существует некоторое слово и £ С1~ (ц). Отсюда согласно теореме 2 мы получаем, что

и £С^(ц), и поэтому £|(я)= 0,

т. е. ц - достижимое состояние автомата К.

• Отсутствие в графе переходов автомата К бесполезных состояния. доказывается аналогично (согласно теореме 3).

• Покажем, что в автомате К отсутствуют эквивалентные состояния (т. е. такие, у которых совпадают выходные языки).

Предположим противное, т. е. пусть в автомате К

qi ~ q2, или,

Cout(qi)= Coul(q2).

out/

Доказательство.

=> Пусть и = а1 • • • ат, причём и £ (ц). Тогда в

__К

графе переходов автомата К существует следующий путь:

~ а1 ат ат

> ч;

Тогда по теореме 3 мы получаем следующее:

(щ) = { и £ I* I и £ и, и ££^1)} ,

£К"г(Я2) = { и £ I* | и £ и, и £СК1(А2)} ,

т.е. СК1 (ц1) = СК11 (ц2). Отсюда получаем, что в К _ К

автомате КБ также выполняется условие эквивалентности ц1 ~ ц2, что приводит к противоречию со сделанным предположением. □

Итак, упрощённый автомат К действительно является каноническим, причём он определяет упрощённый язык. Теперь докажем, что упрощённому языку Ь соответствует то же самое отношение эквивалентности #, что и исходному языку. В первую очередь покажем соответствие между языками Ь и Ь.

Теорема 5: и £ Ь и £ и 3, где и £ Ь.

Доказательство. Ь = £Кмг(б), где б - стартовое состо-_ К

яние автомата К. Согласно теореме 3,

u G LKut(s) <=> u G Lout(s),

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

где Lout(s) = L.

К

Обратный факт доказывается аналогично. □

Примерно так же доказывается и следующая теорема.

Утверждение 9: Если V £ V и — £ то V • — = V •

Доказательство. Применяем отображение а —> ста (где а £ I, Ста £ ст). □

3 Напомним, что необходимые обозначения были введены в начале раздела.

Теорема 6: Отношение # у языков Ь и Ь одно и то же.

Доказательство. Согласно очевидным следствиям, получаемым на основе утверждения 5, у языков Ь и Ь5 разбиение о одно и то же. Поэтому все приведённые выше утверждения и теоремы выполняются для этих двух языков одновременно (при этом для языка Ь5 соответствующие автоматы естественно обозначить К5 и К5).

Перейдём к непосредственному доказательству того, что отношение # не изменяется при преобразовании автомата К в К и обратно. Для этого мы ниже записываем определения отношения # для двух конкретных состояний (а именно, Ц1 и Ц2), и, используя теоремы 2 и 5, показываем возможность менять во всех формулах К_ на К и наоборот.

(т. е. К => К). _

Для автомата К отношение Б#У выполняется, когда

(Зи £ Ц (и = V—, V £ £К;(Б), — £ С^ (У)), отсюда и £ Ь, а поэтому

упрощённый язык Li над алфавитом о\ (i = 1,2), и существует биекция

oi

02,

и = V • — = V •

где — £ СК(Б) и — £ С'К^(У). Таким образом, для языка Ь и автомата К выполнено условие Б#У.

4= (т. е. К ^ _). _

Для автомата К_ отношение Б #У выполняется, когда

(Зи £ Г) (и = V», V ££К(Б),—К £СК^(У)).

Выберем некоторые V £ V и — £ для них

и = V • — = V • — и и = V- £ Ь,

где V £ СК^Б) и ш5 £ СКЪ (У). Это означает выполнение условия Б #У для заданного языка Ь и автоата К. □

VII. ЭКВИВАЛЕНТНЫЕ РЕГУЛЯРНЫЕ ЯЗЫКИ

Итак, в предыдущем разделе мы начали рассматривать, среди прочего, связь отношения параллельности букв в частности (и понятие упрощённого автомата вообще) - с отношением # для рассматриваемого языка, т. е. фактически эквалентность в «более широком» смысле - эква-лентность по отношению #, собственно отношение Я на регулярных языках. Здесь же, в этом и следующем разделах, мы переходим непосредственно к эквалентности в «более узком» смысле - к отношению Б на регулярных языках.

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

Определение 6: Языки Ь1 и Ь2 называются эквивалентными по упрощению, если языку Ьг соответствует

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

такая что она может быть расширена до ^ и ^ (т. е. упрощённые автоматы К1 и К2 совпадают с точностью до переобозначения букв и состояний). □

Отметим, что последнее определение действительно является определением отношения эквивалентности, поскольку упрощённый язык - как и упрощённый автомат -являются инвариантами регулярного языка5; следовательно, все регулярные языки разбиты на подмножества языков, в каждом из которых упрощённый язык один и тот же.

Пример 3: Языки, определяемые регулярными выражениями

= а* + Ь* + (а + Ь)* и Ь2 = е*

являются эквивалентными по упрощению, поскольку обоим языкам соответствует один и тот же упрощённый язык Ц = о*.

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

ог —»{аг,, аг2,..., }, где ог П о, = 0 ,

и так далее. При этом возможности применения нескольких вариантов такой «обратной операции» были показаны нами в [2] (см. также [4], [5]).

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

VIII. АВТОМАТЫ БЕЗ ПАРАЛЛЕЛЬНЫХ БУКВ

Как следует из названия раздела, мы будем рассматривать автоматы, не имеющие параллельных букв. Фактически алгоритм построения такого автомата, эквивалентного некоторому заданному, можно получить на основе предыдущего материла статьи (прежде всего - на основе раздела VII); но в настоящем разделе мы показываем, что приведённое ранее определение 5 можно считать конструктивным определением автомата без параллельных букв.

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

5 Неполными.

исследовать только конечное число автоматов - в тех случаях, когда мы ограничиваем сверху количество их состояний.

Следующее определение можно рассматривать как операцию «предварительного соединения» параллельных (с точки зрения рассматриваемого автомата) букв. А согласно дальнейшей теореме 7, такое предварительное объединение не изменяет не только получаемый упрощённый язык, но и получаемый упрощённый автомат.

Определение 7: Пусть К = (р,^ 6, Б,Р), а,Ь £ I к

и а || Ь. Также предполагаем, что I' = I' \{Ь}, а 6' -соответствующее ограничение функции переходов 6 для нового алфавита I' 6.

Тогда будем говорить, что автомат К' = (р, I',6', Б, Р) получен из автомата К объединением параллельных букв а и Ь 7. □

к

Теорема 7: Пусть К = (д,!,6,Б,Р), а,Ь £ I, а || Ь, а автомат К' получен из К объединением параллельных букв а и Ь. Тогда К = К'.

Доказательство. Мы уже знаем, что операции

K -> K

K -> K

когда мы можем заранее ограничить сверху число их состояний.

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

Теорема 8: Пусть п - заданное заранее максимально возможное число состояний упрощённого автомата. Тогда число различных упрощённых недетерминированных

9

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

конечных автоматов не превышает значения

2

2n -i

(2n - 1)2.

(1)

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

Пусть состояния рассматриваемого автомата, образующие множество

Q = {qi,q2,...,qn},

(2)

сохраняют свойство параллельности букв а | Ь (см. утверждение 1). При применении упрощающих операций к автоматам К и К' получаемый автомат К' будет отличаться от автомата К только тем, что множество ог (где ог э а, Ь) изменяется на ог \ {Ь} - а это для алфавита о несущественно. □

Итак, любой автомат может быть упрощён с помощью последовательности (возможно, пустой) «предварительного объединения» параллельных букв - с получением автомата, параллельных букв не имеющего. Из предыдущего материала статьи также следует, что подобные объединения могут быть проведены в произвольном порядке. Поэтому, как уже было сказано в начале раздела, приведённое ранее определение 5 можно считать конструктивным определением автомата без параллельных букв8. А поскольку для решения большинства задач, связанных с регулярными языками, важны только языки (автоматы) без параллельных букв, то наличие конструктивных алгоритмов построения таких автоматов даёт возможность в таких задачах рассматривать только конечное число автоматов - например, в тех случаях,

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

7 В первой части статьи несколько раз употреблялось обозначение 3Ч>Ч (К) - для объединения двух состояний, ц и ц'. Похожее обо-значние можно было бы ввести и в рассматриваемом случае, т. е. для объединения двух букв. Более того, при этом, по-видимому, упростятся некоторые формулы, связанные с преобразованиями полного автомата, описание таких преобразований должно стать более наглядным; наши статьи с этими описаниями процитированы выше, в том числе в части I. Мы предполагаем ввести подобные обозначения в следующих публикациях.

8 В принципе, таковым его можно было считать и без последующего

(т. е. приведённого после этого определения 5) материала. Однако здесь возникает примерно такая же ситуация, как и с разными типами языков в иерархии Хомского; например, для особенно интересного нам типа 3: можно ли считать конструктивным определением ргулярного

языка его запись в виде праволинейной грамматики (либо регулярного выражения) - или для этого необходим некоторый конечный автомат? По-видимому, это - «вопросы без ответа».

некоторым образом упорядочены (например, согласно индексации (2)), а сам этот автомат обозначен пятёркой

K = (Q,I,Y,S,F) 10.

Сопоставим каждой букве а G L (число |L| будет определено позже) двоичную матрицу размера n х n (см. рис. 4), где каждый элемент Ъ-ц равен 0 или 1; при этом мы считаем, что Ъ-ц = 1 тогда и только тогда, когда выполнено условие

а G Y(qi,qj).

Рис. 4. Булева матрица, определяющая для заданой буквы а € I соответствие состояний автомата К.

Очевидно, что такая матрица полностью определяет вхождение рассматриваемой буквы а £ I в функцию переходов (недетерминированного) автомата - а всё множество таких матриц определяет автомат и, следовательно, рассматриваемый регулярный язык. Также очевидно, что буквы, имеющие совпадающие матрицы, являются параллельными над автоматом К, и наоборот, если такие матрицы не совпадают, то соответствующие буквы параллельными над К не являются. Следовательно, число

2

попарно непараллельных букв не превышает 2П .

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

10 Напомним, что иногда применяемое в наших статьях определение функции у - как возможной альтернативы функции переходов 6 - было приведено в части I.

и

K

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

2

|I| < 2n - 1.

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

2

22n -1

Нужно также рассмотреть варианты стартовых и финальных состояний. Как для S, так и для F имеется 2n — 1 варианта выбора из полного множества (в обоих случаях мы также не рассматриваем множества, состоящие из одних нулей). Перемножая полученные значения, мы получаем ограничение (1). □

IX. ЗАКЛЮЧЕНИЕ

Итак, в этой статье мы определили упрощённый конечный автомат. Мы доказали, что для соответствующего языка этот автомат является каноническим; поэтому он однозначно определяет упрощённый язык, и вместо рассмотрения произвольных регулярных языков мы можем рассматривать только упрощённые. Более того, исходный регулярный язык и соответствующий упрощённый имеют одинаковые бинарные отношения #, что позволяет нам использовать всю предыдущую теорию, просто рассматривая упрощённые автоматы вместо произвольных конечных автоматов.

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

Как мы несколько раз отмечали в тексте статьи, некоторые связанные с упрощёнными автоматами и языками вопросы, в том числе - некоторые дополнительные подходы к классификация регулярных языков, были ранее рассмотрены в [2]. Также стоит отметить, что можно увидеть связь упомянутых в настоящей статье букв, параллельных некоторому языку, - с вопросами, рассмотренными в [6]. Всё это может дать ещё один подход к классификация регулярных языков - и в будущих публикациях мы предполагаем эти классификации объединить.

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

• построение любого автомата для заданного регулярного языка на основе базисного автомата для этого языка, [7];

• алгоритмы построения автомата COM, [3], [8], [9].

Такая тематика напрямую связана с текстом, приведённым в следующем абзаце.

В будущих публикациях мы планируем привести некоторые результаты вычислений, в которых получено количество упрощённых языков - для тех ситуаций, в которых автомат для рассматриваемого языка имеет ровно 2 состояния; эти результаты подтверждают приведённое выше значение верхней границы. Также стоит отметить, что мы можем применить «упрощение» практически к любому понятию теории регулярных языков. Например, мы можем изучить «упрощённый универсальный автомат», см. [3], [8], [9] и др. Как мы уже отмечали выше, мы также собираемся объединить две классификации обычных языков - т.е. классификацию, рассмотренную в настоящей статье, а также ту, которая может быть получена на основе [2].

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

[1] Мельников Б., Долгов В. Упрощённые регулярные языки и специальное отношение эквивалентности на классе регулярных языков. Часть I // International Journal of Open Information Technologies. -2022. - Vol. 10. No. 9. - P. 12-20.

[2] Melnikov B. The complete finite automaton // International Journal of Open Information Technologies. - 2017. - Vol. 5. No. 10. - P. 9-17.

[3] Melnikov B., Dolgov V. Some more algorithms for Conway's universal automaton // Acta Universitatis Sapientiae, Informatica. - 2014. -Vol. 6. No. 1. - P. 5-20.

[4] Melnikov B. Лепестковые конечные автоматы: основные определения, примеры и их связь с полными автоматами. Часть I // International Journal of Open Information Technologies. - 2022. -Vol. 10. No. 9. - P. 1-11.

[5] Melnikov B. Лепестковые конечные автоматы: основные определения, примеры и их связь с полными автоматами. Часть II // International Journal of Open Information Technologies. - 2022. -Vol. 10. No. 10. - P. 1-10.

[6] Melnikov B., Vakhitova A. Some more on the finite automata // The Korean Journal of Computational and Applied Mathematics (Journal of Computational and Applied Mathematics). - 1998. - Vol. 5, No. 3. -P. 495-505.

[7] Мельников Б., Сайфуллина М. О некоторых алгоритмах эквивалентного преобразования недетерминированных конечных автоматов // Известия высших учебных заведений. Математика. - 2009. - № 4. - С. 67-72.

[8] Долгов В., Мельников Б. Построение универсального конечного автомата. I. От теории к практическим алгоритмам // Вестник Воронежского государственного университета. Серия: Физика. Математика. - 2013. - № 2. - С. 173-181.

[9] Долгов В., Мельников Б. Построение универсального конечного автомата. II. Примеры работы алгоритмов // Вестник Воронежского государственного университета. Серия: Физика. Математика. -2014. -№ 1. - С. 78-85.

Борис Феликсович МЕЛЬНИКОВ,

профессор Совместного университета МГУ-ППИ

в Шэньчжэне, Китай

(http://szmsubit.ru/),

emaili : bormel@smbu.edu.cn,

email2: bf-melnikov@yandex.ru,

mathnet.ru: personid=2 7 9 67,

elibrary.ru: authorid=15715,

scopus.com: authorId=55954040300,

ORCID: orcidID=00 0 0-0 0 02-67 65-68 0 0.

Василий Николаевич ДОЛГОВ,

заместитель директора Тереньгульского лицея

при Ульяновском государственном

техническом университете (https://ulstu.ru/),

email: terenga74@mail.ru,

elibrary.ru: authorid=700000,

ORCID: orcidID=0000-0001-5925-541X.

Simplified regular languages and a special equivalence relation on the class of regular languages. Part II

Boris Melnikov, Vasily Dolgov

Abstract—The equivalence relation S on the class of regular languages, considered in this paper, is necessary for a more complete study of the relation R previously defined in our articles. In addition, the motivation for considering the relation S is the need to apply it to the study of so-called petal (semi-flower) automata, which was also started in one of our previous papers. Specifically, in order to obtain a petal automaton, there is necessary to consider such an algorithm of the nonequivalent transformation of the automaton as the union of two letters of the considered alphabet, and both the mentioned equivalence relations on the class of regular languages, i.e. relations R and S, are associated with this transformation. In turn, petal automata arise when describing several different algorithms for checking the binary relation "equivalence at infinity", also discussed in some our previous papers, in particular, when using PRI and NSPRI finite automata in these algorithms.

Thus, in this paper we define S, a special binary relation on a set of regular languages, show the fulfillment of all the properties of equivalence relations; therefore the relation S divides the whole class of regular languages into some disjoint subclasses. As a result, for most of the problems of the theory of formal languages, we can take only one representative of each such class; and it is usually desirable to consider the so-called simplified language, it is the only in each such subclass.

The concept of a simplified language is based on the combination of so-called parallel letters, and the simplified finite automaton specially introduced by us corresponds to such a simplified language. All this makes it possible to limit the number of regular languages under consideration to work with a finite number of corresponding finite automata; moreover, such automata have a pre-fixed number of states.

Both these equivalence relations, S and R, preserve the relation # defined for a particular regular language, and, therefore, allow to use many previously proven properties of regular languages and nondeterministic finite automata for arbitrary automaton of its equivalence class and the corresponding language.

In the presented Part II, we continue to consider the properties of the relation S, which are significantly more complicated than ones considered in Part I. Among other things, we present variants of the application of the parallel letter in some problems of the theory of formal languages.

Keywords—regular languages, nondeterministic finite automata, binary relations, equivalence relation, simplification of automata, algorithms.

References

[1] Melnikov B., Dolgov V. Simplified regular languages and a special equivalence relation on the class of regular languages. Part I // International Journal of Open Information Technologies. - 2022. - Vol. 10. No. 9. - P. 12-20 (in Russian).

[2] Melnikov B. The complete finite automaton // International Journal of Open Information Technologies. - 2017. - Vol. 5. No. 10. - P. 9-17.

[3] Melnikov B., Dolgov V. Some more algorithms for Conway's universal automaton // Acta Universitatis Sapientiae, Informatica. - 2014. - Vol. 6. No. 1. - P. 5-20.

[4] Melnikov B. Petal (semi-flower) finite automata: basic definitions, examples and their relation to complete automata. Part I // International Journal of Open Information Technologies. - 2022. - Vol. 10. No. 9.-P. 1-11 (in Russian).

[5] Melnikov B. Petal (semi-flower) finite automata: basic definitions, examples and their relation to complete automata. Part II // International Journal of Open Information Technologies. - 2022. - Vol. 10. No. 10. - P. 1-10 (in Russian).

[6] Melnikov B., Vakhitova A. Some more on the finite automata // The Korean Journal of Computational and Applied Mathematics (Journal of Computational and Applied Mathematics). - 1998. - Vol. 5, No. 3. - P. 495-505.

[7] Melnikov B., Sayfullina M. On some algorithms for equivalent transformation of nondeterministic finite automata // News of higher educational institutions. Mathematics. - 2009. - No. 4.

- P. 67-72 (in Russian).

[8] Dolgov V., Melnikov B. Building a universal finite automaton.

I. From the theory to the practical algorithms // Bulletin of the Voronezh State University. Series: Physics. Mathematics.

- 2013. - No. 2. - P. 173-181 (in Russian).

[9] Dolgov V., Melnikov B. Building a universal finite automaton.

II. Examples of how algorithms work // Bulletin of the Voronezh State University. Series: Physics. Mathematics. -2014. - No. 1. - P. 78-85 (in Russian).

Boris MELNIKOV,

Professor of Shenzhen MSU-BIT University, China

(https://szmsubit.ru/en/),

emaili : bormel@smbu.edu.cn,

email2: bf-melnikov@yandex.ru,

mathnet.ru: personid=2 7 9 67,

elibrary.ru: authorid=15715,

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

scopus.com: authorId=55954040300,

ORCID: orcidID=00 0 0-0 0 02-67 65-68 0 0.

Vasily DOLGOV,

Vice-director of Terenga Lyceum

at Ulyanovsk State Technical University

(https://ulstu.ru/),

email: terenga74@mail.ru,

elibrary.ru: authorid=700000,

ORCID: orcidID=0000-0001-5925-541X.

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