Научная статья на тему 'Моделирование и анализ поведения последовательных реагирующих программ'

Моделирование и анализ поведения последовательных реагирующих программ Текст научной статьи по специальности «Математика»

CC BY
166
59
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РЕАГИРУЮЩАЯ ПРОГРАММА / АВТОМАТ-ПРЕОБРАЗОВАТЕЛЬ / ПОЛУГРУППА / РАЗМЕЧЕННАЯ СИСТЕМА ПЕРЕХОДОВ / ЭКВИВАЛЕНТНОСТЬ / СВОЙСТВО K-ЗНАЧНОСТИ / РАЗРЕШАЮЩИЙ АЛГОРИТМ / СЛОЖНОСТЬ / REACTIVE PROGRAM / FINITE STATE TRANSDUCER / SEMIGROUP / LABELLED TRANSITION SYSTEM / EQUIVALENCE CHECKING / K-VALUEDNESS / DECISION PROCEDURE / COMPLEXITY

Аннотация научной статьи по математике, автор научной работы — Захаров В. А.

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

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

Modeling and analysis of the behavior of successive reactive programs

Finite state transducers extend the finite state automata to model functions on strings or lists. They may be used also as simple models of sequential reactive programs. These programs operate in the interaction with the environment permanently receiving data (requests) from it. At receiving a piece of data such program performs a sequence of actions. When certain control points are achieved a program outputs the current results of computation as a response. It is significant that different sequences of actions may yield the same result. Therefore, the basic actions of a program may be viewed as generating elements of some appropriate semigroup, and the result of computation may be regarded as the composition of actions performed by the program. This paper offers an alternative technique for the analysis of finite state transducers over semigroups. To check the equivalence of transducers and we associate with them a Labeled Transition Systems. Each path in this LTS represents all possible runs of and on the same input word. Every node of keeps track of the states of and achieved at reading some input word and the deficiency of the output words computed so far. If both transducers reach their final states and the deficiency of their outputs is nonzero then this indicates that and produce different images for the same word, and, hence, they are not equivalent. The nodes of that capture this effect are called rejecting nodes. Thus, the equivalence checking of and is reduced to checking the reachability of rejecting nodes in LTS. We show that one needs to analyze only a bounded fragment of to certify (un)reachability of rejecting nodes. The size of this fragment is polynomial of the size of and if both transducers are deterministic, and single-exponential if they are k-bounded. The same approach is applicable for checking k-valuedness of transducers over semigroups.

Текст научной работы на тему «Моделирование и анализ поведения последовательных реагирующих программ»

Моделирование и анализ поведения последовательных реагирующих программ

В.А.Захаров <[email protected]> ИСП РАН, Россия, Москва, 109004, ул. Солженицына, д. 25;

НИУ ВШЭ, Россия, Москва, 101000, ул. Мясницкая, д. 20.

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

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

1. Введение

Автоматы-преобразователи (transducers) с конечным числом состояний естественным образом расширяют широко известную модель вычислений конечных автоматов Рабина-Скотта. В отличие от конечных автоматов, способных распознавать регулярные языки L,L £ 2*, конечные преобразователи позволяют распознавать регулярные (рациональные)

отношения R, R £ 2* x Д*, на множествах конечных слов. Поэтому их область применения гораздо обширнее. Конечные преобразователи используются в системном программировании для построения простейших компиляторов [2], драйверов, осуществляющих фильтрацию и преобразования строк, изображений, потоков данных [3,21], в системах автоматизированного проектирования управляющих систем для разработки контроллеров [16], в компьютерной лингвистике для создания программ распознавания речи [14] и др. Для практического использования этой модели вычислений в столь разнообразных областях, нужны эффективные алгоритмы построения композиций, проверки эквивалентности и минимизации преобразователей. Преобразователи могут служить простой моделью некоторого класса специальных программ. Эти программы работают во взаимодействии с окружающей средой, получая на входе поток управляющих сигналов, запросов или показаний датчиков. После приема очередной порции входных данных такая программа выполняет некоторую конечную последовательность действий и переходит в новое состояние управления. Как только программа достигает определенного состояния управления, она выдает на выходе текущий результат вычисления. Программы такого рода называются реагирующими программами. Их функция состоит в том, чтобы вырабатывать правильные отклики в ответ на внешние воздействия. К числу программ такого рода относятся операционные системы, сетевые протоколы, драйверы, контроллеры. При выборе подходящей математической модели важным обстоятельством являются два факта. Во-первых, разные последовательности действий, выполняемые такой программой, могут приводить к одному и тому же результату. Поэтому элементарные (базовые) действия реагирующей программы можно рассматривать как порождающие элементы некоторой полугруппы, а результат последовательного выполнения этих действий расценивается как элемент полугруппы, представляющий собой композицию этих действий. Во-вторых, одна и та же последовательность входных данных (запросов, управляющих сигналов) может приводить к разным результатам, поскольку на поведение программы помимо входных данных могут также влиять внешние факторы, скрытые от внешнего наблюдателя. Для моделирования такой реагирующей программы можно воспользоваться конечным автоматом-преобразователем (в общем случае недетерминированным), который преобразует слова входного алфавита £ (алфавита управляющих сигналов) в полугрупповые выражения Представим себе в качестве примера, что радиоуправляемый робот движется по поверхности планеты. Он может делать шаги в любом из четырех направлений N,E,S,W. Если этот робот получает некоторый управляющий сигнал syg, пребывая при этом в состоянии q. то он может выбрать и совершить некоторую серию шагов (скажем, N,N,W,S), а также перейти в следующее состояние q'. В особых состояниях управления робот

оповещает о своем текущем местоположении. Существенными являются две особенности этого робота: 1) робот может достичь одного и того же места, 222

совершая разные последовательности шагов (например N, N, W, W,S,E и W, N), и 2) выбор допустимой последовательности шагов может зависеть от случайных, не поддающихся контролю обстоятельств (например, от освещенности местности, погодных условий, состояния грунта и пр.). Наиболее простой моделью вычислений, пригодной для проектирования и анализа программы управления движением такого робота может служить недетерминированный конечный преобразователь, работающий над абелевой группой ранга 2.

Так мы приходим к концепции автомата-преобразователя, который принимает на входе слова некоторого алфавита £ и выдает на выходе элементы некоторой конечно порожденной полугруппы 5. Для преобразователей такого вида нужно уметь решать тот же самый набор алгоритмических задач, что и для конечных автоматов Рабина-Скотта и традиционных автоматов-преобразователей, а именно

• задачу синтеза преобразователя по заданному алгебраическому или логическому описанию рационального отношения R, R Q Т.* х S;

• задачу верификации заданного преобразователя относительно заданных алгебраических или логических спецификаций его поведения;

• задачу проверки эквивалентности двух заданных преобразователей;

• задачи детерминизации и минимизации преобразователей.

В данной статье приводятся некоторые результаты исследования проблемы эквивалентности для конечных преобразователей над полугруппами. Изучение этой проблемы и ряда смежных задач для классических автоматов-преобразователей началось в 60-х годах XX века. Вначале было установлено, что проблема эквивалентности для недетерминированных автоматов-преобразователей (generalized finite state machines) неразрешима [8,9] и при этом даже для однобуквенного входного алфавита [11]. Однако неразрешимость возникает только для таких недетерминированных преобразователей, у которых входные слова могут иметь неограниченно много выходных образов. На следующем этапе проблема эквивалентности изучалась для класса ограниченно недетерминированных преобразователей, у которых для любого входного слова количество его различных выходных образов не превосходит некоторого фиксированного числа к. Было установлено, что свойство ограниченной недетерминированности преобразователей можно проверять за полиномиальное время [22]. В статье [10] было показано, что столь же эффективно можно проверять и свойство к-значности недетерминированных преобразователей для любого заданного числа к. Разрешимость проблемы эквивалентности была установлена для детерминированных автоматов-преобразователей [5], функциональных (однозначных) преобразователей [4,19] и /с-значных недетерминированных преобразователей [7,23]. В серии работ [6,17,18,20] авторы предложили метод декомпозиции произвольного /с-значного недетерминированного

преобразователя в сумму функциональных и недвусмысленных (unambiguous) преобразователей. Этот метод был использован для построения алгоритмов проверки ограниченной недетерминированности, /с-значности и эквивалентности классических преобразователей, работающих над словами. В данной статье предложен новый универсальный метод решения задач, связанных с проверкой эквивалентности конечных автоматов-преобразователей, работающих над полугруппами. Для проверки эквивалентности преобразователей я, и п2 предлагается исследовать свойства размеченной системы переходов (Labeled Transition System, LTS) Г„ъ„2, ассоциированной с этими преобразователями. Маршруты в этой LTS представляют все возможные пары вычислений преобразователей я, и тт2 на одном и том же входном слове. Каждая вершина и LTS Гя „ содержит информацию о том, в каких состояниях оказываются преобразователи я, и п2 после прочтения некоторого входного слова, и том, каково расхождение выходных полугрупповых элементов, вычисленных преобразователями к этому моменту. Если оба преобразователя достигают своих заключительных состояний и дефицит вычисленных ими выходных результатов оказывается ненулевым, то это служит признаком того, что преобразователи я, и п2 на некотором входном слове вычисляют разные результаты, т.е. не являются эквивалентными. Вершины LTS Г„ „ , в которых проявляется указанный эффект, называются опровергающими вершинами. Таким образом, проверка эквивалентности преобразователей я, и п2 сводится к проверке достижимости опровергающих вершин в LTS Г„ „ Оказывается, что для проверки достижимости опровергающих вершин достаточно исследовать лишь ограниченный фрагмент LTS Г„ „ Если анализируемые преобразователи я, и 7г2 являются детерминированными, то размер этого фрагмента ограничен полиномом, зависящим от размера 7ГХ и п2, и поэтому проблема эквивалентности для преобразователей такого рода может быть решена за полиномиальное время. Если же анализируемые преобразователи являются ограниченно недетерминированными, то размер этого фрагмента ограничен экспонентой, зависящей от размера пг и п2 . Поскольку проблема эквивалентности недетерминированных конечных автоматов Рабина-Скотта является Р SPACE-полной, эта оценка вряд ли может быть существенно улучшена. Тот же самый подход можно использовать и для проверки свойства /с-значности недетерминированности конечных преобразователей, работающих над полугруппами.

