85916 (Модификация метода построения тестов для конечных автоматов относительно неразделимости)

2016-07-30СтудИзба

Описание файла

Документ из архива "Модификация метода построения тестов для конечных автоматов относительно неразделимости", который расположен в категории "". Всё это находится в предмете "математика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "математика" в общих файлах.

Онлайн просмотр документа "85916"

Текст из документа "85916"

  1. Модификация метода построения тестов для конечных автоматов относительно неразделимости

2010

  1. ВВЕДЕНИЕ

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

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

  2. 1.1 Конечные автоматы и отношения между ними

Автоматом называется пятерка A = (S, I, O, h, s1), где S множество состояний с выделенным начальным состоянием s1, I и O соответственно входной и выходной алфавиты, h S I S O отношение переходов‑выходов. Элементами множества h являются четверки вида (s, i, s, o), называемые переходами; при этом говорят, что автомат может перейти из состояния s S под действием входного символа i I в состояние s S с выдачей выходного символа o O, если четверка (s, i, s, o) содержится в h.

В случае, когда каждой паре вход-состояние соответствует не более одного перехода, автомат называется детерминированным, а в противном случае – недетерминированным (нд-автомат).

Рисунок 1 – Недетерминированный автомат A (а) и детерминированный автомат B (b)

Обозначим out(s, ) = {: sS [(s, , s, ) h]}, т. е. out(s, ) есть множество выходных реакций автомата в состоянии s на входную последовательность .

Состояние s называется i-преемником состояния s, если существует такой выходной символ o O, что четверка (s, i, s, o) содержится в h. Множество состояний M S называется i-преемником множества состояний M S, если M есть множество всех i-преемников всех состояний множества M.

Если для любых (s, i, o) S I O в нд-автомате A существует не более одного перехода из состояния s под действием входного символа i с выходным символом o, то говорят, что нд-автомат A является наблюдаемым. Если для каждой пары (s, i) S I существует хотя бы одна пара (s, o) S O, такая что (s, i, s, o) h, то нд-автомат A называется полностью определенным. В противном случае автомат называется частично определенным или частичным.

Автомат A = (S, I, O, h, s1) называется инициальным, если в множестве состояний S выделено начальное состояние s1.

Говорят, что состояние s' достижимо из состояния s в автомате A, если существует входная последовательность, которая переводит автомат A из состояния s в состояние s'. Автомат называется связным, если любое его состояние достижимо из начального состояния[3].

Пусть A = (S, I, O, h, s1), B = (T, I, O, g, t1) – полностью определенные автоматы. Автомат B называется подавтоматом автомата A, если T S, t1 = s1 и g h. Пересечением автоматов A = (S, I, O, h, s1) и B = (T, I, O, g, t1) (обозначение A B), назовем максимальный связный подавтомат инициального автомата (ST, I, O, H, s1t1), в котором отношение переходов H определено следующим образом: (st, i, st, o) H [(s, i, s, o) h (t, i, t, o) g]. Пересечение автоматов описывает общую часть поведения автоматов A и B и используется для построения входных последовательностей, различающих эти автоматы.

На рисунке 2 представлены автоматы A, B.

A

1

2

3

4

a

2/1

3/0

2/0

2/0

4/1

3/1

b

1/0

2/1

3/0

2/1

B

1

2

3

4

a

2/0

4/1

2/0

2/1

1/0

1/1

b

1/0

2/1

3/0

2/1

Рисунок 2 – Автоматы A, B

На рисунке 3 представлен автомат AB.

AB

1,1

3,2

2,2

2,4

a

3,2/0

2,4/1

2,2/0

2,2/0

b

1,1/0

2,2/1

2,2/1

Рисунок 3 – Автомат AB

При тестировании проверяются различные отношения соответствия между эталонным и проверяемым автоматами.

Пусть A и B – полностью определенные автоматы. Говорят, что состояние s автомата A и состояние t автомата B эквивалентны (обозначение: s t), если I* [ out(s, ) = out(t, ) ]. Иными словами, множество реакций автомата A в состоянии s на любую входную последовательность α совпадает с множеством реакций автомата B в состоянии t на данную входную последовательность α. В противном случае, состояния s и t не эквивалентны [2].

Автоматы A и B называются эквивалентными (обозначение: A B), если эквивалентны их начальные состояния, т.е. s1 t1. В противном случае, автоматы A и B не эквивалентны. Таким образом, по определению, два автомата эквивалентны, если и только если множества их выходных реакций на каждую входную последовательность совпадают.

Состояние t автомата B называется редукцией состояния s автомата A (обозначение: t s), если I* [ out(t, ) out(s, ) ], т.е. если для любой входной последовательности множество выходных последовательностей автомата B содержится во множестве выходных последовательностей автомата A. Если t1 s1, то автомат B называется редукцией автомата A.

