УДК 519.1:681.3
МИНИМИЗАЦИЯ ИНФОРМАЦИОННЫХ СТРУКТУР С ПОЧТИ КОММУТАТИВНЫМИ СВОЙСТВАМИ
В. Е.ХАЧАТРЯН,
Я. Г. ВЕЛИКАЯ А. И. СУНЦОВА
Белгородский
государственный
национальный
исследовательский
университет
e-mail:
Статья посвящена решению фундаментальных проблем информационных структур с почти коммутативными свойствами. Частными случаями таких структур являются многоленточные и конечные детерминированные автоматы. Предлагаются решения проблемы минимизации эквивалентных преобразований и проблемы эквивалентности для подклассов информационных структур.
Ключевые слова: информационная структура, эквивалентные преобразования, эквивалентность, минимизация.
Актуальность исследования информационных структур с почти коммутативными свойствами вытекает из необходимости решения ряда задач:
1) оптимизация запросов декларативного языка для специализированных баз данных [1];
2) минимизация числа сотрудников, выполняющих определенную последовательность работ, некоторые из которых обладают условием коммутативности;
3) оптимизация механизма обеспечения защищенности информационных процессов методом установления эквивалентности независимо образованных объектов информационной системы и т. д.
Первые из двух описанных задач, так или иначе, связаны с проблемой минимизации информационной структуры. Задача минимизации заключается в построении по информационной структуре другой информационной структуры, эквивалентной исходной, но с минимальным значением выделенного параметра. Последняя задача связана с так называемой проблемой эквивалентности информационных структур. Проблема эквивалентности заключается в нахождении алгоритма, который по паре информационных структур определяет, эквивалентны они или нет.
В качестве модели информационной структуры с коммутативными свойствами предлагается рассматривать размеченный, ориентированный граф с системой коммутативных соотношений R.
Граф, являющийся моделью информационной структуры, удовлетворяет следующим свойствам:
вершины графа помечены символами алфавита Р={р1,р2,---,рп}, а дуги символами алфавита (^={0,1};
имеются две выделенные вершины: вход и выход информационной структуры; из выхода нет исходящих дуг, а из других вершин может исходить несколько дуг, причем из каждой вершины исходят дуги, помеченные разными символами.
Будем называть вершины графа состояниями информационной структуры. В дальнейшем будем под информационной структурой понимать граф, которым она задается. Для состояний информационной структуры в модели задана система коммутативных соотношений R, которую можно описать следующим образом:
(ра(рк,аг)= (рк,аг) (рьа),
где ^к принимают некоторые значения из множества {о,...,п}, здесь pi,pk— метки состояний информационной структуры, ааг принадлежит Q - метки дуг
информационной структуры.
Пусть D - информационная структура, представленная в виде графа.
Конечный ориентированный путь ю в информационной структуре D задается последовательностью дуг. Он описывается историей L(ю), где_L(ю) = (аь Ь0(а2, Ь2)---(ак, Ьк), а] - метка вершины, из которой исходит^'-ая дуга пути, а Ь - метка этой дуги,) = 1, 2,..., к.
Два пути эквивалентны, если они совпадают с точностью до системы соотношений Я. Информационные структуры эквивалентны, если для любого пути из входа в выход в одной структуре существует эквивалентный ему путь в другой и наоборот.
Отметим, что если система Я - пуста, то модель совпадает с моделью обычных конечных детерминированных автоматов;
Если же систему Я задать следующим образом:
(р!,а1)(рк,аг)= (рк,а,) (р„а,), где к; I, к {0,—п} ^ а а. ,а. □ О, то информационная структура совпадает с
моделью многоленточных автоматов.
Для многоленточных автоматов существует ряд проблем, названных фундаментальными: проблема эквивалентных преобразований, проблема
эквивалентности и проблема минимизации. Рассмотрим состояние этих проблем на сегодняшний день.
Проблема эквивалентных преобразований заключается в построении системы эквивалентных преобразований в некотором множестве, которая позволяет преобразовать любой объект этого множества в любой эквивалентный исходному. В 2003 г. предложена полная система эквивалентных преобразований для п-ленточных автоматов, где п>=2 [2].
Проблема эквивалентности не удавалось решить более 40 лет, это обусловлено тем, что была доказана неразрешимость проблемы включения [3]. Для двухленточных автоматов решение проблемы было предложено Бердом Р. [4], но уже для случая п-ленточных автоматов, при п>2, этот метод не решает проблему эквивалентности.
В 1991 г. Т. Харью и Дж. Кархумаки доказали разрешимость проблемы эквивалентности многоленточных автоматов, но алгоритм разрешения
эквивалентности не был предложен [5]. Подловченко Р.И. и Хачатряном В.Е. был предложен трансформационный метод, использующий фрагментные эквивалентные преобразования, нацеленный на решение проблемы эквивалентности многоленточных автоматов [6]. Была доказана применимость трансформационного метода с целью разрешения эквивалентности в некоторых подклассах многоленточных автоматов [13]. В 2010 г. Летичевский А.А, Шукурян А.С. и Шукурян С.К. предложили решение проблемы эквивалентности многоленточных автоматов [7], основанное на использовании многомерных автоматов.
Проблема минимизации многоленточных автоматов является почти не исследованной, предложены её решения лишь для некоторых частных случаев. Так, в работе [8] проблема решена для одного подкласса двухленточных автоматов, а в [1] приведено построение по заданному автомату автомата близкого к минимальному автомату.
Подводя итог, можно утверждать, что многие из фундаментальных проблем до сих пор остаются открытыми.
В работе предлагается решение фундаментальных проблем для некоторых подклассов информационных структур.
Пусть информационная структура G принадлежит подклассу, обозначим его К, информационная структура которого задается графом, вершины которого помечены символами алфавита Р=(рд1,...Дп-1}, а рёбра символами алфавита Q={o,l}. Из вершин,
помеченных символами ql,...,qn-l, может выходить только одна дуга с меткой о. Такие вершины назовем простыми. Вершины, помеченные символом р, назовем сложными.
На рисунке 1 приведена информационная структура из класса К. Ребра с меткой 1, отмечены жирной точкой в начале ребра, а не помеченные ребра несут метку о. Вход информационной структуры изображен черным кружком, а выход - перечеркнутым.
Р
Р
Рис. 1. Информационная структура из класса К
Назовем фрагментом информационной структуры G некоторое подмножество вершин VI, которое включено или совпадает с V, и содержит в себе все инцидентные этим вершинам рёбра, помеченными теми же метками, что и в информационной структуре G.
Фрагментным преобразованием информационной структуры G - называется замена в структуре G фрагмента Gl на фрагмент G2, при этом информационная структура G преобразуется в информационную структуру 5. Фрагментное преобразование w задается фрагментами Gl и G2 , участвующими в преобразовании и обозначается ю=^1^).
Фрагментное преобразование является эквивалентным [9], если в результате его применения к информационной структуре G получим информационную структуру Б, такую что, структуры G и 5 являются эквивалентными.
Предлагается система эквивалентных преобразований, обозначим ее Т, информационных структур для класса К, т. е. множество эквивалентных преобразований, которое позволяет любую информационную структуру преобразовать в любую информационную структуру, эквивалентную исходной. Система эквивалентных преобразований Т состоит из двух преобразований. Первое из них позволяет склеивать и расклеивать состояния, а второе «переносить» через фрагмент состояния типа ql,q2,...,qn-
Имеет место теорема:
Теорема 1. Система преобразований Т является полной для информационных структур класса К.
Для решения проблемы эквивалентности многоленточных автоматов был предложен трансформационный метод, основанный на использовании фрагментных эквивалентных преобразований [6].
Как было показано в [10] трансформационный метод решает проблему эквивалентности для класса автоматов с не пересекающимися циклами. Автомат является таковым, если его циклы не имеют общих вершин. В то же время не удалось, используя трансформационный метод, решить проблему эквивалентности для конечных детерминированных автоматов. Автоматы с не пересекающимися циклами обладают единственным покрытием [11]. Отметим, что применить трансформационный метод для доказательства проблемы эквивалентности для автоматов с не однозначным покрытием не удавалось.
Автомат назовем однозначным, если он обладает единственным покрытием. На рисунке 2. а) приведен пример автомата вместе с покрытиями, которые можно по нему построить 2.б) и 2.в).
а) б) в)
Рис. 2. Автомат и его покрытия
Предлагается следующая модификация трансформационного метода[12]: для каждой пары автоматов, появляющихся в процессе сравнения исходных автоматов на эквивалентность, необходимо выполнить дополнительный шаг, а именно, первый из автоматов предварительно преобразовать в однозначный автомат.
Обозначим через ц алгоритм сравнения на эквивалентность двух автоматов, использующий модификацию трансформационного метода. Такой алгоритм легко получить из описанного процесса алгоритмизируя неоднозначность выбора сравниваемых на эквивалентность автоматов дерева потомков.
Верна следующая теорема [12].
Теорема 2. Алгоритм ц является алгоритмом разрешения проблемы.
эквивалентности конечных детерминированных автоматов.
Обратимся к последней из фундаментальных проблем: проблеме минимизации информационных структур. Условимся считать, что информационная структура является минимальной в классе эквивалентных ей структур, если она содержит наименьшее число состояний. Сложность решения проблемы минимизации заключается в том что: во-первых, минимальная информационная структура находится неоднозначно, т.е. иногда по исходной информационной структуре можно построить несколько минимальных информационных структур [14]. Во-вторых, минимизация не достигается путем замены эквивалентных состояний одним, поскольку, таким образом, мы можем получить тупиковую структуру, т. е. не содержащую эквивалентных состояний и не являющуюся минимальной [15].
Рассмотрим процедуру х, которая переводит информационную структуру G в так называемую упорядоченную информационную структуру х^). Суть процедуры х заключается в следующем:
Этап о. К информационной структуре G применяют преобразование расклейки состояний, до тех пор, пока не будет получена информационная структура G,, в каждое простое состояние которой, входит ровно одно ребро.
Этап 1. Сформируем множество строго входящих в информационную структуру G, фрагментов, к которым можно применить второе преобразование системы Т, обозначим его А.
Этап 2. Применим преобразование к каждому фрагменту множества А.
Этап 3. В полученной после применения этапов 1-2 информационной структуре на всех линейных участках упорядочим состояния, таким образом, чтобы состояние qi предшествовало состоянию ^, где ^; i, j=l,....n-l.
Полученная информационная структура называется х^) упорядоченной.
Склеив в упорядоченной информационной структуре строго-эквивалентные состояния получим каноническую информационную структуру. Под строгоэквивалентными сосстояниями понимаются такие состояния, что для каждого пути ведущего из первого состояния в выход информационный структуры, найдется путь из второго состояния в выход, причем истории этих путей совпадают.
Для информационных структур класса К предлагается процедура минимизации, которая распадается на следующие шаги:
1. минимизация сложных элементов информационной структуры;
2. минимизация простых элементов информационной структуры;
3. окончательная минимизация информационной структуры;
4. нахождение всех минимальных информационных структур.
Опишем содержательно функциональное предназначение каждого шага процедуры минимизации.
На этапе минимизации по сложным элементам структуры исходная информационная структура из множества L, сначала преобразуется в упорядоченную информационную структуру, а затем, полученная упорядоченная информационная структура в каноническую, т.е. не содержащую строго эквивалентных состояний.
На шаге минимизации по простым элементам структуры каноническая структура, полученная на предыдущем шаге, модифицируется с помощью ф^і)-преобразования, І=і,...,п-1. Это преобразование является обобщением ф-преобразования, введенного в [15]. ф^)-преобразования представляет собой
комбинацию эквивалентных преобразований системы Т. Для этого в информационной структуре отыскиваются фрагменты, применение к которым ф^)-преобразования, заменяет исходный фрагмент фрагментом, с меньшим количеством простых состояний. Применяя ф^)-преобразование к каждому из таких фрагментов, мы уменьшаем число простых состояний в информационной структуре.
Третий шаг - это окончательная минимизация структуры. На данном шаге ищутся сложные состояния, расклейка которых, позволила бы породить новые фрагменты, к которым можно применить ф^)-преобразование, таким образом, чтобы уменьшить число простых состояний. Полученная информационная структура, обозначим её т, является минимальной в классе эквивалентности К.
На шаге нахождение всех минимальных информационных структур в информационной структуре т, отыскивают фрагменты, применение к которым ф^)-преобразования, І=і,...,п-1, не меняет общее количество состояний, но при этом меняется сама информационная структура. Применяя ф^)-преобразование, і=і,...,п-1, к каждому из таких фрагментов получим новую минимальную информационную структуру.
Полученные на данном этапе информационные структуры и информационная структура т образуют множество минимальных информационных структур в классе эквивалентности К.
Проиллюстрируем шаги процедуры минимизации на конкретном примере.
Пусть задана информационная структура, приведенная на рисунке 1, требуется построить минимальную информационную структуру, находящуюся в том же классе эквивалентности.
На первом шаге процедуры исходная информационная структура трансформируется
Рис. 3. Упорядоченная информационная структура
Затем упорядоченная информационная структура преобразуется в каноническую, в результате склейки строго-эквивалентных состояний. Каноническая структура изображена на рисунке 4.
Р
42
Рис. 4. Каноническая информационная структура
На следующем шаге, минимизация простых элементов информационной структуры, приводит к уменьшению qi- состояний, І=і,...,п-1, информационной структуры. Результат изменений приведен на рисунке 5.
Р
42
Рис. 5. Итог минимизации по простым элементам информационной структуры
На этапе окончательной минимизации информационной структуры проведена расклейка р-состояния, которое позволило в результате использования Ф^)-преобразования уменьшить количество q2-состояний. Иллюстрация данного этапа
приведена на рисунке 6. Полученная в результате данного шага информационная структура является одной из минимальных.
Рис. 6. Этап окончательной минимизации
На заключительном этапе процедуры минимизации, преобразуем полученную на предыдущем шаге минимальную информационную структуру, используя эквивалентное ф^)-преобразования, не меняющие количество состояний в информационной структуре. Таким образом, получим все минимальные структуры в данном классе эквивалентности. Все минимальные информационные структуры изображены на рисунке 7.
Рис. 7. Минимальные информационные структуры
Литература
1. Tamm H. On Minimality and Size Reduction of One-Tape and Multitape Finite Automata// University of Helsinki, Helsinki, 2004.he0ry 34, 5 (1988), 1049-1053.
2. Хачатрян В.Е. Полная система эквивалентных преобразований для многоленточных автоматов // Программирование. 2003. №1. С. 62-77.
3. Rabin M.O., Scott D. Finite automata and their decision problems // IBM J. of Research and Development, 1959, 3, № 2. p. 114-125 (Русский перевод: Кибернетический сборник, 1962, № 4. С. 58-91.
4. Bird R. The equivalence problem for deterministic two-tape automata // J. of Computer and System Science, 1973, 7, № 4. p.218-236.
5. Harju T. and Karkumaki J. Decidability of the multiplicity eguivalence problem of multitape finite automata, in: Proc. 22nd STOC (1990)477-481.
6. Хачатрян В.Е. О применении трансформацинного метода для распознавания эквивалентности многоленточных автоматов. // VI межд. конф. Дискретные модели в теории управляющих систем. Москва, МГУ. 2004. С. 148-150.
7. Letichevsky Alexander A., Shoukourian Arsen S., Shoukourian Samvel K. The equivalence problem of deterministic multitape finite automata: a new proof of solvability using a multidimensional tape// Language and Automata Theory and Applications. Lecture Notes in Computer Science, 2010, Volume 6031/2010, p.392-402.
8. Подловченко Р.И, Хачатрян В. Е. Минимальность и тупиковость многоленточных автоматов // Дискретная математика. 2008. № 2. С.92-120.
9. Подловченко Р.И. О проблеме эквивалентных преобразований программ // Программирование, 1986, №6. С.3-14.
10. Подловченко Р.И., Хачатрян В.Е. Алгоритм распознавания эквивалентности многоленточных автоматов без пересекающихся циклов // Труды 5-межд. конф. Дискретные модели в теории управления систем. Ратмино-Москва. 2003. С.67-70.
11. Хачатрян В.Е., Великая Я.Г. Модели вычислений с однозначным
покрытием//Научные ведомости БелГУ. 2009.№ 7(62). С.116-121.
12. Великая Я.Г. Обобщенный трансформационный метод и конечные детерминированные автоматы//Научные ведомости БелГУ. 2010 г. (в печати).
13. Подловченко Р. И., Хачатрян В. Е., Чашин Ю. Г. Полная система эквивалентных
преобразований для двухленточных автоматов с непересекающимися циклами //
Программирование. 2000. №5. С.1-19.
14. Подловченко Р.И, Хачатрян В. Е. Минимальность и тупиковость многоленточных автоматов // Дискретная математика. 2008. № 2. С.92-120.
15. Подловченко Р.И, Хачатрян В. Е.Полное решение проблемы минимизации для одного множества бинарных двухленточных автоматов// Дискретная математика. 2010. № 3. С. 146-159.
MINIMIZATION OF INFORMATION STRUCTURES WITH ALMOST COMMUTATIVE PROPERTIES
V.E. KHACHATRYAN Y. G. VELIKAYA A. I. SUNTSOVA
BelgorodNational
Research University
e-mail:
The paper is devoted the decision of the fundamental problems of the information structures with almost commutative properties. The spe- cial cases of such structures are the multitape and final deterministic automaton. The solution of the problem of equivalent transformations, problems of equivalence and minimization for subclasses of the informa- tion structures is offered.
Key words: the information structure, the problem of equivalent transformations, the equivalence problem, the minimization problem.