Главная > Методы обработки данных > Введение в теорию конечных автоматов
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

3.5. Эквивалентные разбиения

k - эквивалентное разбиение автомата М называется эквивалентным разбиением М и обозначается P, если во всех классах этого разбиения смежные состояния эквивалентны. При этих условиях каждый класс разбиения называется классом эквивалентности. Из материалов § 3.4 следует, что P является наиболее детальным разбиением По теореме 3.4, эквивалентное разбиение P может быть получено, если образовывать для до тех пор, пока первый раз получится разбиение, которое совпадает с предыдущим разбиением. Это разбиение и будет P. Пусть равенство означает, что являются одинаковыми разбиениями, и пусть обозначает число классов в Используя это обозначение, предыдущие результаты могут быть обобщены следующим образом:

Если

Если все n состояний автомата являются 1 - эквивалентными, то разбиение состоит из одного класса, содержащего n состояний. Очевидно, что если все n состояний являются 1 - эквивалентными, то их первые преемники по отношению к любой входной последовательности являются также 1 - эквивалентными. Таким образом, все n состояний должны быть 2 - эквивалентными и, следовательно, . Тогда, по ( 3.6), и все n состояний являются эквивалентными. Для автомата такого типа является одинаковой для всех и, следовательно, . Тогда по определению, введенному в § 1.6, можно утверждать, что автомат, в котором все состояния эквивалентны, является тривиальным автоматом. В дальнейшем, если не будет специально оговорено, будут рассматриваться только нетривиальные автоматы, т. е. автоматы, в которых имеется, по крайней мере, одна различимая пара состояний или в 1 - эквивалентных разбиениях которых имеется, по крайней мере, два класса.

Лемма 3.8. Если , то

Доказательство. Если то, по (3.5) и (3.6), для . Поскольку , то (3.7) следует по индукции.

Лемма 3.9. Если для автомата с n состояниями то число состояний в каждом классе разбиения не превышает

Доказательство. Согласно лемме 3.8, число классов в равно, по крайней мере, Предположим, что один класс содержит больше чем n — k, скажем состояний. Тогда, поскольку каждый другой класс в должен содержать, по крайней мере, одно состояние, общее число состояний в будет не менее Лемма доказана, так как общее число состояний не может превосходить n.

Лемма 3.10. Для автомата с n состояниями

Доказательство. Если то, согласно лемме 3.8, Так как число классов в k - эквивалентном разбиении автомата с n состояниями не может превышать n, то полученное противоречие доказывает лемму.

Из леммы 3.10 и уравнения (3.6) можно вывести следующее заключение:

Теорема 3.5. Для автомата с n состояниями

Таким образом, процесс определения P для автомата с n состояниями путем последовательного построения для k = l, 2, 3 требует не более n-1 построений.

Другим вариантом формулировки теоремы 3.5 является

Следствие 3.1. Два состояния автомата с состояниями эквивалентны, если они (n - 1)- эквивалентны, и различимы, если они -различимы.

Определение может быть определено с помощью следующего правила: состояния являются смежными в тогда и только тогда, когда они для каждого входного символа дают одинаковые выходные символы.

Определение . Пары смежных состояний в которые при любом входном символе переходят

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

Рассмотрим, например, разбиение для автомата приведенное в (3.2). Первые преемники состояний 1, 3 и 8 являются смежными в при подаче а или и в 231 при подаче у. Первые преемники состояний 5 и 7 являются смежными в если приложен входной символ а, в если приложен символ p, и в если приложен символ у. Следовательно, являются классами Первые преемники состояний 2 и 4 по отношению к каждому входному символу являются смежными состояниями в поэтому являются классом Одноэлементные классы переходят в без изменений. Полученное разбиение будет таким, как показано в (3.3).

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

<< Предыдущий параграф Следующий параграф >>
Оглавление