Научная статья на тему 'К минимизации автоматов с таймаутами'

К минимизации автоматов с таймаутами Текст научной статьи по специальности «Математика»

CC BY
150
26
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОНЕЧНЫЕ АВТОМАТЫ / МИНИМИЗАЦИЯ / ТАЙМАУТЫ / ПРИВЕДЁННАЯ ФОРМА / MINIMAL (REDUCED) FORM / FSM MINIMIZATION / INPUT AND OUTPUT TIMEOUTS

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

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

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

On the minimization of timed Finite State Machines

This paper addresses the problem of minimizing a Finite State Machine (FSM) augmented with input and output timeouts, since almost all methods for deriving complete test suites are developed for reduced (minimal) timed machines, i.e., FSMs where every two states are not equivalent. If at some state no input is applied until the corresponding (input) timeout expires then the FSM can spontaneously move to another prescribed state. An output timeout describes the time that is necessary for executing a transition that is the number of time instances needed for producing an output after an input has been applied. A technique for minimizing such machines based on corresponding classical FSMs is proposed; it is also shown that differently from classical FSMs, an FSM with timeouts can have minimal forms which are not pair-wise isomorphic.

Текст научной работы на тему «К минимизации автоматов с таймаутами»

К минимизации автоматов с таймаутами

Твардовский Александр Сергеевич <[email protected]> Национальный исследовательский Томский Государственный университет, 634050, проспект Ленина, 36, Томск, Россия

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

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

1. Введение

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

2. Основные определения и обозначения