Используемый в данной статье подход был впервые предложен в работе [24] для разработки полиномиальных по времени алгоритмов проверки эквивалентности программ. Сходные идеи были развиты также в статьях [6,17,18] и применены для анализа вычислений традиционных автоматов-преобразователей. Основные преимущества нашего подхода (помимо того очевидного факта, что он применим к автоматам-преобразователям более общего вида) таковы. Во-первых, в отличие от метода проверки свойств

вычислений автоматов-преобразователей, впервые предложенного в статье [23] и затем развитого в статье [17], наш подход не требует предварительной декомпозиции анализируемых преобразователей и может быть применен к любым преобразователям без предварительной их подготовки. Во-вторых, предложенные нами процедуры верификации преобразователей, в отличие от методов, описанных в работах [18,20], не опираются ни на какие особенности устройства отношения переходов анализируемых преобразователей. Фактически, все рассматриваемые далее задачи, связанные с проблемой эквивалентности, решаются одной и той же процедурой обхода размеченной системы переходов в глубину с возвратом с целью обнаружения опровергающих вершин. Специфика решаемой задачи отражается лишь в устройстве самой системы переходов. Вследствие этого сложность разработанных нами алгоритмов проверки эквивалентности и ограниченной недетерминированности автоматов преобразователей существенно меньше сложности алгоритмов, описанных в статьях [4-7,17,18,20]. Разработанный нами подход применим к автоматам-преобразователям, проводящих вычисления в произвольной конечно порожденной полугруппе, которая может быть вложена в группу с разрешимой проблемой равенства слов. Статья устроена следующим образом. В разделе 2 введены основные известные понятия, относящиеся к теории конечных последовательных автоматов-преобразователей. В разделе 3 описан алгоритм проверки эквивалентности детерминированных автоматов-преобразователей, работающих над полугруппами. В разделе 4 описаны сходные по устройству алгоритмы решения двух задач - проверки свойства функциональности преобразователей и проверки эквивалентности функциональных преобразователей. В разделе 5 предложен метод проверки свойства к-значности недетерминированных преобразователей. Для большей наглядности в этом разделе подробно описан и обоснован алгоритм проверки свойства 2-значности преобразователей. Из описания этого алгоритма легко выводится и общий способ построения алгоритмов проверки свойства /с-значности недетерминированности преобразователей для любого значения параметра к. В разделе 6 описан алгоритм проверки эквивалентности 2-значных недетерминированных автоматов преобразователей. В разделе 7 приведены оценки сложности предложенных разрешающих алгоритмов для конечных преобразователей над свободной полугруппой и свободной коммутативной полугруппой. В заключительном разделе проведен сравнительный анализ полученных результатов, а также обозначены перспективы решения других задач синтеза и анализа автоматов-преобразователей над полугруппами.

2. Основные понятия

Пусть задан конечный алфавит Записью £* обозначим множество всех конечных слов над алфавитом Буквы алфавита £ могут быть истолкованы как элементарные события, происходящие во внешней среде и оказывающие

влияния на информационную систему, взаимодействующую с этой средой. В этом случае слова можно истолковывать как возможный сценарий поведения внешней среды по отношению к информационной системе. Конечным автоматом над алфавитом £ назовем систему M = (£, Q, init, F, ср), в которой

• Q - конечное множество состояний;

• init - начальное состояние, init £ Q;

• F - подмножество финальных состояний, F Q Ç;

• (pQQxZxQ- отношение переходов.

Автомат M допускает слово w = а1а2... ап, если существует такая последовательность состояний <70.<7i> ■■■•Яп ■ в которой q0 = init, qn £ F, и (Sli-i'ai'4i) e (P выполняется для каждого i, 1 < i < п. Язык L(M) автомата M - это множество всех слов, допускаемых автоматом М. Запись M[q] будет использоваться для обозначения автомата (£, Q, q, F, ср), в котором начальным состоянием служит состояние q.

Рассмотрим полугруппу 5 = (Ве), порожденную множеством элементов В и имеющую единичный (нейтральный) элемент е. Порождающие элементы полугруппы можно рассматривать как элементарные операторы (действия), которые выполняет информационная система в ответ на внешние воздействия. Бинарная операция полугруппы в этом случае соответствует последовательной композиции этих операторов. Если два полугрупповых выражения s, и s2 имеют одинаковое значение, то это означает, что соответствующие этим выражениям последовательности операторов вычисляют одинаковый результат.

Конечным преобразователем (далее просто преобразователем) над полугруппой 5 называется система п = ( 5, Q, q0, F, Т), в которой

• Q - конечное множество состояний;

• <7о - начальное состояние, q0 £ Q;

• F - подмножество финальных состояний, F £ Q ;

• Т Q Q х Y. х Sx Q - конечное отношение переходов.

Четверки (q,a,s,q') из множества Т называются переходами', для их

a/s

обозначения используем запись q —» q'. Для каждого состояния q, q £ Q, запись n[q] будет обозначать преобразователь (l,S,Q,q,F,T), в котором состояние q играет роль начального состояния. Мы будем использовать запись Мп для обозначения автомата-подложки ( Q, q0, F, (рп), в котором

a/s

Фп = {(<?-а' <?') : Я —* Ч' Для некоторого s из 5}. Для конечного автомата M = (Z, Q', init, F', ср') и преобразователя л = (£, 5, Q, q0, F, Т) проекцией

преобразователя п на автомат М называется преобразователь п\м = (Y..S.Q х Q',(q0,init),F х F',f), в котором отношение переходов f

a/s a/s

определяется требованием: (q, р) —> (q't р') фф q > q' А (р, а, р') 6 ср. Вычислением преобразователя п на входном слове w = аЛа2 ... ап называется всякая последовательность переходов

a1/s1 a2/s2 On-i/Sjt-i an/sn run = q¡-> qi+1->----> qi+n-i-> 4í+n ■

Конечный преобразователь служит моделью последовательной реагирующей

a/s

программы. Каждый переход q —> q' означает, что при получении внешнего воздействия а в состоянии управления q эта программа совершает переход в состояние управления q' и выполняет последовательность операторов s. Последовательность таких переходов образует вычисление реагирующей программы.

Элемент s = s, • s2 ••• sn полугруппы 5 называется образом входного слова w,

w/s

а пара (w, s) называется меткой вычисления run. Запись qL —> qi+n ,будет использоваться для сокращенного обозначения вычисления преобразователя на входном слове w. Если q¿ = q0 , то вьиисление run называется начальным вычислением. Если qi+n 6 F , то вычисление run называется финальным вычислением. Полным вычислением называется всякое вычисление преобразователя, которое является как начальным, так и финальным. Записью Lab (tí) обозначим множество меток (w, s) всех полных вычислений преобразователя 7г; это множество является отношением, которое реализует преобразователь п. Преобразователи тг' и п" считаются эквивалентными (и обозначаются записью тг' ~ тг"), если Lab(n') = Lab(n"). Образ входного слова представляет собой результат вычисления реагирующей программы в ответ на последовательность воздействий среды. Внешний наблюдатель регистрирует результаты лишь тех вычислений, которые достигают финальных состояний управления. Поэтому наблюдаемое поведение реагирующей программы п полностью определяется множеством меток Lab (tí). Таким образом, эквивалентность преобразователей означает, что соответствующие реагирующие программы имеют одинаковое наблюдаемое поведение.

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

a/s

q —»q'. Преобразователь 7Г называется k-значньш, где к - положительное целое число, если для любого входного слова w отношение Lab (тт) содержит

не более к меток вида (w, s). Однозначный преобразователь также называется

функциональным.

Далее в статье будет описан общий метод построения разрешающих процедур для задач проверки эквивалентности и /с-значности преобразователей на полугруппами 5 , вложимыми в конечно порожденные разрешимые группы. Полугруппа 5 называется еложимой в группу G, если эта группа содержит подполугруппу 5' , изоморфную полугруппе 5. Необходимые и достаточные условия вложимости полугруппы в группу были установлены А.П. Мальцевым в статье [12]. В последующей статье [13] было доказано, что никакой критерий вложимости полугруппы в группу не может представлен конечным множеством условий. Однако для полугрупп специального вида условия их вложимости в группу могут быть сформулированы сравнительно просто. Например, свободная полугруппа всегда вложима в свободную группу. Для вложимости в группу коммутативной полугруппы необходимо и достаточно, чтобы она обладала свойствами левого и правого сокращения. Группа называется разрешимой, если в ней разрешима проблема равенства слов, т.е. существует алгоритм, который для любой пары выражений, составленных из порождающих элементов группы, может определить, представляют ли эти выражения один и тот же элемент группы. В этой статье мы будем полагать, что G является конечно порожденной разрешимой группой, содержащей полугруппу S в качестве подполугруппы. Поэтому для всякого элемента s полугруппы 5 запись s~ будет обозначать элемент группы G, обратный групповому элементу s.

3. Проверка эквивалентности детерминированных преобразователей

Пусть заданы пара детерминированных преобразователей л' = (Z,S,Q',q'0,F',T') и л" = (Z,S,Q",qo,F",T") над полугруппой 5, которая вложена в конечно порожденную разрешимую группу G. Для проверки эквивалентности этих преобразователей рассмотрим размеченную систему переходов (LTS) „ = ( Ç' х Q" х G,=> >. Ее вершинами являются тройки вида (q',q",g), где q' £ Q',q" £ Q", и g Е G. Отношение переходов => определяется следующим образом: для каждой пары вершин v1 = (q[, q", g{)

a

и v2 = (q2, q'J, g2). и произвольной буквы a отношение v, => v2 имеет место

a/s'

тогда и только тогда, когда в преобразователях л' и л" есть переходы q[ —> q'2

a/s"

и q" —> q2 соответственно, и при этом g2 = (s')~ д± s".

Пусть задано слово w = аха2... ап и пара вершин v = (q\,q",дл) и и =

W

(Я'/'Я'/ 'д-/)- Запись v=>u будет обозначать последовательность переходов v

al a2 а3 an-1 an

v, ^v2 ^ ■■■ ==> vn_, => и. которую будем называть маршрутом в LTS Г„п. В этом случае будем говорить, что вершина и достижима из вершины

О W

v. Нетрудно видеть, что в LTS Тл, _:: существует маршрут v и в том и

w/s' w/s"

только том случае, если q\ —> q'2, q"1-> q"2, и (s')~g1s" = g2 .

Вершину vsrc = (q'(), q¡¡, e). где e - единичный элемент группы G, назовем стартовой вершиной LTS ли. Используем запись

К',

для обозначения

множества вершин LTS достижимых из стартовой вершины. Всякую

вершину (c¡i,q2,g) будем называть опровергающей, если она удовлетворяет одному из следующих требований:

• 4i и <?2 ~ финальные состояния преобразователей тг' и тг", и при этом 9 * е;

• одно из состояний qG, а 6 {1,2}, является финальном, тогда как другое состояние <?3-ff не является финальным;

• для некоторой буквы а одно из состояний qG, а 6 {1,2}, имеет а-

a/s

переход qa —> q^. тогда как другое состояние q3_fT не имеет а-переходов.

Множество всех опровергающих вершин LTS лп обозначим записью лп . Значение множеств вершин » и n¡¡ для проверки эквивалентности детерминированных преобразователей проясняют следующие две леммы. Лемма 1. Детерминированные преобразователи тг' и 7г" эквивалентны тогда и только тогда, когда л,, П л„ = 0.

Доказательство. Следует непосредственно из определений LTS Тлглп, и множества вершин Ул1ли, Ялглп. Детерминированные правильные преобразователи тг' и 7г" неэквивалентны тогда и только тогда, когда для некоторого слова w выполняется хотя бы одно из двух условий:

1) (w,s') 6 Lab(n'), (w,s") 6 Lab (л"), и при этом s' Ф s";

2) Для одного из преобразователей, множество его меток содержит пару (w, s), тогда как другой преобразователь не имеет никаких образов для слова w.

Первое из указанных условий выполняется в том и только том случае, если из стартовой вершины LTS Тл,л,,, по маршруту с пометкой w достижима вершина (qi,q2-d), где q¡ и q2 - финальные состояния преобразователей тг' и тг", и при этом д = (s')~s" Ф е. Второе из указанных условий выполняется в том и только том случае, если либо из стартовой вершины LTS Г°г г г по маршруту с пометкой w достижима некоторая вершина (q,, q2, д), в которой только одно из двух состояний q±, q2 является финальным, либо w = w'aw", и при этом из стартовой вершины LTS Глг лп по маршруту с пометкой w' достижима некоторая вершина (q±,q2,g), в которой только одно из двух состояний q±, q2 имеет а-переход.

QED

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

проверки достижимости опровергающих вершин достаточно исследовать лишь ограниченный фрагмент LTS.

Лемма 2. Если множество п содержит пару вершин и, = (q[, q'¡', g¡) и v2 = Í4i-4i-d2)y удовлетворяющую соотношению дл Ф д2 , то V^, п,, п

Tt ,71

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

К',

п" = 0, и, следовательно, тг' ~ л". По определению LTS п,, достижимость вершины v, означает, что существует такое слово w0, для

W0 /Sg Wo/s'o

которого имеются начальные вычисления q'0-» q'¡ и q'¿-» q'¡. и при

этом дг = (s¿)~Sq . Поскольку состояние q'¡ является полезным, существует

w0 /s'0 W /st

такое слово w, для которого вычисление q'0-> q'¡ —> q'3 является полным

вычислением преобразователя л'. Предполагая, что л' ~ л", и принимая во внимание детерминированность преобразователя л", приходим к заключению

w0 /s0

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

о том, что преобразователь л имеет такое полное вычисление q¡¡-> q'¡'

W /sil _ _

-> q','. для которого s'0s' = s'qs". Значит, (s'0)~s'0' = s'(s")~, и поэтому g¡ =

