Научная статья на тему 'О пополнении группоида до программной алгебры'

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

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

Аннотация научной статьи по математике, автор научной работы — Демидов Алексей Александрович

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

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

Текст научной работы на тему «О пополнении группоида до программной алгебры»

ISSN 2079-3316 ПРОГРАММНЫЕ СИСТЕМЫ: ТЕОРИЯ И ПРИЛОЖЕНИЯ №3(26), 2015, с. 45-52

УДК 519.681.2

А. А. Демидов

О пополнении группоида до программной алгебры

Аннотация. Задача вложения конечного группоида в конечную программную алгебру имеет прикладное значение для преобразования алгоритма в форму, пригодную для вычисления на алгебраическом процессоре. Она была поставлена и решена Н. Н. Непейводой для полугрупп, затем им же было построено вложение группоида в бесконечную программную алгебру. В данной работе строится вложение конечного группоида в конечную программную алгебру, что завершает решение указанной задачи.

Ключевые слова и фразы: алгебры, алгебраические вычисления, вложение группоида.

Программные алгебры GAPS (Generic algebraic program structure) были предложены Н. Н. Непейводой [1] в рамках развития алгебраических методов представления программных систем.

Задача вложения конечного группоида в конечную программную алгебру имеет прикладное значение для преобразования алгоритма в форму, пригодную для вычисления на алгебраическом процессоре. Она была поставлена и решена в работе [1] для полугрупп, затем было построено вложение группоида в бесконечную программную алгебру [2].

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

Программная алгебра — бигруппоид с ассоциативной операцией «о» композиции программ и неассоциативной операцией «*» аппликации (применения программы к данным), которые связаны тождествами:

(х * /) * д = х * (/ о д); (1) 0 * х = х * 0 = 0;

х * е = х.

Проект проводится при финансовой поддержке государства в лице Минобрнауки России (идентификатор № RFMEFI61314X0030).

© А. А. Демидов, 2015

© Институт программных систем имени А. К. Айламазяна РАН, 2015 © Программные системы: теория и приложения, 2015

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

С «переходной системой» (А, Q, у) конечного автомата над входным алфавитом А с множеством состояний Q и функцией переходов р: Q х А ^ Q можно связать полугруппу подстановок на множестве Q [3,4]: каждой букве а € А на основе функции переходов поставим в соответствие подстановку

Ра : Я ^ Я, Ра (я) = р(я,а)

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

(2) раЬ = Рь(Ра(ч)) = Ра О РЪ.

Множество подстановок : а € А*} всех слов А* в алфавите А образует полугруппу Рд, называемую внутренней полугруппой автомата Л. Она изоморфна фактор-полугруппе полугруппы А* с операцией конкатенации (соединения слов) по отношению

Д = {(а,!3): а, ¡3 € А* и € Я (ф,а) = ф,Р))}.

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

Определение 1. Группоид С назовём редуктивным слева, если из того, что х ■ а = х ■ Ь для всех х € С, следует а = Ь (а,Ь € С) — см. [5].

Лемма 1 (Основная). Каждый редуктивный слева конечный группоид допускает вложение во внутреннюю полугруппу конечного автомата.

Формула (2) устанавливает соответствие между выражениями вида а^Ь над элементами группоида С и композициями вида раоо(рь над элементами полугруппы Рд. Для построения вложения С ^ Рд необходимо избавиться от подстановки у,, соответствующей символу операции.

Гомоморфизм, задаваемый левым сдвигом внутренней полугруппы Рд конечного автомата:

(3) фх^ у. х = у. О

— позволяет опустить знак операции в записи алгебраических выражений, что обычно и делается. Формально можно записать:

(4) аЬ ■ р-1 о о о у, о = р-1 о а о у,ь,

где <р~,1 — формальная запись, определяющая тождество 1 о ¡р,} о <ра = <ра; в общем случае элемента не существует, поскольку <р, не обязательно является биекцией. Это не мешает нам с помощью некоторого символа # перевести конечный автомат в особое «начальное» состояние, когда последующий аргумент х на входе будет действовать как подстановка <рх, а не у, х. Формально это означает вложение исходного группоида С в группоид с удвоенным множеством элементов.

Определение 2. Назовём элементы #х ■ <рх удвоенного группоида оригинальными, а элементы х ■ у,х — сопряжёнными к ним.

