2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.

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

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

Не ищите на этом форуме халяву, правила запрещают участникам публиковать готовые решения стандартных учебных задач. Автор вопроса обязан привести свои попытки решения и указать конкретные затруднения.

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему
 
 Приведение КА к полному ДКА.
Сообщение07.09.2010, 12:26 


24/11/09
30
Вот сел за Формальные языки и грамматики.
В обще есть на неком сайте

(Оффтоп)


задача к следующей теореме.
Т. Каждый автоматный язык распознается некоторым полным детерминированным конечным автоматом.
Ну вот и там автор строит его следующим образом.
$
\begin{aligned}
& M\rightleftharpoons \{Q,\Sigma,\Delta,I,F\}\text{ -- начальный автомат}\\
& \Delta=\{\langle p,a,q\rangle | \text{$p\in Q\, $, $q\in Q \, $ , $a\in\Sigma\,$}\}\\
\end{aligned}
$
$
\text{Пусть $\rho(Q)$ -- множество всех подмножеств множества $Q$}
\text{ и $a\in \Sigma,\,H\subseteq Q$}\\
\text{тогда обозначим через } \\ \Delta_a(H) = \{q\in Q | \langle p,a,q \rangle \in \Delta \text{ для некоторого }p \in H \}
$
В общем новый полный ДКА должен выглядеть так:
$
\begin{aligned}
&M^{'}\rightleftharpoons \{Q^{'} ,\Sigma,\Delta^{'} ,I^{'} ,F^{'} \}\text{ -- конечный автомат}\\
&Q^{'}=\rho(Q)\\
&\Delta^{'}=\{\langle H,a,\Delta_a(H) \rangle |\, H\subseteq Q,\, a\in \Sigma\}\\
&I=I^{'}\\
&F=\{H\subseteq Q | H \cap F \neq \varnothing\}
\end{aligned}
$
Автор предлагает задачу.
У. Найти полный детерминированный конечный автомат, эквивалентный автомату, изображенному на диаграмме.
Автомат следующий:
$M=\{\{1,2},{a,b},{\langle 1,ab,2\rangle\ , \langle 2,a,2 \rangle\},\{1\},\{2\}\}$
Я привел его к нормальному виду
$M=\{\{1,2,3},{a,b},{\langle 1,ab,2\rangle\ , \langle 2,b,3 \rangle\ , \langle 3,a,3 \rangle\ , \langle 1,a,3 \rangle\},\{1\},\{1,3\}\}$
и применил описанный в теореме процесс
$
\begin{aligned}
& I = \{1\}\\
& F = \{1,3\}\\
& \text{ а $\Delta^{'}$ лучше всего записать в виде таблички }\\
\end{aligned}
$
$
\begin{tabular}{|l|l|l|}
\hline
         & a                & b \\
\hline
\{1\}    & \{2,3\}      & \varnothing \\
\hline
\{2\}    & \varnothing & \{3\} \\
\hline
\{3\}    & \{3\}         & \varnothing \\
\hline
\{1,2\} & \{2,3\}      & \{3\} \\
\hline
\{1,3\} & \{2,3\}      & \varnothing \\
\hline
\{2,3\} & \{3\}         & \{3\} \\
\hline
\end{tabular}
$
В общем получается не идентичный автомат начальному. Начальный автомат мог распознавать слова {ab,aba^k,a^k| k>=0}, а этот { ab,aba^k | k>=0} . После построения схемы теоремы я отсек все недостижимые пути.
Подскажите как вообще приводить автомат к ДКА. Если можно ссылки на литературу тоже.

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение07.09.2010, 13:49 
Заслуженный участник


12/08/10
1680
У меня получился автомат с состояниями 12,23 и 2, со входом 12, выходами 12,23 и 2.
12,a->23
23,a->2
23,b->2
2,a->2
где 3 -состояние на ребре помеченном ab, его разбить надо.


удаленны вершины 1,3,13,123 как недостижимые.(123-выход)
связи были
1,a->3
3,b->2
13,a->3
13,b->2
123,a->23
123,b->2


Прикольный метод, буду знать))

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение07.09.2010, 14:48 


24/11/09
30
Метод так себе. На практике он применим только как решение небольших задач - слишком большое множество подмножеств получается даже при небольшом количестве состояний.

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение08.09.2010, 10:00 
Заморожен
Аватара пользователя


18/12/07
8774
Новосибирск
antondm в сообщении #350292 писал(а):
Метод так себе. На практике он применим только как решение небольших задач - слишком большое множество подмножеств получается даже при небольшом количестве состояний.

А ничего лучшего и не существует :-)

Чтоб убедится в этом, предлагаю решить следующую задачу. Для произвольного натурального $n$ придумать конечный автомат с $n$ состояниями, такой что любой эквивалентный (то есть распознающий тот же самый язык) полный детерминированный конечный автомат содержит не менее чем $2^n$ состояний.

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение08.09.2010, 18:46 
Заслуженный участник


12/08/10
1680
Букв в алфавите 2? Если $2^n$, то просто вроде.
И может $2^n-1$, а то пустое состояние всегда недоступно и выкидывается?

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение08.09.2010, 21:38 
Заслуженный участник


12/08/10
1680
Оно может быть достижимым, но оно конечное и не выход, т.е его можно удалить

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение09.09.2010, 04:30 
Заморожен
Аватара пользователя


18/12/07
8774
Новосибирск
Null в сообщении #350603 писал(а):
Букв в алфавите 2? Если $2^n$, то просто вроде.
И может $2^n-1$, а то пустое состояние всегда недоступно и выкидывается?

Да, в алфавите две буквы. А построить в задаче просят полный ДКА, то есть с пустым состоянием.

Тут, кстати, на этом форуме в прошлом году обсуждение было, должно ли "пустое состояние" (не знаю, насколько это адекватный перевод английского trap state) присутствовать в ДКА (там, где оно, естественно, подразумевается). Если брать определения из англоязычной литературы, то да. Если из русскоязычной, то нет. Сравните хотя бы две статьи из Википедии:

http://ru.wikipedia.org/wiki/%D0%9A%D0% ... 1.82.D1.8C и диаграмму из этой статьи.

http://en.wikipedia.org/wiki/Determinis ... te_machine

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение09.09.2010, 13:35 
Заслуженный участник


12/08/10
1680
Я назвал его пустым потому что оно соответствует пустому множеству в приведенном вначале алгоритмом.
Автоматы пораждающие слова с n-1 c конца буквой а подходят?
эх $2^{n-1}$ состояний будут

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение09.09.2010, 18:19 
Заморожен
Аватара пользователя


18/12/07
8774
Новосибирск
Null в сообщении #350744 писал(а):
Я назвал его пустым потому что оно соответствует пустому множеству в приведенном вначале алгоритмом.

Я так и понял.

Null в сообщении #350744 писал(а):
Автоматы пораждающие слова с n-1 c конца буквой а подходят?

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

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение09.09.2010, 18:23 
Заслуженный участник


12/08/10
1680
Ну если взять не детерминированный, то это будет
1,a->1
1,b->1
1,a->2
2,a->3
2,b->3
.....
n-1,a->n
n-1,b->n

1 - вход n-выход

его минимальная детерминированная форма содержит $2^{n-1}$ состояний

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение09.09.2010, 18:33 
Заморожен
Аватара пользователя


18/12/07
8774
Новосибирск
Понятно. Пример с $2^n$ состояниями выглядит похоже. Не буду лишать Вас удовольствия найти его самому :-)

А почему в Вашем примере минимальный детерминированный автомат имеет $2^{n-1}$ состояний я, признаться, не понял. Мне кажется, что их меньше.

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение09.09.2010, 18:39 
Заслуженный участник


12/08/10
1680
Просто если на двух словах $S_1$ и $S_2$ длинны N-1 мы окажемся в одном состоянии и эти слова различаются в iтой букве то на словах $S_1+b^{i-1}$ и $S_2+b^{i-1}$ мы окажемся опять в одном состоянии, но одно слово допустимо а другое нет, т.е. это выход и не выход

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение09.09.2010, 18:43 
Заморожен
Аватара пользователя


18/12/07
8774
Новосибирск
Чувствуется, что в примере ошибка, но уже вечер и спать хочется... Завтра с утра найду :?

 Профиль  
                  
 
 Re: Приведение КА к полному ДКА.
Сообщение10.09.2010, 10:12 
Заморожен
Аватара пользователя


18/12/07
8774
Новосибирск
Null в сообщении #350839 писал(а):
Просто если на двух словах $S_1$ и $S_2$ длинны N-1 мы окажемся в одном состоянии и эти слова различаются в iтой букве то на словах $S_1+b^{i-1}$ и $S_2+b^{i-1}$ мы окажемся опять в одном состоянии, но одно слово допустимо а другое нет, т.е. это выход и не выход

Опять не понял объяснение. Что у Вас за сумма слов такая? Конкатенация имеется в виду или что-то другое?

Но с утверждением о том, что минимальный ДКА в Вашем примере имеет $2^{n-1}$ состояние, всё же вынужден согласиться. Да, это действительно так. Ошибки в примере нет.

Но $2^{n-1}$ недостаточно. Нужно $2^n$ :-)

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group