- •1. Введение.
- •2. Основные определения.
- •2.1 Различимость, изоморфизм и минимизация.
- •2.2 Проблемы тестирования.
- •2.3 Установочная последовательность.
- •2.4 Синхронизирующие последовательности.
- •3. Идентификация и верификация состояния.
- •3.2. Простые условные диагностические эксперименты.
- •3.3. Построение простого условного диагностического эксперимента.
- •3.4. Верификация состояния.
- •4. Тест На Соответствие.
- •4.1. Статусные Сообщения и Сброс.
- •4.2. Разделяющие Последовательности.
- •5. Вывод.
- •6. Список литературы
- •7.Приложение.
3.2. Простые условные диагностические эксперименты.
Определение 3. Простой условный диагностический эксперимент это дерево T с корнем и с n листьями. Внутренние вершины подписаны выходными сигналами, а листья обозначены состояниями конечного автомата так, что: 1) ребра, выходящие из общей вершины имеют различные выходные сигналы, и 2) для каждого листа дерева T, если x,y входная и выходная последовательности, образованные вершинами и ребрами, которые пишутся на пути от корня до листа, и если лист обозначен состоянием ,
тогда . Длина последовательности это глубина дерева.
На рис.7 показан простой условный диагностический эксперимент для конечного автомата на рис.6. Эксперимент начинается с подачи сигнала a, затем разделяется на две части исходя из того, какой получится выходной сигнал 0 или 1. В первом случае подается a, a, затем b и разделяется еще на две части. Если последний выход это 0, то утверждаем, что начальным состоянием было , иначе подаем ba и по выходу определяем какое из и является начальным состоянием. Правую ветвь рассматриваем так же.
Не у всех минимальных автоматов есть простой условный диагностический эксперимент. Например, автомат на рис.5 не имеет таковую (по тем же причинам). Конечно, простые безусловные диагностические эксперименты тоже являются условными. Таким образом, автоматы с простым безусловным диагностическим экспериментом имеют простые условные диагностические эксперименты, также условные могут быть гораздо короче. С другой стороны, автомат может не иметь простой безусловный диагностический эксперимент, но иметь условный. Автомат на рис.6 тому пример. Простой безусловный диагностический эксперимент может иметь вначале только сигнал a, т.к. b объединяет , и . После подачи последовательности, состоящей из сигналов a, семейства множеств неопределенности начальной и текущей состояний выглядят одинаково: ={{,,},{,,}}, тем не менее, b не может быть подано на вход, т.к. мы бы не смогли различить и .
Опишем алгоритм существования простого условного диагностического эксперимента. Сначала, рассмотрим условный эксперимент, он может быть представлен как дерево решений T, чьи внутренние вершины обозначены входными сигналами, а ребра выходными. С каждой вершиной u дерева T мы рассматриваем два множества состояний: инициальное множество I(u) и текущее множество C(u). Если x и y соответственно входные и выходные последовательности, записанные на пути от корня до вершины u (не включая ее саму), тогда . Инициальное множество I(u), объединенное с листьями, образует разбиение , множества состояний автомата (каждое начальное состояние ведет к определенному листу дерева решений). Эксперимент T есть простой условный диагностический эксперимент тогда и только тогда, когда дискретно.
Говорим, что входной сигнал a допустим для множества состояний C, если он не объединяет два состояния без возможности их различить, т.е. должно выполняться . Если во время теста подается сигнал a такой, что для двух состояний текущего множества и или , мы теряем информацию безвозвратно, т.к. мы не сможем никогда узнать в каком состоянии был автомат в или . Следовательно, на каждом шаге условного эксперимента мы можем подавать только допустимые сигналы.
Сначала берем разбиение , содержащее в себе один блок со всем множеством состояний. Блок B разбиения , под действием допустимого сигнала a такого, что два состояния из B выдадут разные символы или перейдут в разные блоки, разбивается на подблоки, в которых 2 состояния лежат в одном подблоке тогда и только тогда, когда они выдают одинаковый сигнал в ответ на a и переходят в состояния, находящиеся в одном блоке (старого разбиения). Продолжаем до тех пор, пока (x) не будет дискретным.
Рассмотрим автомат на рис.6. Изначально разбиение состоит из одного блока со всеми состояниями. Входной сигнал недопустим, в отличие от a.Таким образом, переходит в ={{,,},{,,}}. Теперь b допустим для первого блока, он оставляет в том же блоке, а и переводит во второй блок. Теперь новое разбиение имеет вид ={{,{,},{,,}}. Следующий сигнал aразделяет блок {,,} на {,} и {}. Затем b становится допустимым сигналом для {,} и делит его на {} и {}.
В конце a или b разделяет блок {,}. В конце получили множество , состоящее из блоков с одним элементом. Значит, у данного автомата есть простой условный диагностический эксперимент. Этот алгоритм занимает время O.