Подстановка соответствующая входному символу #, по построению — идемпотент: дважды перейдя в начальное состояние, окажемся там же. Руководствуясь выражением (4), формально можно записать:

2 —1 = = <Р. О <Р. .

Конечный автомат тогда можно представить как функцию Р : 2(°#) ^ рл из множества наборов аргументов в множество подстановок, действующую следующим образом:

(5) Р(фа) = о <ра, Р(а) = <р,а, Р(Ь) = <р,ь,

Р(фаЪ) = о (ра о <р,ь.

Пусть результат произведения аЪ в выражении (5) равен с. Формально выполним следующие преобразования:

Р(фаЬ) = о о ф,ъ = (рс;

(6) у, о Р(#аЬ) = у, о р-1 о у, о о у, ъ = у, о (рс;

У. а о ф. ь = у. с

— откуда следует, что подстановка в выражении (4) является левым сдвигом у, х ^ рх, возвращающим результат от сопряжённого к оригинальному виду.

Предложение 1. Если р, — биекция, то Р — изоморфизм, определённый на сопряжённых элементах удвоенного группоида.

Доказательство. Так как язык А* распознаётся автоматом, и все оригинальные элементы удвоенного группоида различны, то на этих элементах функция Р является однозначной. В силу биектив-ности у, левый сдвиг (3) является изоморфизмом, поэтому Р будет однозначной и на сопряжённых элементах. Отсюда, с учётом выражений (5) и (6), следует, что Р — изоморфизм, определённый на сопряжённых элементах:

Р(а) о Р(Ъ) = Р(аЪ).

Оригинальным элементам сопоставлены подстановки рх, и они указанному изоморфизму, вообще говоря, не удовлетворяют. □

Предложение 2. Функция р, является биекцией тогда, когда С — редуктивный слева конечный группоид.

Доказательство. Пусть у, не является биекцией, то есть отображает некоторые элементы а = Ь в одну подстановку у, а = у, Тогда, согласно выражениям (5), для любого элемента х будет верно:

Р(#ха) = о ух о у,а = о ух о у,ъ = Р(#хЬ).

В силу регулярности языка А* если двум выражениям сопоставлена одна и та же подстановка, то эти выражения равны. Поэтому равенство Р(#ха) = Р(#хЬ) влечёт равенство х ■ а = х ■ Ь для всех ж. □

Замечание 1. Обратное неверно: подстановки р,а = (2 2 1 2), р, ь = (2 2 4 2) и р, с = (2 2 2 2) дают контрпример х ■ а = х ■ Ь = с.

Доказательство основной леммы. Доказательство сводится к доказательству предложений 1 и 2. □

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

Пример 1. К полугруппе $ с нулевым умножением х ■ у = 0 для всех х,у € $ присоединим правую единицу: х ■ е = х, е ■ х = 0. Полученный группоид С не является редуктивным слева. Определим на С программную алгебру с операциями аппликации х * у = х ■ у и композиции

Группоид С вкладывается в эту алгебру по операции аппликации.

Указанный недостаток общности метода является устранимым — достаточно предварительно расширить исходный группоид новыми элементами так, чтобы выполнялось условие предложения 2.

Предложение 3. Каждый конечный группоид допускает вложение в редуктивный слева конечный группоид.

Доказательство. Пусть группоид С содержит элементы а = Ь, такие что х ■ а = х ■ Ь для всех х € С. Расширим его до группоида С, определив новый элемент е € С как единицу в С, так что е ■ х = х ■ е = х для всех х € С'. Тогда е ■ а = а = Ь = е ■ Ь для любых а,Ь € С', таких что а = Ь. □

Теорема 1. Каждый конечный группоид допускает вложение в конечную программную алгебру.

Доказательство. В соответствии с леммой 1 и предложением 3 каждый конечный группоид вкладывается в конечную полугруппу. На элементах полугруппы Рд определим вторую операцию «*» так, чтобы соблюдались аксиомы программной алгебры (1).

Так, можно взять фиксированный идемпотент с! € Рд и положить х * у = с! о х о у, тогда первая аксиома будет выполнена, поскольку

(х * у) * х = й о (й о х о у) о х = в? о х о (у о ¿) = х * (у о г); вторая аксиома выполняется при наличия нуля в Рд, поскольку

(х * у) * 0 = х * (у о 0)= х * 0 '

третья аксиома выполняется при наличия правой единицы в Рд, поскольку

х, при х = е; у, иначе.

(х * 0) * у = х * (0 о у) = х * 0

^ 0 о у = у о 0 = 0;

(х * у) * е = х * (у о е) = х * у ^ у о е = у.

Нуль и правую единицу в случае их отсутствия можно присоединить к полугруппе Рд, как это было проделано в доказательстве предложения 3 в отношении группоида G. □

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

Благодарности

Автор выражает признательность Н. Н. Непейводе за оказанное доверие, формулировку задачи и ценные советы, способствовавшие решению.

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

[1] Н.Н. Непейвода, «От численного моделирования к алгебраическому», Труды VI Международной конференции «Параллельные вычисления и задачи управления». Т. 1, PACO-2012 (Москва, 24-26 октября 2012 г.), Ин-т проблем управления им. В. А. Трапезникова РАН, с. 93-103 t 45.

[2] Н.Н. Непейвода. «Алгебраический подход к управлению», Проблемы управления, 2013, №6, с. 2-14 t 45.

[3] С. В. Алёшин. «Полугруппы и группы автоматов», Интеллектуальные системы, 17:1-4 (2013), с. 129-141 t 46.

[4] В.М. Глушков. «Абстрактная теория автоматов», Успехи мат. наук, 16:5(101) (1961), с. 3-62 t 46.

[5] А. Клиффорд, Г. Престон. Алгебраическая теория полугрупп. Т. 1, Мир, М., 1972, 283 с. t 46.

Рекомендовал к публикации д.ф.-м.н. Непейвода Н. Н.

Об авторе:

Алексей Александрович Демидов

Младший научный сотрудник Исследовательского центра искусственного интеллекта ИПС им. А. К. Айламазяна РАН. e-mail: [email protected]

Пример ссылки на эту публикацию:

А. А. Демидов. «О пополнении группоида до программной алгебры», Программные системы: теория и приложения, 2015, 6:3(26), с. 45-52. URL http://psta.psiras.ru/read/psta2015_3_45-52.pdf

Aleksey Demidov. To the completion of a groupoid to a programm algebra. Abstract. The task of embedding of a finite groupoid into a finite programm algebra has a practical significance for the conversion of algorithm into a form suitable for computation on algebraic processor. It was posed and solved by N. N. Nepeivoda for semigroups, then he has proposed a method of embedding of a groupoid into a infinite programm algebra. In this paper we construct an embedding of a finite groupoid into a finite programm algebra, which completes the solution of the problem. (In Russian).

Key Words and Phrases: algebras, algebraic computations, groupoid embedding.

References

[1] N. N. Nepeyvoda, "Ot chislennogo modelirovaniya k algebraicheskomu", Trudy VI Mezhdunarodnoy konferentsii "Parallel'nyye vychisleniya i zadachi upravleniya". V. 1, PACO-2012 (Moskva, 24-26 oktyabrya 2012 g.), In-t problem upravleniya im. V. A. Trapeznikova RAN, pp. 93-103 (in Russian).

[2] N.N. Nepeyvoda. "Algebraicheskiy podkhod k upravleniyu", Problemy upravleniya, 2013, no.6, pp. 2-14 (in Russian).

[3] S.V. Aleshin. "Polugruppy i gruppy avtomatov", Intellektual'nyye sistemy, 17:1-4 (2013), pp. 129-141 (in Russian).

[4] V. M. Glushkov. "The abstract theory of automata", Russian Math. Surveys, 16:5 (1961), pp. 1-53.

[5] A. H. Clifford, G. B. Preston, The algebraic theory of semigroups. V. 1, Mathematical Surveys, vol. 7, AMS, Providence, RI, 1961.

Sample citation of this publication:

Aleksey Demidov. "To the completion of a groupoid to a programm algebra", Program systems: theory and applications, 2015, 6:3(26), pp. 45-52. (In Russian.) URL http://psta.psiras.ru/read/psta2015_3_45-52.pdf

© A. A. Demidov, 2015

© Ailamazyan Program System Institute of RAS, 2015 © Program systems: Theory and Applications, 2015

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