о w

s'(s")_. По определению LTS Tn, n,, существование вычислений q[ —> q'3 и

W /sil w

q"-> q3 означает, что в LTS имеется маршрут v2 => (q'f, q'3',g), причем g =

(s')~g2 s". Учитывая, что (q'3,q3,g) принадлежит множеству

К',

а также

то, что оба состояния q3 и q'3 являются финальными, и предполагая, что V°r лп П пп = 0, мы приходим к равенству д = е. Следовательно, д2 = s' (s")~ = g¡. а это противоречит условию данной леммы. QED Из лемм 1 и 2 вытекает, что для проверки эквивалентности правильных детерминированных преобразователей л' и л" достаточно проанализировать не более К?'||<2"| + 1 вершин, достижимых из стартовой вершины LTS Г^1/ пп. Итак, мы приходим к следующей теореме.

Теорема 1. Если полугруппа 5 вложима в конечно порожденную разрешимую группу G, то проблема эквивалентности детерминированных преобразователей над S разрешима. Кроме того, если проблема равенства слов в группе G разрешима за полиномиальное время, то и проблема эквивалентности детерминированных преобразователей над S разрешима за полиномиальное время.

4. Проверка эквивалентности функциональных преобразователей

Для проверки того, является ли преобразователь n = (A,S,Q,q0,F ,Т) функциональным, мы воспользуемся размеченными системами переходов подобно тому, как это было сделано для проверки эквивалентности детерминированных преобразователей. Но для недетерминированных преобразователей соответствующие LTS нуждаются в некоторых изменениях. Пусть заданы преобразователи л'= (A,S,Q',q'0,F',Т') и л" = {A,S, Q",q'ô,F",T") над полугруппой 5, которая вложена в конечно порожденную разрешимую группу G. Отношение переходов в LTS ^ лп = < Q' х Q" х G, => > определим так: для каждой пары вершин v1 = (q'lt q",gи

a

v2 = (я'/* Я'1 > g ¿) и буквы a отношение v, => v2 имеет место тогда и только

a/s' a/s"