Состояние s автомата A и состояние t автомата B неразделимы (обозначение: s ~ t), если I* [ out(s, ) out(t, ) ]. Если I* [ out(s, ) out(t, ) = ], то состояния s и t разделимы по (обозначение: s t), или просто разделимы (обозначение: s t). Автоматы A и B неразделимы, если s1 ~ t1. Если s1 t1, то автоматы A и B разделимы по (обозначение: A B), или просто разделимы (обозначение: AB); последовательность называется разделяющей последовательностью автоматов A и B. Таким образом, автоматы разделимы, если существует входная последовательность, для которой множества выходных последовательностей автоматов не пересекаются. Разделяющая последовательность I* называется кратчайшей, если любая другая входная последовательность, разделяющая автоматы A и B, не короче . Если автоматы неразделимы, то для любой входной последовательности множества выходных последовательностей автоматов пересекаются.

1.2 Построение разделяющей последовательности

Рассмотрим алгоритм построения разделяющей последовательности, предложенный в работе [4].

Алгоритм 1. Построение разделяющей последовательности для автоматов A и B

Вход: Автоматы A и B с входным алфавитом I и выходным алфавитом O

Выход: Кратчайшая разделяющая последовательность для автоматов A и B (если существует)

Шаг 1. Построить A B. Если автомат A B полностью определенный, то автоматы A и B неразделимы. КОНЕЦ.

Шаг 2. Построить усеченное дерево преемников автомата A B. Корень дерева (0-й уровень дерева) – начальное состояние пересечения; вершины дерева помечены подмножествами состояний пересечения. Пусть уже построены k уровней дерева, k 0, для заданной промежуточной вершины k-го уровня, которая помечена подмножеством состояний пересечения P и для заданного входного символа i, в дереве есть ребро, помеченное i, в вершину, помеченную подмножеством всех i-преемников состояний подмножества P. Текущая вершина Current на k-м уровне, помеченная подмножеством состояний P, объявляется терминальной вершиной, если выполняется одно из следующих условий:

  1. Существует такой входной символ i, что множество i-преемников подмножества P – пустое множество;

  2. Существует вершина на j-м уровне, j < k, помеченная подмножеством состояний R со следующим свойством: для всякого состояния (s',t') R найдется такое состояние (s,t) P, что выполняется (s',t') (s,t).

Шаг 3. Если ни один путь в усеченном дереве преемников, построенном на Шаге 2, ни усекается согласно условию 1, то автоматы A и B неразделимы. КОНЕЦ. Если есть терминальная вершина Leaf, помеченная подмножеством состояний P таким, что для некоторого входного символа i всякое состояние подмножества P не имеет i-преемников, то последовательность i, где помечает путь от корня к терминальной вершине Leaf, является разделяющей последовательностью для автоматов A и B.

Также в работе [4] показано, что если автоматы A и B имеют соответственно не более n и m состояний, то длина кратчайшей разделяющей последовательности будет не более чем 2nm−1, и данная экспоненциальная оценка является достижимой.

Теорема 1. Для заданных целых чисел n и m, n 1, m 1, всегда найдутся разделимые автоматы A и B с числом состояний n и m, соответственно, такие что для них кратчайшая разделяющая последовательность имеет длину 2nm−1.

    1. 1.3 Модель неисправности и проверяющий тест

Для построения качественных тестов необходима не только формальная модель описания эталонной и проверяемой систем, но и формальное задание модели неисправности. Традиционно под моделью неисправности понимают тройку S, , , в которой S эталонный автомат, отношение конформности, {, , ~}. Область неисправности есть множество автоматов, входной и выходной алфавиты которых совпадают с входным и выходным алфавитом эталонного автомата. Автоматы из множества представляют все возможные неисправности в соответствующей дискретной системе. Тогда конечное непустое множество TS конечных входных последовательностей называется полным проверяющим тестом относительно модели S, , , если TS обнаруживает всякий автомат T , не конформный эталонному автомату S.

Для моделей неисправности S, , и S, , , где S – нд‑эталон, – множество проверяемых нд-автоматов, известны методы построение полных проверяющих тестов для случаев, когда есть множество всех автоматов с ограниченным числом состояний или множество всех подавтоматов специального мутационного автомата. Однако, применить на практике эти тесты можно только в случае, если выполняется предположение о "всех погодных условиях", т.е. каждая тестовая последовательность подается на тестируемый автомат до тех пор, пока проверяемый автомат "не покажет" все возможные реакции на эту последовательность. Такое предположение перестает быть реалистичным, если при тестировании нет возможности полностью контролировать проверяемый автомат, что имеет место, например, при удаленном тестировании реализаций телекоммуникационных протоколов.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5173
Авторов
на СтудИзбе
436
Средний доход
с одного платного файла
Обучение Подробнее