Автоматом с таймаутами или в данной работе временным автоматом называется пятёрка 5 = (5", /, О, /г& Дх), где / - входной алфавит, О - выходной алфавит, - конечное непустое множество состояний, /гх с х / х О / S / '/) - отношение переходов, I - множество целых неотрицательных чисел, определяющих число единиц времени между поступлением входного символа и выдачей выходного, А^: —> х (К и {оо}) - функция таймаута, определяющая для каждого состояния максимальное время ожидания входного символа, N - множество натуральных чисел. Иными словами, если в некотором состоянии автомата входной сигнал не поступает в течение определенного времени (таймаута), то автомат может изменить своё

77

состояние. Например, если АЛ(л) = (У, Т) и в состоянии 5 в течение Т единиц времени на автомат не было подано ни одного входного символа, то автомат переходит в состояние я'. После перехода в состояние я' отсчет времени начинается с 0. Если АЛ(л) = (5, оо), то автомат может ожидать входной символ в состоянии 5 бесконечно долго. Если в автомате есть переход (5, /, оь .V,. с!) и входной символ будет подан в состоянии 5 менее чем через Т единиц времени, то автомат перейдет в состояние .V, и через с1 единиц времени выдаст выходной символ. Автомат с таймаутами называется детерминированным, если в нём не может существовать двух кортежей вида (5, /, оь .V,. с/,). (5, /', о2, лч с12) е /?Л. в которых 0\ Ф о2, й\ Ф с/2 или 51 Ф л2. Автомат с таймаутами называется полностью определённым, если для любой пары (5, /) еХ х/, то есть для любого входного символа /, поступающего на вход автомата в состоянии 5, существует кортеж (5, /, о, я', ¿¡Г) е /?Л,

Временным входным символом называется пара (/, /), где / - символ входного алфавита, I - время поступления входного символа после перехода автомата в текущее состояние. Временным выходным символом называется пара (о, ¿¡Г), где о - символ выходного алфавита, с1 - число единиц времени между подачей входного символа и выдачей выходного символа. Последовательность временных входных символов (/ь ). (/2, ь) ••• ('„• 4) называется временной входной последовательностью', последовательность временных выходных символов (оь с1\), (о2, й^) ... (оп, с1п) называется временной выходной последовательностью. Для каждого состояния 5 автомата с таймаутами введём функцию Ите(я, I) = я', которая определяет, в каком состоянии 5' находится автомат через I тактов времени после перехода в состояние 5, при условии, что входной символ не был подан. Временная выходная последовательность, соответствующая временной входной

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

Состояния 5 и р двух временных автоматов эквивалентны, если выходные реакции автоматов в этих состояниях на каяедую временную входную последовательность совпадают. Полностью определенный

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

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

таймаут в состоянии 5 равен Т. то в классический автомат вводятся дополнительные состояния (5, 1), .... (5, Т - 1). Подобно [4], временной выходной символ (о, с!) соответствует тому, что выходной символ выдается через с/ единиц времени после поступления входного символа. Таким образом имеет место следующее утверждение.

Утверждение 1. Для временного автомата с таймаутами число состояний соответствующего конечного автомата равно сумме числа состояний, в которых таймаут равен <х>, с суммой таймаутов в состояниях, в которых таймаут не равен оо.

В нашем примере соответствующий конечный автомат (рис. 2) имеет 9 состояний. Как показано в [1], конечные автоматы, построенные для автоматов с таймаутами, эквивалентны, если и только если эквивалентны исходные временные автоматы. Для конечного автомата, соответствующего автомату с таймаутами, можем построить разбиение на эквивалентные состояния [5].

Теорема 2. Состояния ^ и л2 исходного автомата с таймаутами 5 эквивалентны, если и только если в соответствующем конечном автомате эквивалентными являются состояния (5Ь 0) и (л2. 0).

Доказательство. Пусть состояния ^ и л2 автомата с таймаутами 5 эквивалентны. Допустим, что состояния (5Ь 0) и (л2. 0) соответствующего конечного автомата не являются эквивалентными, т.е. для них существует различающая последовательность. Тогда по правилам построения найдётся различающая последовательность и для состояний .V, и л2. что противоречит утверждению, что состояния .V, и л2 эквивалентны.

Пусть состояния (5Ь 0) и (л2. 0) эквивалентны в построенном конечном автомате. Тогда по правилам построения, для любого í = 1, ...,;?, ... состояния ите(.\]. I) и [¡те(.\2. 0 являются эквивалентными; последнее означает эквивалентность состояний .V, и л2. ♦

Пример. Построим разбиение на эквивалентные состояния для автомата на рис. 1.

Ио(2)

Рис 2. Классический конечный автомат FSM(S), соответствующий автомату с

таймаутами на рис. 1.

Для этого рассмотрим соответствующий конечный автомат на рис. 2. Непосредственной проверкой можно убедиться, что для автомата на рис. 2 разбиение на эквивалентные состояния имеет следующий вид: {(я, 0), (/. 0)}, {(я, 1), (/; 1)}, {(¿>, 0)}, {(¿>, 1)}, {(¿>, 2)}, {(с, 0), (d, 0)}. Таким образом, эквивалентными состояниями в автомате с таймаутами на рис. 1 являются состояния а и/ cud.

3. Построение приведённой формы автомата с таймаутами

Алгоритм построения приведенной формы В полностью определённого детерминированного автомата с таймаутами S включает следующие шаги. Шаг 1: По исходному автомату с таймаутами S строится соответствующий классический конечный автомат FSM(S), для которого строится разбиение т множества состояний на эквивалентные состояния.

Шаг 2: Строим разбиение п состояний автомата S на эквивалентные состояния следующим образом: состояния .v, и л2. автомата S принадлежат одному блоку разбиения л, если и только если состояния (.v,. 0) и (л2. 0) принадлежат одному блоку разбиения т.

Шаг 3: Строится приведенная форма В автомата S. Входной и выходной алфавиты автомата В совпадают с таковыми для автомата S, состояния /ь. ..., bi соответствуют блокам В2, ..., Bj разбиения п. Множество переходов 80

автомата В формируем следующим образом: для состояний Ъ^ и />, существует кортеж (/>,. /', о, />,. с/) е /?,2. тогда и только тогда, когда существуют 5, е 5, и е £у, такие что кортеж (5„ /, о, 5,, ¿¡Г) е Для функции таймаута ,) = (Ьр Т) тогда и только тогда, когда Дя^,) = (зу, 7), si е Bi и ^ е и /' ф/

Утверждение 3. Пусть В - автомат, построенный для автомата Б по выше описанному алгоритму. Автомат В является детерминированным полностью определенным автоматом, и состояние bi автомата В эквивалентно состоянию 5 автомата Б, если и только если 5 е И,.

Доказательство. Автомат В является полностью и определенным автоматом, поскольку автомат Б обладает этими свойствами. Детерминированность автомата В следует из того факта, что любые два состояния я, У, принадлежащие одному блоку Д, являются эквивалентными (теорема 2). Покажем, что состояния 5 е В и Ь, соответствующее блоку В разбиения п эквивалентны. Для любого кортежа (л,. /', оь л2. с!\) е /?л, существует кортеж (/>|. /, 01, Ь2, (1\) е /?/;. т. е. реакции автоматов В и Б в состояниях /> и л на любой входной символ совпадают. Поскольку л2 е /К то для состояний л2 и />2. и для всех последующих их преемников по любому входному символу / можно провести аналогичные рассуждения. Кроме того, для любого АхС^) = (я^, Т) существует А,//),) = (й3, Т), где л2, е В3, т.е реакции автоматов В и Б в состояниях Ь и 5 на любую временную входную последовательность совпадают. Покажем теперь, что состояния л, е В^ и />,. где / Ф ], не эквивалентны. Состояние е И, эквивалентно состоянию bi по первой части доказательства. Состояния .V, и не эквивалентны, так как находятся в различных блоках разбиения п. Таким образом, состояния л, и не эквивалентны. ♦

Следствие 1. Автомат В, построенный на Шаге 3, есть приведённый автомат. Следствие 2. Автомат В, построенный на Шаге 3, эквивалентен автомату Б. Таким образом, на основании следствий 1 и 2 справедлива следующая теорема.

Теорема 4. Пусть Б - полностью определённый детерминированный автомат с таймаутами. Полностью определённый детерминированный автомат В, построенный по выше описанному алгоритму, является приведённой формой автомата Б.

4. Свойства приведённой формы автомата с таймаутами

В работе [4] показывается, что для полностью определенных детерминированных автоматов с временными ограничениями приведенная форма единственна с точностью до изоморфизма. К сожалению, это свойство не выполняется для автоматов с таймаутами. В [3] было показано, что для инициального временного автомата с таймаутами могут существовать несколько попарно неизоморфных приведенных форм. Приведенные формы

могут оказаться неизоморфными, поскольку некоторые цепочки переходов по таймаутам могут быть объединены в один переход. Изменяя немного пример из работы [3], можно сделать такое же заключение и для неинициальных автоматов (рис 3). В частности, в состоянии р отсутствует переход по таймауту 2, который есть в состоянии а другой приведенной формы этого же автомата.

5

Рис.3. Два эквивалентных приведённых, но неизоморфных автомата с таймаутами.

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

Утверждение 5. Число состояний двух эквивалентных приведённых автоматов с таймаутами совпадает.

Доказательство утверждения следует из того факта, что каждому состоянию одного автомата соответствует эквивалентное состояние другого автомата, и два любых состояния в одном автомате не являются эквивалентными. ♦

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

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

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

В заключение автор выражает благодарность профессору Н. В. Евтушенко за интерес к работе и полезные дискуссии.

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

[1]. Bresolin D., El-Fakih К., Villa T., Yevtushenko N. Timed Finite State Machines: Equivalence checking and expressive power. Intern Conf. CANDALF'2014, pp. 203-216.

[2]. Кондратьева O.B. Разработка методов синтеза и анализа композиций временных автоматов: магистерская диссертация на соискание степени магистра радиофизики. Томск, 2012. 72 с.

[3]. Кондратьева. О.В. Минимизация временных автоматов с таймаутами // Материалы конференции "Новые информационные технологии в исследовании сложных структур". - Томск : Издательский дом Томского государственного университета, 2014. - 132 с.

[4]. Твардовский А., Евтушенко Н., К минимизации автоматов с временными ограничениями. "Вестник ТГУ. Управление, вычислительная техника и информатика". - Томск : Издательский дом Томского государственного университета, № 4, 2014. 77-83 с.

[5]. Gill A. Introduction to the Theory of Finite-State Machines. M.: Nauka, 1966. 272 p.

On the minimization of timed Finite State

Machines

Alexandre Tvardovskii <[email protected]> Tomsk State University, 634050, Russia, Tomsk, av. Lenina, 36

Abstract. This paper addresses the problem of minimizing a Finite State Machine (FSM) augmented with input and output timeouts, since almost all methods for deriving complete test suites are developed for reduced (minimal) timed machines, i.e., FSMs where every two states are not equivalent. If at some state no input is applied until the corresponding (input) timeout expires then the FSM can spontaneously move to another prescribed state. An output timeout describes the time that is necessary for executing a transition that is the number of time instances needed for producing an output after an input has been applied. A technique for minimizing such machines based on corresponding classical FSMs is proposed; it is also shown that differently from classical FSMs, an FSM with timeouts can have minimal forms which are not pair-wise isomorphic.

Keywords: FSM minimization, input and output timeouts, minimal (reduced) form.

References

[1]. Bresolin D., El-Fakih K., Villa T., Yevtushenko N. Timed Finite State Machines: Equivalence checking and expressive power. Intern Conf. CANDALF'2014, pp. 203-216.

[2]. Kondratyeva O. Razrabotka metodov sinteza i analiza kompozitsiy vremennykh avtomatov : magisterskaya dissertatsiya na soiskanie stepeni magistra radiofiziki. Tomsk, 2012. 72 p.

[3]. Kondratyeva O. Minimizatsiya vremennykh avtomatov s taymautami // Materialy konferentsii " Novye informatsionnye tekhnologii v issledovanii slozhnykh struktur ". -Tomsk: Izdatel'skiy dom Tomskogo gosudarstvennogo universiteta , 2014. 132 p.

[4]. Tvardovskiy A., Yevtushenko N. Minimizing timed Finite State Machines. Tomsk State University Journal of control and computer science. - Tomsk: Izdatel'skiy dom Tomskogo gosudarstvennogo universiteta , № 4, 2014, pp. 77-83.

[5]. Gill A. Introduction to the Theory of Finite-State Machines. M.: Nauka, 1966,. 272 p.

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