тогда, когда в преобразователях л' и л" есть переходы q\ —> q'2 и q" —> q2 соответственно, и при этом д2 = (s')~ g1 s" и Ь(МЛ'^2]) П L(Mn"[q2 ]) Ф 0. Множество всех вершин LTS Г*/ , достижимых из стартовой вершины (q'0,q"0,e) обозначим записью V^, П1Г Будем говорить, что вершина (q{, ^ S) является опровергающей, если <7Х и q2 - финальные состояния и при этом g Ф е. Множество всех опровергающих вершин LTS Г^г обозначим записью R^i лп. Для проверки свойства функциональности преобразователя л рассмотрим LTS и множества вершин и RljJT.

Лемма 3. Правильный преобразователь л является однозначным тогда и только тогда, когда Улп П = 0.

Доказательство. Проводится также, как и доказательство леммы 1 на основании определений LTS и множеств и n QED Лемма 4. Если множество V£n содержит такую пару вершин v , = (q',, я'\ >9\) и v2 = (q'lt q",д2), для которой имеет место соотношение д} Ф д2. то П Rl,n * 0.

Доказательство. Проводится также, как и доказательство леммы 2. QED Из лемм 3 и 4 вытекает, что для проверки свойства функциональности преобразователя л достаточно рассмотреть не более |Ç|2 + 1 вершин, достижимых из стартовой вершины LTS

Теорема 2. Если полугруппа 5 вложима в конечно порожденную разрешимую группу G, то свойство функциональности преобразователя над полугруппой 5 разрешимо. Кроме того, если проблема равенства слов в группе G разрешима за полиномиальное время, то и проверку свойства функциональности преобразователей над 5 можно провести за полиномиальное время. Эквивалентность функциональных преобразователей л' и л" можно проверить точно так же, как и свойство функциональности, при помощи LTS Но

для этого нам вначале нужно убедиться, что ¿(M^/fq^]) = L(Mn,,[q"_0]).

Проверку этого соотношения необходимо проводить потому, что в случае функциональных преобразователей, в отличие от детерминированных преобразователей, достижимость вершин (в которой одно из состояний а 6 {1,2}, является финальном, а другое нет, не является признаком неэквивалентности. Это, в частности, означает, что задача проверки эквивалентности для функциональных преобразователей является Р8РАСЕ-трудной независимо от того, над какой полугруппой работают эти преобразователи.

Лемма 5. Если ¿(М7Г'[<7^]) = 1(Мпп[ц то функциональные

преобразователи тг' и п" эквивалентны тогда и только тогда, когда Ц^,, П

^7Г',7Г" = 0-

Лемма 6. Если множество содержит такую пару вершин V, = ц", дл) и = (ц'2,ц2,д2), для которой дгФ д2 , то П й^, п„ Ф 0. Из лемм 5 и 6 вытекает, что для проверки эквивалентности функциональных преобразователей тг' и п" достаточно рассмотреть не более |<2'||<2"| + 1 вершин, достижимых из стартовой вершины ЬТ8 Г*/ Таким образом, верна

Теорема 3. Если полугруппа 5 вложима в конечно порожденную разрешимую группу С, то проблема эквивалентности для функциональных преобразователей над полугруппой 5 разрешима. Кроме того, если проблема равенства слов в группе С разрешима за полиномиальное время, то проблема эквивалентности функциональных преобразователей над 8 является Р8РАСЕ-полной.

5. Проверка свойства двухзначности моделей реагирующих программ

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

Вначале обратимся к задаче проверки свойства 2-значности конечных преобразователей, работающих над полугруппами, которые вложены в группы. Для заданного преобразователя л = (Л, (), ц(), Г, Т) определим ЬТ8 Г^ = (<2 х (<2 х С)2,=> > следующим образом: для каждой пары вершин V, = (<?1. (<72.012). (<7з.01з)) ик2 = (я'2,д'12), (<?з, д'гзУ), и произвольной буквы а

а

отношение V, => у2 имеет место тогда и только тогда, когда в преобразователе

и существуют такие переходы —» ц2 —» ц2, и ц3 —» ц-Л. для которых выполняются равенства д'12 = ду¿б2 и д'13 = (51)~д1353, и при этом

шм]) п ШпШ) п тлчзЪ * Ф.

Тройку состояний (<?i.<?2'(? з) будем называть типом вершины (<?i- (<?2-512). (<?з-51з))- Как и в случае к = 1, обозначим записью множество всех вершин LTS Г^. достижимых из стартовой вершины (Яо.(Яо.е), (Яо.е)). Как следует из определений LTS и множества . вершина v = (q1( (<72-512)' (Чз-Згз)) содержится в множестве V^2 тогда и только тогда, когда для некоторого слова w преобразователь п имеет

W/Si w/s2 w/s3

вычисления q0 —> q¡. q0 —> q2, q0 —> q3, удовлетворяющие равенствам

9í2 = (si)~s2'âi3 = (si)~s3. Поэтому, если некоторая вершина v = Í4i'(42'9i2)'Í43'9i3)) содержится в множестве . то в этом же множестве содержатся так же и вершины (qlt (qlt è), (q3, gí3)), (q}, (q¿,g-¡¿), (Я\>е))-

(q1. lq2.g12). (<?2.5l2)), ит. д..

Множество опровергающих вершин состоит из всех тех вершин (Ял, (Я/, в). (Я?,, h))- Для которых состояния q¡, q2, q:í являются финальными, и при этом g Ф e,h Ф е,д Ф h.

Лемма 7. Преобразователь тт является 2-значным тогда и только тогда, когда V¿ n Rl = 0.

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

Лемма 8. Предположим, что множество содержит четыре вершины v¿ = {q',(q",hi),(q"'.gi)). 1 < i < 4, одного и того же типа, удовлетворяющие соотношениям h¿ Ф hj, gL Ф g¡ и hLg~ Ф h¡gj для каждой пары индексов i,j, 1 < i < 4. Тогда П Rl Ф 0.

Доказательство. Поскольку все вершины v¿, 1 < i < 4, принадлежат множеству верно соотношение L(Mn[q'}) n L(Mn[q"}) П L(Mn[q"'}) Ф 0. Значит, есть такое слово w, для которого преобразователь 7Г имеет финальные

w/sl w/s'l w/s'll

вычисления q' —> р', q" -> р" и q'" -> р'". Тогда, по определению LTS

Г^, множество содержит четыре вершины щ =

(р', (р", (s')~h¿ s"), (р'", (s')~gis'")), 1 < i < 4. Если вершина щ не является опровергающей, то верно одно из трех равенств: (s')~ h\ s" = е, (s')~g-¡s'" = e, or = (s')~дЛ s'". Не ограничивая общности, рассмотрим лишь

случай (s')~ftis" = е (в двух других случаях рассуждения проводятся аналогичным образом). Так как /?, Ф h2. справедливо соотношение

(s')~h2s" Ф е. Значит, если и2 не является опровергающей вершиной, то верно одно из двух равенств (s')~g2s"' = е или (s')~h2s" = (s')~g2s"'. Рассмотрим случай (s')~g2s"' = е (те же самые рассуждения можно провести и в случае другого равенства). Так как КГФ h3 и д2 Ф д3, из равенств = е и (s')~g2s"' = е следует соотношение (s')~h3s" Феи (s')-g:is"' Ф е. Поэтому, если и3 не является опровергающей вершиной, то (s')~h3s" = (s')~g3s"'. Ввиду того, что h-^ Ф h4,g2 Ф д4 и h3g3 Ф h4g4, мы приходим к заключению, что следствием равенств (s')-/^" = е, (s')~ g2s"' = е и (s')~h3s" = (s')~g3s"' являются соотношения (s')~h4s" Ф е, (s')~g4s"' Ф е и (s')~h4s" Ф (s')~g4s"'. Согласно определению опровергающей вершины, это означает, что v4 £ QED Лемма 9. Предположим, что в LTS есть четыре различные вершины vL = (q',(q",g"),(q",g[")), 1 < i < 4, удовлетворяющие одному из следующих трех условий:

a) равенство д[' = g'j выполняется для любой пары индексов i,j, 1 < i < j < 4;

b) равенство g"' = g'-' выполняется для любой пары индексов i,j, 1 < i < j < 4;

c) равенство (gl'Yg"' = (g'/) g'/' выполняется для любой пары индексов i,j, 1 < i < j < 4.

Тогда, если опровергающая вершина достижима из вершины v4, то некоторая вершина также достижима из одной из вершин v1: v2,v3.

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

Предположим, что в LTS Г^ существует путь, помеченный словом w и позволяющий достичь опровергающую вершину u4 = (р', (р", h"), (р'", h4')) из вершины v4. Тогда преобразователь п имеет три таких финальных

W/SI W/Sff w/sn,

вычисления q —> р , q -> р и q -> р , для которых выполняются

равенства h" = (s')~g"s" и h'4 = (s')~g4's"'. Поскольку вершина u4 является опровергающей, должно быть соблюдено соотношение h" Ф е. По определению LTS Г^ для каждого значения индекса i, 1 < i < 3, в этой системе переходов есть путь из вершины vL в такую вершину щ = (р', (р", h"), (р'", h"')), для которой имеет место равенство h[" = (s')~д["s'". Если и, £ то либо h''' = е, либо (h")~h"' = е. Проанализируем случай /?'," = е (в другом случае мы также можем воспользоваться аналогичными рассуждсниями). Ввиду того, что д2 Ф д'" и д[" Ф д'3 , верны соотношения h2 Феи h[Ф е. Значит, если u2 i , то (h")~h'2 = е. Однако, коль скоро д2 Ф д'3 , справедливо соотношение (h")~h3' Ф е, и в результате мы приходим к заключению о том, вершина и3 является опровергающей. QED

При помощи лемм 8 и 9 можно доказать следующую теорему. Теорема 4. Если полугруппа 5 вложим в конечно порожденную разрешимую группу G, то свойство 2-значности конечных преобразователей над полугруппой 5 разрешимо. Кроме того, если проблема равенства слов в группе G разрешима за полиномиальное время, то и свойство 2-значности конечных преобразователей над S разрешима за полиномиальное время. Доказательство. Как следует из леммы 7, для проверки 2-значности преобразователя п достаточно провести проверку достижимости опровергающих вершин из стартовой вершины в LTS Г2 . Поиск опровергающих вершин можно проводить методом обхода вершин LTS по стратегии поиска в глубину с возвратом. Обход начинается из стартовой вершины (<70, (<70, е), (<70, е)); при этом продвижение в глубину проводится только из значимых вершин, которые определяются на основании леммы 9. Указанный обход вершин LTS Г^ может быть прерван досрочно, если будет обнаружено, что выполнены условия леммы 8. В этом случае факт достижимости опровергающей вершины устанавливается без явного предъявления пути, ведущего в нее из стартовой вершины. Предположим, что на некотором этапе предложенного обхода LTS Г^ была достигнута ранее не встречавшаяся вершина v = (<?', (<?", д"), (<?'", д"'У). Возможны следующие четыре альтернативы.

1) Если вершина v является опровергающей, то обход прекращается, и выносится вердикт о том, что преобразователь п не является 2-значным.

2) В противном случае, если ранее были пройдены 3 значимых вершины v¿ = (<?', (ц",д['), {ц"',д["У), 1< i < 3, одного и того же типа, для которых выполняется одно из трех следующих условий:

a) д" = д[' для каждого значения индекса i, 1 < i < 3;

b) д'" = д[" Для каждого значения индекса i, 1 < i < 3;

c) (д")~д"' = (д")~д"' для каждого значения индекса i, 1 < i < 3,

то вершина v объявляется незначимой, и из нее совершается откат к ее предшественнику в этом обходе.

3) В противном случае, если ранее были пройдены 27 значимых вершин v¿ = (<?'- (<?"- g't')' (<?'"' g'í"))> 1 ^ i ^ 27, того же самого типа, что и вершина v, то обход прекращается, и выносится вердикт о том, что преобразователь п не является 2-значным.

4) В противном случае вершина v объявляется значимой, и процедура обхода LTS Г^ продолжается из этой вершины.

Если процедура обхода завершается в стартовой вершине, преобразователь п признается 2-значным.

Как видно из приведенного описания процедуры обхода, она всегда завершается после посещения не более 27\Q\3 значимых вершин LTS Г^. Лемма 9 обеспечивает гарантию того, что игнорирование незначимых вершин не приводит к потере возможности достичь опровергающую вершину. Это

обстоятельство гарантирует полноту нашей процедуры поиска. Чтобы убедиться в корректности этой процедуры нужно показать, что третья альтернатива приводит к правильному решению. Действительно, как следует из простых комбинаторных соображений, если имеются 28 вершин (V и г^, 1 < I < 27), и из которых никакие четыре вершины не удовлетворяют ни одному из условий леммы 9 (а это объясняется тем, что все пройденные в нашем обходе вершины являются значимыми), то в этом множестве вершин найдутся такие четыре вершины, которые удовлетворяют предпосылкам леммы 8. ОЕЭ

Обход ЬТ8 Г^ может быть еще более сокращен, если воспользоваться следующей леммой.

Лемма 10. Пусть q 6 {ц', ц", ц'"}. Предположим, что существует такое входное слово ш, принадлежащее множеству слов 1(Мп[ц'1\) п 1(Мп[ц"1\) п ¿(М^ [<?"']), для которого преобразователь п имеет два финальных

вычисления <7 —» рх и <7 —» р2, удовлетворяющих соотношению 5, Ф з2. Тогда если в множестве есть пять вершин = (ц' ,{д", д{),{д'" 1 ^ I < 5, то П В.1Ф 0.

Доказательство. Для определенности будем считать, что ц = ц'. Так как все вершины VI, 1 < I < 5. принадлежат множеству это множество содержит также 10 вершин ии = (<7', (д', е), (д", д¿)), и21 = (<?', (д', е), (д'", 1 < I < 5. Коль скоро слово и/ принадлежит множеству Мп\д'~\) П 1(Мл[ц"1\) п

1(Мп[ц"'\). преобразователь п имеет финальные вычисления ц"-> р", ц'"

тю/БШ

-> р'". Таким образом, из стартовой вершины ЬТ8 Г„ достижимы

следующие 10 вершин: и" = (р1( (р2,5^Б2), (р", з^д^")) и и"' = (Р1- (Р2.

5г)' (р'"> где 1 < I < 5.

Предположим, что ни одна из вершин и", и[", 1 < / < 4. не является опровергающей. Следует

заметить, что V■ Ф 52, и, следовательно, -V- .^у Ф е. Поэтому, по определению опровергающей вершины, для каждого I, 1 < I < 4, элемент группы С либо равен 5, (У')~ , либо равен а элемент

либо равен 51(5/")~, либо равен 52С5'")-- Принимая во внимание, что вершины < I < 5, попарно различны, мы приходим к выводу о том, что ни одно из двух равенств д5 = б^б")- и = 52 с?")- не может быть выполнено. Таким образом, = (р[, (р2,з^з2), (рявляется опровергающей вершиной, достижимой из стартовой вершины ЬТ8 Г^. ОЕЭ Чтобы проверить основное требование предпосылки леммы 10 -

существование двух финальных вычислений q —» Р1 и <7 —» р2 с разными образами, - можно воспользоваться алгоритмом проверки свойств функциональности конечных преобразователей. Условия леммы 10 выполнены для состояния <7 тогда и только тогда, когда проекция преобразователя 7г[<7] на конечный автомат, распознающий язык Мп[ц'\) П 1(Мп[цП1\) П 1(Мп[ц'П1\). обладает свойством функциональности. Таким

образом, алгоритм обхода LTS описанный в доказательстве теоремы 4 можно модифицировать, введя следующую дополнительную альтернативу: 3') В противном случае, если ранее были пройдены 4 значимых вершины v¿ = (<?', (ц",д['), {ц"',д["У), 1< i < 4, одного и того же типа, для которых выполняется условие леммы 10, то обход прекращается, и выносится вердикт о том, что преобразователь тт не является 2-значным.

Предложенный метод проверки 2-значности недетерминированности преобразователей - леммы 9, 10 и процедуру поиска опровергающих вершин, описанную в доказательстве теоремы 4, - можно использовать и для проверки /с-значности конечных преобразователей при любом к > 1. В этом случае вершинами LTS служат наборы вида (q0, (q¡, h ¡),..., (qk, hk)). и для проверки достижимости опровергающей вершины в LTS Г^ достаточно совершить

обход не более ( ^ ) 2 |<3lfc+1 + 1 значимых вершин.

6. Проверка эквивалентности двухзначных моделей реагирующих программ

Вместо решения проблемы эквивалентности для конечных преобразователей мы исследуем более общую задачу проверки включения: для заданной пары преобразователей тт и тт' проверить выполнимость включения Lab(n') с Lab (tí). Решение этой задачи также проведем на основе размеченных систем переходов.

Пусть задана пара 2-значных преобразователей тт = (A,S,Q,q0,F,T) и тг' = (A,S,Q',q'0,F',T'). Ясно, что Lab(jz') £ Lab(n) влечет L(Mnr) £ L(Mn). Поэтому проверку включения преобразователей начнем с проверки включения соответствующих автоматов-подложек, и далее в этом разделе будем считать, не оговаривая этого особо всякий раз, что для анализируемых преобразователей тт и тг' имеет место включение Ь(МЖ> ) £ L(Mn). Чтобы дать определение LTS , соответствующей проблеме включения для преобразователей тт и тт', нам понадобится ввести вспомогательное понятие блока состояний. Рассмотрим некоторое мультимножество состояний Q преобразователя тт. Блоком состояний в мультимножестве Q называется всякое максимальное по включению (т.е. нерасширяемое) подмножество В множества Q, удовлетворяющее условию П(/ее L(Mn[q] Ф 0), которое подразумевает существование хотя бы одного слова, которое допускается каждым автоматом Mn[q], q 6 В.

LTS = ( V, => ) определяется следующим образом. Множество вершин V образуют всевозможные пары u = (q',X), где q'EQ', Х = {(<?!,д^),..., (qm,дт)} £ (? х G, и при этом выполнено условие L(Mni}[q'\) П (]"=, L(Mn[qL]) Ф 0. Пару (q',{q¡,..., qrn}) будем называть типом вершины и. Для каждой буквы a и пары вершин и = (q',X) и v = (p',Y), имеющих типы

(q', Ви) и (р', Вv) соответственно, переход u=>v возможен тогда и только тогда, когда выполнены следующие требования:

a/s'

1) в преобразователе л есть переход q —> р ,

2) Bv - это блок состояний в мультимножестве Q = {q ■ 3 q (q £ Bu Л q

a/s

^4)1

3) пара (p, h) принадлежит множеству Y в том и только том случае, если р £ Bv и при этом для некоторой пары (q, g) из множества X в

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

a/s

преобразователе п есть переход q —> р. для которого верно равенство h = (s')-gs.

Как обычно, для любого заданного слова w мы будем обозначать записью и

w

=> v композицию соответствующих однобуквенных переходов в LTS. Вершина vsrc = (q'0, {(q(l, е)}) объявляется стартовой вершиной LTS . Запись Vjп, служит обозначением множества всех вершин, достижимых из стартовой вершины vsrc. Опровергающей вершиной назовем всякую вершину (q',X), в которой q' £ F', и для каждой пары (q, g) из X либо q £ F, либо g Ф е. Множество всех опровергающих вершин LTS обозначим записью

d3

7Г,7Г' •

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

w0/s'0 Wi/sJ

Утверждение 1. Пусть w0 и wx - произвольные слова, и q'0-> q[-> q'2 -

полное вычисление преобразователя тг'. Тогда существует такая вершина v =

w0 w0/s0 W1/s1

(д1,Х), что vsrc =>v. и для каждого полного вычисления q0->q1->q2

преобразователя п мультимножество X содержит пару (tf,, (s'0)~s0).

w0

Утверждение 2. Предположим, что vsrc => X). Тогда существует такое

w0/s'0 Wi/sJ

слово w1 и полное вычисление q'0-> q[-> q'2 преобразователя тт, что для

w0/s0 W1/s1

любого полного вычисления q0-> qt-> q2 преобразователя п

мультимножество X содержит пару (q1, (s'q)~s0).

Оба эти утверждения нетрудно доказать, воспользовавшись индукцией по длине слова w0 и опираясь лишь на определение отношения переходов => в LTS Тп,т- Здесь нужно особо отметить, что справедливость приведенных утверждений обусловлена тем фактом, что тип каждой вершины связан именно с блоком состояний как максимальным множеством пар, удовлетворяющих определенному условию.

Лемма 11. Lab(n') £ Lab(n) фф П R|;jr, = 0.

Доказательство. Следует из утверждений 1 и 2 на основании определения опровергающей вершины LTS QED

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

Рассмотрим произвольную достижимую вершину v типа (q',B). Поскольку тт - это 2-значный преобразователь, для каждого его состояния q в мультимножестве В может содержаться не более двух копий состояний q. Поэтому, |ß| < 2\Q\. и общее число типов вершин LTS Гдостижимых из стартовой вершины, не превосходит величины IQ'IS'0'.

Рассмотрим язык L = L(Mni[q'~\) С\ [\qeBL(Mn[q\) будем называть его языком типа (q',B). По определению LTS этот язык непуст. Семейство типов всех достижимых вершин можно разделить на три класса в зависимости от свойств языка L. Тип (q',B) будет называться А-типом в том случае, когда язык L содержит такое слово w, которое имеет два разных образа s[ и s2 в

w/s[ w/s'2

двух финальных вычислениях q —» р[ и q —» р'2 преобразователя тт. Тип (q',B) будет называться B-типом в том случае, когда он не относится к классу А, и при этом в мультимножестве В существует такое состояние q, а в языке L найдется такое слово w, которое имеет два разных образа s, и s2 в двух

W/Si w/s2

финальных вычислениях q —» рл и q —» р2 преобразователя тт. Все остальные типы будем называть С-типами. Леммы, которые приводятся далее, раскрывают некоторых характерные свойства этих классов, важные для решения проблемы включения.

Лемма 12. Предположим Lab(n') £ Lab(n). и пара (q',B) является А-типом. Тогда из стартовой вершины LTS V£n, достижимо не более 2'®' вершин этого типа.

Доказательство. Рассмотрим язык L типа (q',B), произвольную вершину v =

w0

(q, X) типа (q, В), для которой имеется путь vsrc=>v. Пусть (q, д) -произвольная пара из множества X. Так как тип (q',B) является А-типом, в языке L найдется такое слово w, которое имеет два разных образа s[ и s'2 в

w/s'-y w/s'2

двух финальных вычислениях q' —> р[ и q' —> р2 преобразователя п'. По определению языка L, преобразователь тт имеет финальное вычисление q

w/s

—> q}. Заметим, что элементы s[,s2 и s группы G зависят только от типа (q',B) и состояния q. Согласно утверждению 2, преобразователи тт и тт' имеют

w0/s0 , W0/s'0

такие начальные вычисления q0-> q и q 0-> q , для которых верно

равенство д = (s'q)~s0. Но тогда преобразователь тт' имеет два полных

Wq/S'Q IV ¡s\ WQ/S'Q W/S'2

вычисления q'0->q'—>p[ и q'0-> q'—> p2. а преобразователь тт имеет

w0/s0 w/s

полное вычисление q0->q—> q}. Принимая во внимание, что

преобразователь л является 2-значным, то, что s¿s{ Ф SqS2, а также то, что Lab(n') £ Lab(ji), мы можем быть уверены, что справедливо хотя бы одно из равенств s0s = s¡)s'¡ или s0s = s¡ts2. Следовательно, либо д = s[s~, либо д = s'2s~. Таким образом, утверждение леммы следует из того факта, что оба возможных значений д зависят только от типа (q',B) и рассматриваемого состояния q. QED

Лемма 13. Предположим, что Lab(jz') £ Lab (л) и пара (q',B) является В-типом. Тогда из стартовой вершины LTS достижимо не более 3'®' вершин типа (q',B).

Доказательство. Рассмотрим язык L типа (q',B) и произвольную вершину

w0

V = (q',X) типа (q',B), для которой имеется путь vsrc => v. Пусть (q, д) -произвольная пара из множества X, для которой есть такое слово w из L, что

W/Si w/s2

финальные вычисления q —> p¡ и q —> р2 преобразователя л дают разные образы слова w. Выберем произвольную пару (р, К) из множества X. Так как

w/s w/s'

w EL, есть хотя бы одно финальное вычисление р —> р3 и q' —> р' у каждого из преобразователей л и л'. Но тогда в силу утверждения 2 мы приходим к следующим выводам. Ввиду включения Lab (л') £ Lab (л), справедливо в точности одно из равенств s' = gs± или s' = gs2. Поскольку преобразователь л является 2-значным, справедливо в точности одно из равенств gs± = hs или gs2 = hs. Значит, возможен лишь один из трех вариантов равенства: h = s's~, h = s'(s1)~s2s~, или h = s'(s1)~s2s~. Тогда утверждение леммы следует из того факта, что во всех трех случаях значение h зависит только от типа (с/, В) и выбранных состояний q и p. QED Предположим, что пара (q',B) относится к С-типу, и В = {q},..., qm}. a L -язык этого типа. Будем ассоциировать с типом (q', В) произвольное слово w0

Wo/S'

из множества L. Рассмотрим финальное вычисление q -> р

преобразователя л', а также финальные вычисления qt ——> p¿ преобразователя л для каждого i, 1 <i<m. Набор (V, s,,... ,srn) элементов полугруппы 5 будем называть ш0-характеристикой типа (q',B). Она будет использована для сокращения поиска опровергающих вершин. Допустим, что вершина и = (q'.^q-i.g-J, ...,(qm,gm)}) является достижимой вершиной С-типа (q',B). Если соотношение s' Ф g¿s¿ соблюдается для каждого i, 1 < i < т, то, по определению LTS V¿iTTI. опровергающая вершина достижима из вершины и. Тогда мы будем говорить, что вершина и является пред-опровергающей вершиной типа (q',B). В противном случае множество X можно разбить на два подмножества Х0 = {(q¿,g¿) s' = g¿s¿,l < i < т} и X¡ = {(qj.gj): s' Ф gjSj, 1 < j < m} и использовать обозначение (q',X(í ф X,) для такой вершины и. Заметим, что в силу 2-значности преобразователя л, для любых двух пар (qL, gt), (q¡,g¡) из Х1 верно равенство g¿s¿ = g¡Sj.

Лемма 14. Пусть пара (q',B) относится к С-типу, В = {цл,..., qrn}. и к = 2т. Предположим, что из стартовой вершины LTS достижимы к + 1 вершин щ = (q',Xо ф Хг1), -,ик+1 = (q',X0 ф Х1к+1) типа (д',В). Тогда опровергающая вершина достижима из одной из вершин списка щ,... ,ик+1 в том и только том случае, если опровергающая вершина достижима из какой-либо вершины списка щ,..., ик.

Доказательство. Пусть (s'.s^ —,sm) - характеристика типа (q',B). Предположим, что ^o = í(4i'3i)>■■■> (<7f>5^)} и ^ч =

ífe+i. 9f+ij). ■■■> (<?m- 9mj)} Для каждого j, 1 < j < к + 1.

w

Допустим, что путь ик+1 => v позволяет достичь опровергающей вершины v для некоторого слова w. Тогда, по определению LTS . преобразователь п'

w/sr

имеет финальное вьиисление q' —> р' , и для каждого i, 1 < i < m, преобразователь тт либо не имеет финальных вычислений на слове w из

w/t¡

состояния qh либо в каждом финальном вычислении qL —> p¿ образ t¿ слова w удовлетворяет соотношению s' Ф gik+ití (на самом деле, одно и то же слово может иметь не более двух разных образов t¡, и ti2 в силу 2-значности преобразователя тт). Не умаляя общности мы можем предполагать, что вторая альтернатива осуществляется для каждого состояния q¿, 1 < i < m. Таким образом, мы располагаем не более чем 2(ш — 1) элементами tLrT, а 6 {1,2}, полугруппы 5, которые являются образами одного и того же слова w для всех возможных финальных вычислений преобразователя тт из состояний 4í+l> ■■■' Чт-

Если опровергающая вершина недостижима из вершины иъ то для некоторой пары (<7¿, д1}) из X,, и для некоторого образа t слова w верно равенство s' = gtlt, т.е. д1Л =s't~. Заметим, что для всякой другой пары (qj,gj±) имеет место равенство g¿1s¿ = gj,Sj. т.е. g¿1 = s't~sisj~. Это означает, что образ t полностью определяет все элементы gj}, £ + 1 <j < т, из Х1±. Ясно, что разные образы слова w определяют разные элементы в различных множествах Хц. Так как число разных образов слова w не превосходит величины 2(т — 1) < к, существует такая вершина u¿, 1 < i < к, для которой соотношение s' ^ дjí^jfj соблюдается для каждой компоненты (q¡,g¡i) множества ХЛ1 и образов t¡a слова w. Последнее означает, что опровергающая вершина достижима из этой вершины щ. QED

Теорема 5. Если полугруппа 5 может быть вложена в конечно порожденную разрешимую группу G, то проблема включения Lab(n') с Lab(jt) для 2-значных преобразователей над полугруппой 5 разрешима. Доказательство. Поиск опровергающей вершины в LTS представляет собой обход этой системы переходов, начинающийся в стартовой вершине vsrc. Предположим, что на некотором шаге этот обход достиг ранее не пройденной вершины и = (q',X) типа (q',B). Тогда возможны шесть следующих альтернатив продолжения этого обхода.

1) Если и 6 R'4i7r;. то обход прекращается, и объявляется о том, что преобразователь п не включает преобразователь п' (отношение Lab (л') £ Lab(п) не выполняется).

2) В противном случае, если тип iq'.B) относится к A-типу и ранее были пройдены 2'®' вершин того же типа, то обход прекращается и объявляется о том, что преобразователь п не включает преобразователь п'.

3) В противном случае, если тип iq'.B) относится к В-типу и ранее были пройдены З'в' вершин того же типа, то обход прекращается и объявляется о том, что преобразователь п не включает преобразователь п'.

4) В противном случае, если тип iq'.B) относится к С-типу и вершина и является пред-опровергающей вершиной этого типа, то обход прекращается и объявляется о том, что преобразователь п не включает преобразователь п'.

5) В противном случае, если тип iq',B) относится к С-типу, и = iq',X0 © ХЛ). и 2\В\ вершин вида щ = iq',X0 ® Хи) уже были пройдены ранее, то из вершины и совершается откат к ее предшественнику в этом обходе.

6) В противном случае обход в глубину LTS Г^ продолжается регулярным образом.

Если при обходе происходит окончательный откат в стартовую вершину, то объявляется о том, что справедливо включение Labin') £ Labin). Завершаемость, корректность и полнота описанной процедуры проверки отношения включения для преобразователей вытекает из лемм 11-14. Из описания процедуры обхода видно, что для проверки включения Labin') £ Labin) достаточно проанализировать не более |(?'|8|<31 вершин LTS Т£п, . QED

Следствие.

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

7. Сложность разрешающих алгоритмов

Сложность разрешающих алгоритмов существенно зависит от свойств группы G, и, в частности, от сложности разрешения проблемы равенства слов в группе G. Мы ограничимся рассмотрением двух случаев, когда 5 является свободной полугруппой и свободной коммутативной полугруппой. Сложность предложенных алгоритмов оценивается относительно следующих параметров, характеризующих размер анализируемых преобразователей л' и п": п -максимальное число состояний преобразователей п' и п", т - максимальное число переходов в преобразователях тг' и п", £ - максимальная длина

a/s

полугруппового выражения s в переходах q —» q' преобразователей тг' и п".

Всякая конечно порожденная свободная полугруппа 5 может быть вложена в свободную группу G с тем же множеством образующих. Каждое выражение д составленное из порождающих элементов свободной группы может быть задано двоичной строкой длины 0(151).

Всякая конечно порожденная свободная коммутативная полугруппа 5 может быть вложена в абелеву группу G с тем же множеством образующих. Каждое выражение д составленное из порождающих элементов свободной группы может быть задано двоичной строкой длины О (log

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

1) Оцениваем максимальное число N вершин, которые могут быть пройдены при обходе размеченной системы переходов для проверки анализируемого свойства преобразователей. Это число явно указано в соответствующих разделах 2-5 данной статьи. Вершинами каждой такой LTS являются различные структуры данных, которые включают в себя состояния q преобразователей и элементы д группы G. Очевидно, что все групповые элементы д, встречающиеся в пройденных вершинах LTS, могут быть заданы двоичными строками размера = 0(£N) (в том случае, если 5 - свободная полугруппа) или /V, = 0(\og£N) (в том случае, если 5 - свободная коммутативная полугруппа).

2) Оцениваем максимальное число N2 переходов из тех вершин LTS, которые должны быть пройдены при ее обходе. Это число зависит от структур данных, используемых для представления этих вершин. Если а) такая структура данных включает не более гг состояний преобразователей, и Ь) при обходе LTS может быть пройдено не более г2 вершин с одним и тем же ансамблем состояний (цл,..., qr]). то N2 = r2 тГ1.

а

3) Оцениваем сложность <p(iVi) построения отдельного перехода и => v. Она зависит от а) структур данных, используемых для представления вершин LTS и и v, и Ь) размера /V, двоичного представления групповых элементов д, содержащихся в этих структурах данных.

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

Утверждение 3. Пусть тт' и тт" - пара преобразователей над свободной полугруппой 5. Предположим, что из стартовой вершины LTS Г°,ягг достижима вершина v = (q', q", s), где s £ 5 и s~ £ 5. Тогда пп П Rnn Ф 0.

Доказательство. Нетрудно заметить, что если С - свободная группа их?5и 5~ £ 5, то для любой пары слов /?, д из множества А" верно УСздФе. Поэтому любая вершина (р',р",§), достижимая из вершины V, является опровергающей, если хотя бы одно из состояний р', р" является финальным.

СЖБ

Утверждение 4. Пусть л' и л" - пара преобразователей над свободной полугруппой 5. Предположим, что из стартовой вершины ЬТ8 ц достижима вершина (<7', ц", 5), где 5 6 5 или 5" Е5, и длина выражения 5 превосходит величину £п. Тогда п„ П п,, Ф 0.

Доказательство. Рассмотрим лишь случай 5 6 5. Пусть и/ - кратчайшее слово, для которого преобразователь тг' имеет финальное вычисление <7'

—» р'. Очевидно, что длина выражения 5 не превосходит величины (п. Если

преобразователь л" также имеет финальное вычисление ц"-» р", то в ЬТ8

Г'°1„п из вершины (<7', ц", 5) достижима вершина и = (<7', <7", (5')~55"). Нетрудно видеть, что 55" 6 5, и при этом длина выражения 55" превосходит величины £п. Тогда, как следует из свойств свободной группы С, справедливо соотношение (5')~55" Ф е. Значит, и 6 V'1/ ,, п /Л „п.

4 у ' 7Г ,7Г 7Г ,7Г

СЖБ

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

Из этих утверждений и теоремы 1 вытекает

Теорема 6. Проблема эквивалентности детерминированных преобразователей над свободной полугруппой разрешима за время 0(^п3).

Доказательство. Из утверждения 3 и 4 следует, что ЫЛ = 0(£п). Для детерминированных преобразователей верно т = 0(п). Потому Ы2 = 0(п2). Каждый переход в ЬТ8 Г°п, можно построить за время (р (/V,) = 2 \og rt + /V, = 0(п). Таким образом, описанная выше схема вычислений дает указанную в теореме оценку сложности. ОЕЭ Аналогичным образом может быть доказана

Теорема 7. Проблема эквивалентности детерминированных преобразователей над свободной коммутативной полугруппой разрешима за время 0(п21од £п). Теорема 8. Свойство функциональности конечных преобразователей над свободной полугруппой можно проверить за время 0(£т2п2). Доказательство. Как следует из лемм 3 и 4, для проверки свойства функциональности (однозначности) недетерминированного преобразователя нужно рассмотреть не более п2 + 1 вершин V = ц'Л, д) в ЬТ8 Поэтому

а

N = п2 + 1 и Иг = 0{(п2). Каждый переход (<Ъ'Чг'дг) {ЧъЧ^дг) в ЬТ8 можно построить за время (р(/У,) = \ogrt + /V, + £ = 0(п2). Нужно отметить, что при построении этих переходов нет необходимости всякий раз проверять условие 1(АП^2]) Г\ ¿(А^^]) Ф 0: верификация проводится

«налету» по ходу поиска опровергающей вершины. Таким образом, получается указанная в теореме верхняя оценка сложности 0(£ п2т2). ОЕЭ Теорема 9. Свойство функциональности конечных преобразователей над свободной коммутативной полугруппой можно проверить за время 0(т2 \og-dri).

Теорема 10. Свойство к-значности конечных преобразователей над свободной полугруппой можно проверить за время 0((/с + 1)2!,с+1 >2£ тк+1пк+1). Доказательство. Хотя в теореме 4 был описан только метод проверки 2-значности конечных преобразователей, его можно применить и для проверки свойства к-значности преобразователей при любом к. Вершинами ЬТ8 Т2 являются наборы V = (<70, (дЛ, Л ,),..., (цк, кк)). и задача проверки к-значности преобразователей сводится к проверке достижимости опровергающих вершин

в ЬТ8 Г2. Для этого достаточно проверить не более ( ^ ) 2 |(?|,с+1 + 1

С0"1"1) (к+1)

значимых вершин. Значит, = ^ ) 2 пк+1, Ы2 = ( ^ ) 2 тк+1 •

(р(/У,) = О (к /V,). Таким образом, мы приходим к указанной и теореме оценке сложности. ОЕЭ

Оценка сложности в теореме 10 показывает, что предложенный нами алгоритм существенно эффективнее процедуры проверки свойства к-значности конечных преобразователей, описанной в статье [18], которая решает эту задачу за время 0(2<~к+1^£ тк+1пк+1).

Теорема 11. Проверку эквивалентности функциональных преобразователей над свободной полугруппой можно провести за время £20<п>. Доказательство. Отличительная особенность проверки эквивалентности функциональных преобразователей п и тг' состоит в том, что вначале нужно проверить равенство Ь(Ап[ц0]) = 1(АЛ![д,',]). Этот предварительный анализ можно провести за время 20<-п\ Все остальные операции в алгоритме проверки эквивалентности, описанном в теореме 3, можно выполнить за время 0{( т2 п2). СЖБ

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

£ 20(n\ogn)

Доказательство. 1. По теореме 5 для проверки эквивалентности п ~ п' нужно проверить не более N = 20<п> вершин в ЬТ8 ГПоэтому /V, = £ 20<п>. 2. Рассмотрим произвольную тройку вершин р2,р3, являющихся последователями вершины и в ЬТ8 Поскольку 7Г и тг' являются 2-

значными преобразователями, из определения следует, что вершины и,, у2, не могут иметь один и тот же тип. Но поскольку в ЬТ8 существует не более пЗп различных типов вершин, приходим к выводу о том, что И2 = 20<-п\

3. Выделить все возможные блоки состояний можно за время 2ппп = 2°!nlognj. Как только это сделано, каждый переход в LTS можно

построить за время = 0(m/V,).

Так мы приходим к оценке сложности, объявленной в теореме. QED Полученная оценка сложности показывает, что предложенный нами алгоритм существенно эффективнее процедуры проверки эквивалентности 2-значных конечных преобразователей, описанной в статье [20], которая решает эту задачу за время 0(2п' ).

8. Заключение

В данной статье предложен универсальный подход к решению некоторых задач анализа поведения конечных преобразователей над полугруппами; преобразователи такого вида можно рассматривать как простую модель последовательных реагирующих программ. Предложенный метод основывается на сведении рассматриваемых проблем - задачи проверки к-значности и задачи проверки эквивалентности преобразователей - к хорошо известной задача проверки достижимости заданного класса вершин в конечном ориентированном графе. Фактически, сложность алгоритмов, которые могут быть построены при помощи нашего метода, определяется размером того графа (размеченной системы переходов), который сопоставляется анализируемым преобразователям. Построенные нами алгоритмы имеют более простое устройство и меньшую вычислительную сложность, чем ранее известные алгоритмы решения тех же самых задач. Есть основания полагать, что полученные в данной статье результаты можно применить и для решения задач минимизации конечных преобразователей над полугруппами и обобщить тем самым ранее известные результаты исследования этой задачи, представленные в статье [15]. Также представляет интерес задача детерминизации конечных преобразователей над полугруппами. В этом случае использование алгебраических особенностей полугрупп, над которыми определяются вычисления преобразователей, может существенно расширить класс однозначных преобразователей, допускающих детерминизацию.

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

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

[1]. Aho А.V., Hopcroft J.E., Ullman J.D. The design and analysis of computer algorithms. Addison-Wesley, Reading, MA, 1974.

[2]. Aho A. V., Sethi R., Ullman J.D. Compilers: principles, techniques, and tools. Addison-Wesley, Reading, MA, 1986.

[3]. Alur R., Cerny P. Streaming transducers for algorithmic verification of single-pass list-processing programs. Proceedings of 38th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, 2011, p. 599-610.

[4]. Blattner M, Head T. Single-valued a-transducers. Journal of Computer and System Sciences, 1977, v. 15, p. 310-327.

[5]. Blattner M, Head T. The decidability of equivalence for deterministic finite transducers. Journal of Computer and System Sciences, 1979, v. 19, p. 45-49.

[6]. Beal M.-P., Carton O., Prieur C., Sakarovitch J. Squaring transducers: an efficient procedure for deciding functionality and sequentiality. Theoretical Computer Science, 2003, v. 292.

[7]. Culik K., Karhumaki J. The equivalence of finite-valued transducers (on HDTOL languages) is decidable. Theoretical Computer Science, 1986, v. 47, p. 71-84.

[8]. Fischer P.C., Rosenberg A.L. Multi-tape one-way nonwriting automata. Journal of Computer and System Sciences, 1968, v. 2, p. 88-101.

[9]. Griffiths T. The unsolvability of the equivalence problem for £-free nondeterministic generalized machines. Journal of the ACM, 1968, v. 15, p.409-413.

[10]. Gurari, E., Ibarra, O. A note on finite-valued and finitely ambiguous transducers. Mathematical Systems Theory, 1983, v. 16, p. 61-66.

[11]. Ibarra O. The unsolvability of the equivalence problem for Efree NGSMs with unary input (output) alphabet and applications. SIAM Journal on Computing, 1978, v. 4.

[12]. Malcev, A. I. Uber die Einbettung von assoziativen Systemen. Gruppen, Rec. Math. (Mat. Sbornik)N.S., 1939, v. 6, p. 331-336.

[13]. Malcev, A. I. Uber die Einbettung von assoziativen Systemen. Gruppen. II, Rec. Math. (Mat. Sbornik)N.S., 1940, v. 8, p. 251-264.

[14]. Mohri M. Finite state transducers in language and speech processing. Computer Linguistics, 1997, v. 23, N 2.

[15]. Mohri M. Minimization algorithms for sequential transducers. Theoretical Computer Science, 2000, v. 234, p. 177-201.

[16]. Nerode A., Kohn W. Models for hybrid systems: automata, topology, controllability, observability. Cornell University, Technical Report 93-28, 1993, MIT Press, Cambridge.

[17]. Sakarovitch J., de Souza R. On the decomposition of k-valued rational relations. Proceedings of 25th International Symposium on Theoretical Aspects of Computer Science, 2008, p.621-632.

[18]. Sakarovitch J., de Souza R. On the decidability of bounded valuedness for transducers. Proceedings of the 33rd International Symposium on Mathematical Foundations of Computer Science, 2008, p. 588-600.

[19]. Schutzenberger M. P. Sur les relations rationnelles. Proceedings of Conference on Automata Theory and Formal Languages, 1975, p. 209-213.

[20]. de Souza R. On the decidability of the equivalence for k-valued transducers. Proceedings of 12th International Conference on Developments in Language Theory, 2008, p. 252-263.

[21]. Veanes M., Hooimeijer P., Livshits В., et al. Symbolic finite state transducers: algorithms and applications. Proceedings of the 39th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, 2012.

[22]. Weber A. On the valuedness of finite transducers. Acta Informática, 1989, v. 27, p. 749-780.

[23]. Weber A. Decomposing finite-valued transducers and deciding their equivalence. SIAM Journal on Computing, 1993, v. 22, p. 175-202.

[24]. Zakharov V.A. An efficient and unified approach to the decidability of equivalence of propositional program schemes. Proceedings of the 25th International Colloquium "Automata, Languages and Programming", 1998, p. 247-258.

Modeling and analysis of the behavior of successive reactive programs

VA.Zakharov <[email protected]> Institute for System Programming Russian Academy of Science, 109004, A. Solzhenitsina, 25, Moscow, Russia; Higher School of Economics National Research University, 101000, Myasnitskaya, 20, Moscow, Russia

Annotation. Finite state transducers extend the finite state automata to model functions on strings or lists. They may be used also as simple models of sequential reactive programs. These programs operate in the interaction with the environment permanently receiving data (requests) from it. At receiving a piece of data such program performs a sequence of actions. When certain control points are achieved a program outputs the current results of computation as a response. It is significant that different sequences of actions may yield the same result. Therefore, the basic actions of a program may be viewed as generating elements of some appropriate semigroup, and the result of computation may be regarded as the composition of actions performed by the program. This paper offers an alternative technique for the analysis of finite state transducers over semigroups. To check the equivalence of transducers u1 and 7T2 we associate with them a Labeled Transition Systems „ . Each path in this LTS represents all possible runs of u1 and 7T2 on the same input word. Every node of r„ „ keeps track of the states of u1 and 7T2 achieved at reading some input word and the deficiency of the output words computed so far. If both transducers reach their final states and the deficiency of their outputs is nonzero then this indicates that u1 and 7T2 produce different images for the same word, and, hence, they are not equivalent. The nodes of r„ „ that capture this effect are called rejecting nodes. Thus, the equivalence checking of u1 and 7T2 is reduced to checking the reachability of rejecting nodes in LTS „ . We show that one needs to analyze only a bounded fragment of „ to certify (un)reachability of rejecting nodes. The size of this fragment is polynomial of the size of 7T1 and 7T2 if both transducers are deterministic, and single-exponential if they are k-bounded. The same approach is applicable for checking k-valuedness of transducers over semigroups.

Keywords: reactive program; finite state transducer; semigroup; Labelled Transition System; equivalence checking; k-valuedness; decision procedure; complexity.

References

[1]. Aho A.V., Hopcroft J.E., Ullman J.D. The design and analysis of computer algorithms. Addison-Wesley, Reading, MA, 1974.

[2]. Aho A. V., Sethi R., Ullman J.D. Compilers: principles, techniques, and tools. Addison-Wesley, Reading, MA, 1986.

[3]. Alur R., Cerny P. Streaming transducers for algorithmic verification of single-pass list-processing programs. Proceedings of 38th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, 2011, P- 599-610.

[4]. Blattner M, Head T. Single-valued a-transducers. Journal of Computer and System Sciences, 1977, v. 15, p. 310-327.

[5]. Blattner M, Head T. The decidability of equivalence for deterministic finite transducers. Journal of Computer and System Sciences, 1979, v. 19, p. 45-49.

[6]. Beal M.-P., Carton O., Prieur C., Sakarovitch J. Squaring transducers: an efficient procedure for deciding functionality and sequentially. Theoretical Computer Science, 2003, v. 292.

[7]. Culik K., Karhumaki J. The equivalence of finite-valued transducers (on HDTOL languages) is decidable. Theoretical Computer Science, 1986, v. 47, p. 71-84.

[8]. Fischer P.C., Rosenberg A.L. Multi-tape one-way nonwriting automata. Journal of Computer and System Sciences, 1968, v. 2, p. 88-101.

[9]. Griffiths T. The unsolvability of the equivalence problem for £-free nondeterministic generalized machines. Journal of the ACM, 1968, v. 15, p.409-413.

[10]. Gurari, E., Ibarra, O. A note on finite-valued and finitely ambiguous transducers. Mathematical Systems Theory, 1983, v. 16, p. 61-66.

[11]. Ibarra O. The unsolvability of the equivalence problem for Efree NGSMs with unary input (output) alphabet and applications. SIAM Journal on Computing, 1978, v. 4.

[12]. Malcev, A. I. Uber die Einbettung von assoziativen Systemen. Gruppen, Rec. Math. (Mat. Sbornik) N.S., 1939, v. 6, p. 331-336.

[13]. Malcev, A. I. Uber die Einbettung von assoziativen Systemen. Gruppen. II, Rec. Math. (Mat. Sbornik) N.S., 1940, v. 8, p. 251-264.

[14]. Mohri M. Finite state transducers in language and speech processing. Computer Linguistics, 1997, v. 23, N 2.

[15]. Mohri M. Minimization algorithms for sequential transducers. Theoretical Computer Science, 2000, v. 234, p. 177-201.

[16]. Nerode A., Kohn W. Models for hybrid systems: automata, topology, controllability, observability. Cornell University, Technical Report 93-28, 1993, MIT Press, Cambridge.

[17]. Sakarovitch J., de Souza R. On the decomposition of k-valued rational relations. Proceedings of 25th International Symposium on Theoretical Aspects of Computer Science, 2008, p.621-632.

[18]. Sakarovitch J., de Souza R. On the decidability of bounded valuedness for transducers. Proceedings of the 33rd International Symposium on Mathematical Foundations of Computer Science, 2008, p. 588-600.

[19]. Schutzenberger M. P. Sur les relations rationnelles. Proceedings of Conference on Automata Theory and Formal Languages, 1975, p. 209-213.

[20]. de Souza R. On the decidability of the equivalence for k-valued transducers. Proceedings of 12th International Conference on Developments in Language Theory, 2008, p. 252-263.

[21]. Veanes M., Hooimeijer P., Livshits B., et al. Symbolic finite state transducers: algorithms and applications. Proceedings of the 39th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, 2012.

[22]. Weber A. On the valuedness of finite transducers. Acta Informática, 1989, v. 27, p. 749-780.

[23]. Weber A. Decomposing finite-valued transducers and deciding their equivalence. SIAM Journal on Computing, 1993, v. 22, p. 175-202.

[24]. Zakharov V.A. An efficient and unified approach to the decidability of equivalence of propositional program schemes. Proceedings of the 25th International Colloquium "Automata, Languages and Programming", 1998, p. 247-258.

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