Научная статья на тему 'Параллельная композиция конечных автоматов с таймаутами'

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

CC BY
570
173
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДЕТЕРМИНИРОВАННЫЙ ВРЕМЕННОЙ АВТОМАТ / НЕДЕТЕРМИНИРОВАННЫЙ ВРЕМЕННОЙ АВТОМАТ / ПАРАЛЛЕЛЬНАЯ КОМПОЗИЦИЯ / FINITE STATE MACHINE WITH TIMEOUTS (TFSM) / DETERMINISTIC TFSM / NONDETERMINISTIC TFSM / PARALLEL COMPOSITION

Аннотация научной статьи по математике, автор научной работы — Кондратьева Ольга Викторовна, Евтушенко Нина Владимировна, Кавалли Ана Роза

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

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

Parallel composition of nondeterministic Finite State Machines with Timeouts

The problem of describing the behavior of communicating discrete event systems arises in a number of applications. Many discrete systems can be considered as systems transforming input sequences of actions in one alphabet into output sequences in another alphabet. Often for analysis and synthesis of such systems it is important to take into account time aspects of their behavior, and hence, develop appropriate models. In this paper, we consider the composition of discrete event systems interacting in an asynchronous (parallel) mode taking into account their timeout properties. Finite state models are widely used for discrete event system synthesis and analysis, and in this paper, we use the notion of a Finite State Machine (FSM) with timeouts when describing the system behavior. A Finite State Machine with timeouts, or simply a Timed Finite State Machine (TFSM) throughout the paper, is an initialized FSM augmented with an input timeout function and an output timeout function. The input timeout function specifies the maximal time of waiting for an input for each state, and the next state where the TFSM moves to if no input has been applied before the timeout expires. The output timeout function (often referred to as an output delay function) specifies the number of time instances needed for the TFSM to process an applied input and produce a corresponding output. The set of traces of the TFSM is represented as that of a proper deterministic finite automaton in a following way: a corresponding automaton Aut(S) accepts a trace a = l^lijl^ o 1... 1 tmi m1 kmo m ],ifandonly if p = 0 or p = 1 and (i b t 1)/{o 1, k{)... (i m, t m)/(o m, k m) is a time trace of the given TFSM S. To derive such automaton, each TFSM transition is unfolded into a chain of consecutive transitions and there is a corresponding chain of transitions between an input and output symbols labeled by a special symbol 1 (which represents an action "to wait for one time unit") according to the timeout functions. In the parallel composition, the components communicate in a dialogue mode and as usual, Finite State Machines communicate under the assumption of a "slow environment". In other words, the next input is applied only after the composition has produced an output to the previous input. The parallel composition of two TFSMs is defined through the operations over corresponding finite automata: given the component TFSMs S and P, the composition TFSM С = S $ P is the machine that has the corresponding automaton Aut(С) = [Aut(S) $ Aut(P)] n Aut(T IO), where T IO = [(1) I(1) O] (1) represents the language containing all the TFSM languages (in other words, the language accepted by the union of all the corresponding automata). The set of deterministic TFSMs is shown to be closed under parallel composition, i.e., the composition of deterministic component TFSMs is a deterministic TFSM. However, for nondeterministic component TFSMs the composition behavior cannot be described by a TFSM where there is a unique output timeout for each transition. In order to describe the behavior of the composition of nondeterministic component TFSMs it is necessary to take into account that for some transitions, the set of allowed output delays is not a singleton but possibly, an infinite set of allowed delays. Correspondingly, we extend the definition of the output delay function, assuming that the set of allowed output delays is the set (possibly infinite) of corresponding values of a finite set of linear functions described as {b + k-t | b, k e {0} и N}. We show that under such extension the set of TFSMs is closed under parallel composition, and therefore, sufficient to describe communication of the component TFSMs whether they are deterministic or nondeter-ministic. The obtained results can be used in a number of applications, in particular, when solving equations over TFSMs, or testing the composition and its components.

Текст научной работы на тему «Параллельная композиция конечных автоматов с таймаутами»

ВЕСТНИК ТОМСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА

2014 Управление, вычислительная техника и информатика № 2 (27)

ДИСКРЕТНЫЕ ФУНКЦИИ И АВТОМАТЫ

УДК 519.713

О.В. Кондратьева, Н.В. Евтушенко, А.Р. Кавалли

ПАРАЛЛЕЛЬНАЯ КОМПОЗИЦИЯ КОНЕЧНЫХ АВТОМАТОВ С ТАЙМАУТАМИ

Работа выполнена при частичной финансовой поддержке гранта РФФИ мол а (№ 14-08-31640)

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

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

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

1. Временной автомат с таймаутами

Через N обозначается множество натуральных чисел. Временным автоматом [1], который далее будем называть просто автоматом, называется конечный автомат с таймаутами, т.е. семёрка S = (£, I, О, s0, А£, Д, с£), где пятёрка (£, I, О, s0, А£) есть классический конечный автомат, в котором S - конечное непустое множество состояний с выделенным начальным состоянием 50, I и О - конечные входной и выходной алфавиты соответственно, с S х I х S х О - отношение переходов. Кроме того, функция задержки входного символа Д£: £ ^ £ х N и {да}) определяет для каждого состояния максимальное время ожидания входного символа (входной таймаут), функция задержки выходного символа с£: А£ ^ ({0} и N определяет для каждого перехода необходимый интервал времени для выполнения соответствующего перехода и выработки выходного символа в ответ на поступившее входное воздействие (выходной таймаут).

Таймаут для входного символа означает, что если в некотором состоянии автомата входной сигнал не поступает в течение определенного времени, то автомат может изменить своё состояние, не

производя выходного символа. Отметим, что если для некоторого состояния 8 имеет место Д£ (?) = (?', да), то 5 = у', и автомат в этом состоянии может находиться бесконечно долго в ожидании входного воздействия.

Каждому временному автомату можно поставить в соответствие внутреннюю целочисленную переменную-таймер, отсчитывающую количество единиц времени, прошедших после достижения автоматом текущего состояния или после получения автоматом последнего входного символа. Сброс таймера происходит каждый раз при получении автоматом входного символа и при смене состояния автомата как в результате перехода под действием входного символа с выдачей выходного символа, так и в результате перехода по таймауту. Отметим, что, по определению временного автомата, входной символ может поступить на автомат в любой действительный момент времени; соответственно будет вычислено следующее состояние автомата и выдаваемый выходной символ. При этом, в силу того что таймауты могут иметь только целочисленные значения, любой входной символ, поступивший на автомат в некоторый момент времени в интервале [п, п + 1), п е {0} и N, обрабатывается автоматом так же, как входной символ, поступивший в момент времени п.

Временной автомат £ называется детерминированным, если для любых у е £ и г е I существует не более одной пары (у2, о) е £ х О, такой что (?1, г, у2, о) е А£, в противном случае автомат называется недетерминированным. Автомат называется полностью определенным, если для любых у е £ и г е I существует пара (у2, о) е £ х О, такая что (5Ь г, у2, о) е А£, в противном случае автомат называется частичным.

Для описания поведения временного автомата с учетом временных аспектов вводятся понятия временного входного символа и временного выходного символа. Временной входной символ (г, 0 е I х ({0} и N показывает, что входной символ г подается в тот момент, когда значение временной переменной равно t. Временной выходной символ (о, к) е О х ({0} и N показывает, что символ о выдается автоматом через к единиц времени после получения входного символа. Для того чтобы вычислить реакцию автомата на временной входной символ (г, 0, необходимо сначала определить, в каком состоянии будет находиться автомат в момент подачи входного символа г [1]. Пусть символ (г, 0 поступает на автомат в состоянии 5. Рассмотрим последовательность переходов по таймаутам Д£ (у) = (?1, Т\), Д£ (?1) = (?2, Т2), ..., Д£ (ум) = (ур, Тр), такую что Т + Т2 + ... + Т— < I, но Т + Т2 + ... + Тр > t. В этом случае входной символ г появится на входе автомата после того, как автомат перейдет в состояние ур. Если Д£ (?) = (?, да), то 5р = 5 при любом t. Таким образом, в результате подачи символа (г, 0 в состоянии 5 автомат произведет выходной символ о через к единиц времени, если и только если (ур, г, у', о) е А£ и с£ ((ур, г, у', о)) = к. Таким образом, выходной реакцией автомата £ в состоянии 5 на входной символ (г, 0 является символ (о, к), и после выдачи этого символа автомат перейдет в состояние у'.

Рассмотрим временную входную последовательность а = (гь ^)(г'2, ^...(¡п, tn) и временную выходную последовательность в = (оь к\)(о2, к2)...(оп, кп). Если в автомате £ существует такая последовательность переходов, что при подаче в состоянии 5 последовательности а автомат может произвести в ответ последовательность в, то пара ав называется временной вход-выходной последовательностью или временной трассой автомата £ в состоянии 5. Множество всех временных трасс автомата £ в состоянии 5 обозначается ^асе£(У). Два состояния 5 и р полностью определенных временных автоматов £ и Р называются эквивалентными, если множества трасс в этих состояниях совпадают, т.е. ^асе£(У) = ^асеР(р). Автоматы £ и Р называются эквивалентными, если их начальные состояния эквивалентны. Автомат £ есть редукция автомата Р, обозначение £ < Р, если ^асе^о) с ^асеР(р0).

Множество временных трасс автомата £ = (£, I, О, у0, А£, Д£, с£) можно представить как язык полуавтомата Лш£ = (£ и £Ти (£ х I) и £к, Iи Ои{1}, у0, 5£, £ и £Т), в котором специальный символ 1 ё I и О описывает ожидание автоматом входного символа в течение единицы времени и £ и £Т есть множество финальных состояний полуавтомата. При построении полуавтомата Лн^£) используются следующие правила:

1. £Т с £ х N £к с (£ х I) х N.

2. Для каждого 5 е £ в полуавтомате существуют следующие переходы:

- если Д$ (5) = (5, да), то (5, 1, 5) е 5$;

- если Д$ (5) = (5', 1), то (5, 1, 5') е 5$;

- если Д$ (5) = (5', ^, I > 1, то (5, у) е $т, 1 < j < I ; (5, 1, (5, 1)) е 5* ((5, I - 1), 1, 5') е 5$ и для

всех 1 < у < 7 имеет место ((5, у - 1), 1, (5, у)) е 5$;

- кроме того, для всех 1 <у < 7 выполняется ((5, у), 7, (5, 7)) е 5$.

3. Для каждого перехода автомата (5, 7, 5', о) е 1$ с задержкой выходного символа на к единиц, ст$((5, 7, 5', о)) = к, имеет место (5, 7, у) е $К и полуавтомат имеет переходы (5, 7, (5, 7)) е 5 и

((5, 7), 1, (5, 7, 1)) е 5$; кроме того, для всех 1 < у < к справедливо ((5, 7, у), 1, (5, 7, у + 1)) е 5$ и

((5, 7, к), о, 5') е 5$.

Иными словами, каждый переход автомата «растягивается» в цепочку переходов, в которой переходы по входному и выходному символу разделены соответствующим числом переходов по символу 1. Переходы по таймауту представляются цепочкой переходов по символу 1 через «копии» начального состояния цепочки. Так как, по определению, состояния из множества $Т являются финальными, язык полуавтомата содержит не только временные трассы соответствующего автомата, но и все их продолжения словами из множества (1)*, которые отмечают, что при ожидании входного символа временная переменная увеличивает свое значение, и, возможно, автомат осуществляет переходы между состояниями согласно функции задержки входного символа. При построении временного автомата по соответствующему полуавтомату каждая цепочка переходов, начинающаяся с перехода, помеченного входным символом, и завершающаяся переходом, помеченным выходным символом, «сворачивается» в переход по соответствующей входо-выходной паре с задержкой выходного символа, равной количеству переходов по символу 1 между входным и выходным символами. Переходы по символу 1 между финальными состояниями полуавтомата соответствуют таймаутам временного автомата. Приведён пример построения полуавтомата (рис. 1, б) по заданному временному автомату (рис. 1, а).

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

временная трасса автомата $.

Множество последовательностей действий, распознаваемых полуавтоматом Ан7($), будем называть развернутым по времени языком временного автомата $ и обозначать £($).

Следствие. Полностью определенные временные автоматы $ и Р эквивалентны, если и только если эквивалентны соответствующие им полуавтоматы Ан7($) и Ан7(Р), т.е. £($) = -ЦР). Автомат $ есть редукция автомата Р, если и только если Ан7($) есть редукция Ан7(Р), т.е. £($) с Ь(Р).

а

б

Рис. 1. Пример временного автомата (а) и соответствующего ему полуавтомата (б)

Утверждение 1. Полуавтомат Ан7($) распознает последовательность

а = 11 711к ог ... 1т 7т 1кт от Р, если и только если р = 0 или р = 1 и (71, ¿1).(оь к!) ... (7т, 7т).(от, кт) есть

По определению, язык Ь(5) является подмножеством языка Т1г0 = [(1)*1(1)*0]*(1)*, который далее определяется как язык полуавтомата Ап^Т^ц). Язык Ь($) является ((1)*и (1)*1(1)*0)-префикс-замкнутым языком, т.е. для любых последовательностей а е Т1г0 и Ь е ((1)*^ (1)*1(1)*0) справедливо: если аЬ е Ь, то а е Ь. Заметим, однако, что язык Т10 не является языком временного автомата, так как допускает для входных символов более одного значения задержки выходного символа. Соответствующее расширение модели временного автомата, которое позволяет описывать системы, в которых выходные символы могут вырабатываться с различными задержками, оказывается необходимым для описания композиции недетерминированных компонент и рассматривается в разделе 3.

2. Параллельная композиция детерминированных временных автоматов

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

и ь О |

/1 к * '1 >2

с о

: Р о «“¡Г" г

10г , Оу

Рис. 2. Схема параллельной композиции

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

По одному из внешних каналов 11 или 12 на систему подается внешний входной символ, после чего производится «сброс» временной переменной композиции. В соответствующей компоненте полученный входной символ обрабатывается, при этом происходит «сброс» временной переменной этой компоненты (временная переменная другой компоненты сохраняет свое значение), и через некоторое время компонента может либо выдать внешний выходной символ, либо отправить внутренний (выходной) символ на другую компоненту. В первом случае взаимодействие заканчивается, и система готова принять следующий входной символ. Если же компонента произвела внутренний выходной сигнал, т.е. на другую компоненту поступил внутренний (входной) символ, то после получения компонентой этого символа производится «сброс» таймеров обеих компонент (но не композиции) и полученный внутренний (входной) символ обрабатывается другой компонентой. В результате обработки внутреннего входного символа компонента может либо выдать внешний выходной символ, либо отправить внутренний (выходной) символ первой компоненте. Взаимодействие продолжается до тех пор, пока одна из компонент не выработает внешний выходной символ, наблюдаемый на одном из каналов 01 или 02. При этом происходит «сброс» временной переменной композиции, однако значе-

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

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

Рассмотрим полуавтомат А = (А, X, а0, 8А, ЕЛ), в котором X = и и V, и п V = 0. Полуавтомат, который является ограничением полуавтомата А на алфавит V, обозначение А^, может быть построен заменой каждого перехода (^1, х, s2), такого что х £ V, переходом (5Ь в, 52), где в означает пустой символ, с последующей детерминизацией полуавтомата с в-переходами по известной процедуре [3]. Полуавтомат, представляющий расширение полуавтомата В = (В, и, Ь0, 5В, FB) на алфавит V, обозначение В^, может быть построен добавлением петли (Ь, V, Ь) для всех V е V в каждом состоянии Ь е В [Там же]. Рассмотрим полуавтоматы А = (А, Xи У, а0, 8А, FA) и В = (В, У и 2, Ь0, 8В, FB), такие что алфавиты X, У, 2 попарно не пересекаются. Параллельной композицией полуавтоматов А и В называется полуавтомат С = (С, Xи 2, с0, 8С, Fc), такой что С = [Ат п В^х]\\хи2 (обозначение С = А О В).

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

Иными словами, пусть заданы полностью определенные детерминированные временные автоматы £ и Р. Тогда временной автомат С, соответствующий полуавтомату Аи^(С) = [Аи^(£) О Аи^(Р)] п Аи^(Т10), есть параллельная композиция автоматов Б и Р.

Язык Ь(С) полуавтомата Аи^(С) является языком некоторого временного автомата: язык [Ь(Б) О Ь(Р)] п Т1,0 полуавтомата [Ам^(5) О Аи(Р)] п Аи((Т10) является префик-замкнутым как параллельная композиция префикс-замкнутых языков [2], и для детерминированных автоматов-компонент пересечение с Т1,0 удостоверяет, что за каждым внешним входным символом следует после некоторой задержки (цепочки переходов по символу 1) один и только один внешний выходной символ, и, таким образом, определение параллельной композиции корректно. Доказательство соответствия этого определения предложенному выше словарному описанию работы параллельной композиции временных автоматов не приводится ввиду ограниченного объема статьи.

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

обычно устанавливается максимальное время ожидания внешнего выходного символа от композиции, при превышении которого делается вывод о нежелательном поведении композиции [3]. Для временных автоматов используемые временные функции позволяют определить более точно время ожидания выходного символа для каждого перехода.

Утверждение 2. Композиция детерминированных временных автоматов есть детерминированный временной автомат.

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

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

В общем случае для недетерминированных временных автоматов Б и Р для полуавтомата [Аи/(Б) О Аи/(Р)] п Аи((Т10) не существует соответствующего временного автомата, так как определенный выше автомат не допускает недетерминизма по времени, в то время как в соответствующем полуавтомате возможны циклы между переходами по входному и выходному символам, в которых все переходы помечены символом 1. Чтобы описать композицию недетерминированных автоматов, мы расширяем понятие функции задержки выходного символа во временном автомате.

Далее под временным автоматом понимается семёрка Б = (Б, 1, О, 50, ХБ, ЛБ, аБ), где (Б, 1, О, 50, ХБ) есть конечный автомат, ЛБ: Б ^ Б х (Ии{<х>}) - функция задержки входного символа и

оБ: ХБ ^ 2(м и{0}) \ 0 - функция задержки выходного символа, определяющая для каждого перехода непустое, возможно бесконечное множество допустимых моментов времени, в которые автоматом может быть произведен выходной символ.

В данной работе мы предполагаем, что такое множество задано как множество значений конечного набора линейных функций, т.е. множество целочисленных функций вида {{Ь + к-/ | Ь, к е {0} и И}. Рассмотрим линейную функцию /(/) = Ь + к-/. Функции /(/) можно поставить в соответствие детерминированный полуавтомат с однобуквенным алфавитом, такой что полуавтомат принимает слово длины I, если и только если I принадлежит множеству значений функции/(/). Для однобуквенного алфавита {1} язык такого полуавтомата может быть задан выражением 1Ь(1к)*. Набор линейных функций {/¡(0,/2(0, •••,/П(0}, соответственно, может быть представлен объединением соответствующих полуавтоматов. Иными словами, значения функции сБ задержки выходного символа могут быть представлены цепочками из символа 1 соответствующей длины в детерминированном полуавтомате. Таким образом, построение полуавтомата для такого недетерминированного по выходным задержкам автомата осуществляется по правилам, аналогичным введенным в разделе 2, с той лишь разницей, что значения функции сБ «раскрываются» не в цепочку переходов, а в полуавтомат с переходами по символу 1. Утверждение 1, сформулированное для детерминированных по выходным задержкам автоматов, также будет справедливо и для расширенной модели временного автомата с таймаутами.

У

а б

Рис. 3. Недетерминированный автомат Б (а) и соответствующий ему полуавтомат Аи/(Б) (б)

Пример построения полуавтомата, соответствующего недетерминированному по времени автомату, приведен на рис. 3: при подаче входного символа х выходной символ у может появиться на выходе автомат через 1, 2, 4, ..., 2к единиц времени.

4. Композиция недетерминированных временных автоматов

Введенное расширение временного автомата позволяет определить параллельную композицию для недетерминированных компонент, причем недетерминированных как по входным символам, так и по задержкам выходного символа. Таким образом, в общем случае параллельной композицией временных автоматов Б и Р называется временной автомат С, соответствующий полуавтомату Лш(С) = \Лш(Б) 0 Лм(Р)] п Лы^Тю).

Утверждение 3. Множество временных автоматов с таймаутами замкнуто относительно операции параллельной композиции.

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

В качестве примера рассмотрим построение композиции недетерминированного временного автомата Б и детерминированного автомата Р (рис. 4). На рис. 5 приведены ограничение пересечения расширенных полуавтоматов Лш(Б) и Лш(Р) на внешние алфавиты композиции и соответствующий недетерминированный временной автомат С, являющийся параллельной композицией автоматов Б и Р.

а \)и/Г(2)

Рис. 4. Временные автоматы Б (а) и Р (б)

Рис. 5. Полуавтомат \ЛмГ(Б)^{,-, у} п Ли^Р)]^,-, у, 1} (а) и временной автомат С - композиция автоматов Б и Р (б)

б

а

б

а

Заключение

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

ЛИТЕРАТУРА

1. Zhigulin M., Yevtushenko N., Maag S., Cavalli A.R. FSM-based test derivation strategies for systems with time-outs // Proceedings

of the international conference QSIC. 2011. P. 141-149.

2. Villa T., Yevtushenko N., Brayton R.K., Mishchenko A., Petrenko A., Sangiovanni Vincentelli A.L. The unknown component prob-

lem: theory and applications. Springer, 2012. 311 p.

3. Евтушенко Н.В., Петренко А.Ф., Ветрова М.В. Недетерминированные автоматы: анализ и синтез : учеб. пособие. Ч. 1:

Отношения и операции. Томск : Томский государственный университет, 2006. 142 с.

Кондратьева Ольга Викторовна. E-mail: olga.kondratyeva@telecom-sudparis.eu

Евтушенко Нина Владимировна, д-р техн. наук, профессор. E-mail: ninayevtushenko@yahoo.com

Томский государственный университет

Кавалли Ана Роза, PhD. Prof. E-mail: ana.cavalli@telecom-sudparis.eu

Университет Телеком Южный Париж, Франция Поступила в редакцию 1 февраля 2014 г.

Kondratyeva Olga V., Yevtushenko Nina V. (Tomsk State University, Tomsk, Russian Federation), Cavalli Ana R. (Telecom SudParis, Paris, France).

Parallel composition of nondeterministic Finite State Machines with Timeouts.

Keywords: Finite State Machine with Timeouts (TFSM); deterministic TFSM; nondeterministic TFSM; parallel composition.

The problem of describing the behavior of communicating discrete event systems arises in a number of applications. Many discrete systems can be considered as systems transforming input sequences of actions in one alphabet into output sequences in another alphabet. Often for analysis and synthesis of such systems it is important to take into account time aspects of their behavior, and hence, develop appropriate models. In this paper, we consider the composition of discrete event systems interacting in an asynchronous (parallel) mode taking into account their timeout properties. Finite state models are widely used for discrete event system synthesis and analysis, and in this paper, we use the notion of a Finite State Machine (FSM) with timeouts when describing the system behavior. A Finite State Machine with timeouts, or simply a Timed Finite State Machine (TFSM) throughout the paper, is an initialized FSM augmented with an input timeout function and an output timeout function. The input timeout function specifies the maximal time of waiting for an input for each state, and the next state where the TFSM moves to if no input has been applied before the timeout expires. The output timeout function (often referred to as an output delay function) specifies the number of time instances needed for the TFSM to process an applied input and produce a corresponding output. The set of traces of the TFSM is represented as that of a proper deterministic finite automaton in a following way: a corresponding automaton Aut(S) accepts a trace

a = 11 [/j1k1 o1 ... 1tm im1km om,if andonly ifp = 0 orp = 1 and (ib t1)/{o1, k1) ... (im, tm)/(om, km) is a time trace of the given TFSM

S. To derive such automaton, each TFSM transition is unfolded into a chain of consecutive transitions and there is a corresponding chain of transitions between an input and output symbols labeled by a special symbol 1 (which represents an action “to wait for one time unit”) according to the timeout functions. In the parallel composition, the components communicate in a dialogue mode and as usual, Finite State Machines communicate under the assumption of a “slow environment”. In other words, the next input is applied only after the composition has produced an output to the previous input. The parallel composition of two TFSMs is defined through the operations over corresponding finite automata: given the component TFSMs S and P, the composition TFSM С = S $ P is the machine that has the corresponding automaton Aut(С) = [Aut(S) $ Aut(P)] n Aui(TIO), where TIO = [(1)*I(1)*O]*(1)* represents the language containing all the TFSM languages (in other words, the language accepted by the union of all the corresponding automata). The set of deterministic TFSMs is shown to be closed under parallel composition, i.e., the composition of deterministic

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

component TFSMs is a deterministic TFSM. However, for nondeterministic component TFSMs the composition behavior cannot be described by a TFSM where there is a unique output timeout for each transition. In order to describe the behavior of the composition of nondeterministic component TFSMs it is necessary to take into account that for some transitions, the set of allowed output delays is not a singleton but possibly, an infinite set of allowed delays. Correspondingly, we extend the definition of the output delay function, assuming that the set of allowed output delays is the set (possibly infinite) of corresponding values of a finite set of linear functions described as {b + k-t | b, k є {0} и N}. We show that under such extension the set of TFSMs is closed under parallel composition, and therefore, sufficient to describe communication of the component TFSMs whether they are deterministic or nondeter-ministic. The obtained results can be used in a number of applications, in particular, when solving equations over TFSMs, or testing the composition and its components.

REFERENCES

1. Zhigulin M., Yevtushenko N., Maag S., Cavalli A.R. FSM-based test derivation strategies for systems with time-outs. Proceedings

of the international conference QSIC, 2011, pp. 141-149.

2. Villa T., Yevtushenko N., Brayton R.K., Mishchenko A., Petrenko A., Sangiovanni Vincentelli A.L. The unknown component problem: theory and applications. Springer, 2012. 311 p.

3. Yevtushenko N.V., Petrenko A.F., Vetrova M.V. Nedeterminirovannye avtomaty: analiz i sintez. Ch. 1: Otnosheniya i operatsii

[Nondeterministic automata: analysis and synthesis. Part 1. Relations and operations]. Tomsk: Tomsk State University Publ., 2006. 142 p.

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