Помощь в учёбе, очень быстро...
Работаем вместе до победы

Универсальные синхронизирующие и универсальные сжимающие слова

ДиссертацияПомощь в написанииУзнать стоимостьмоей работы

Не каждый ДКА может быть синхронизирован, но для каждого ДКА srf = (Q, E,<5) можно указать ранг автомата rk (#/) = min{|?(Q, г>)| v е Е*}. Ранг показывает, какое минимальное количество состояний может получиться в образе множества Q под действием различных словтак, для синхронизируемых автоматов ранг равен 1. Как для синхронизируемых автоматов, так и для несинхронизируемых автоматов можно… Читать ещё >

Содержание

  • Введение
    • 1. 1. Синхронизируемость и сжимаемость
    • 1. 2. Универсальные синхронизирующие слова
    • 1. 3. Универсальные сжимающие слова
    • 1. 4. Апробация результатов
  • 2. Разрешимость задачи распознавания сжимающих слов
  • 3. Алгоритм распознавания сжимающих слов
    • 3. 1. Предварительные сведения и определения
      • 3. 1. 1. Фишки и дырки
      • 3. 1. 2. Послойное представление
      • 3. 1. 3. Строение слоя
      • 3. 1. 4. Строение слоя п-собственного автомата
      • 3. 1. 5. Метки состояний и роли букв
      • 3. 1. 6. Основа
      • 3. 1. 7. Операции по изменению основы
      • 3. 1. 8. Вычисления по основе
    • 3. 2. Алгоритм
      • 3. 2. 1. Общее описание алгоритма
      • 3. 2. 2. Проверка слова на п-полноту
      • 3. 2. 3. Генерация ролей букв
      • 3. 2. 4. Распределение ролей и начало рекурсии
      • 3. 2. 5. Шаг рекурсии (разбиение на подклассы)
      • 3. 2. 6. Классы автоматов, не требующие разбиения
      • 3. 2. 7. Корректность
    • 3. 3. Неизоморфность рассматриваемых автоматов
    • 3. 4. Время работы алгоритма
  • 4. Алгоритмы поиска и построения синхронизирующих и сжимающих слов
    • 4. 1. Переборный алгоритм поиска кратчайших синхронизирующих слов
    • 4. 2. Поиск сжимающих слов
    • 4. 3. Распознаватель слов, синхронизирующих автомат
    • 4. 4. Алгоритм построения синхронизирующих слов через пересечение языков
    • 4. 5. Результаты
  • 5. Зеркальный образ 2-синхронизирующих слов

Универсальные синхронизирующие и универсальные сжимающие слова (реферат, курсовая, диплом, контрольная)

1.1 Синхронизируемость и сжимаемость.

Детерминированным конечным автоматом (или кратко ДКА) мы будем называть тройку srf — (Q, Е, S), где Q — конечное множество состояний, Е — конечный входной алфавит, и 5 — всюду определенная функция переходов, действующая из Q х Е в Q. Действие букв из Е на множество состояний Q, определяемое функцией переходов 5, естественным образом расширяется до действия слов из свободного Е-порожденного моноида Е* с пустым словом епоследнее действие будем также обозначать через 5. Для произвольного слова v е Е* и произвольного RQ Q мы определим действие словом v на множество R следующим образом: S (R, v) = {S (q, v) q 6 .R}. Дефектом действия слова v на автомат назовем dfv (stf) — Q — г>)|.

ДКА = (Q, Е, 5) называется синхронизируемым, если действие некоторого слова w G Е* отображает все состояния этого автомата в некоторое одно состояние, т. е. существует состояние р G Q такое, что для всех состояний q? Q выполняется 5(q, w) = ртакое слово w будем называть синхронизирующим словом для автомата ,<г/.

Рис. 1: Автомат Черни с 4 состояниями.

На рис. 1 представлен пример синхронизируемого автомата. Легко проверить, что любое состояние этого автомата словом ab3ab3a отображается в состояние 2, т. е. слово ab3ab3a является синхронизирующим словом для данного автомата. Отметим, что у любого синхронизируемого автомата существует бесконечно много синхронизирующих слов, так как если мы припишем к синхронизирующему автомат слову в начало и в конец любые слова, то полученное слово по-прежнему будет синхронизировать этот автомат. Оказывается, что слово аЪ3аЪ3а не только является синхронизирующим словом для автомата Черни с 4 состояниями, но еще и кратчайшим с данным свойством.

Что же хорошего в синхронизирующем автомат слове и почему здесь уместно слово 'синхронизация'? Для ответа представим, что мы имеем несколько одинаковых синхронизируемых автоматов, работающих независимо, и пусть каждый из этих автоматов находится в некотором состоянии, причем начальные состояния для разных автоматов могут различаться. Если мы ко всем этим автоматам одновременно применим синхронизирующее их слово, то все они окажутся в одном и том же состоянии — тем самым, дальнейшая работа этих автоматов под действием единого потока сигналов будет синхронизирована. Можно считать, что данное слово выполнило 'сброс' всех этих автоматов в 'начальное' состояние. Другим важным применением синхронизирующего автомат слова является ситуация, когда у нас имеется один синхронизируемый автомат, но мы не знаем, в каком состоянии он находится. Тогда применение синхронизирующего его слова переведет автомат в заранее известное нам состояние. Т. е. синхронизирующее автомат слово позволяет уменьшить неопределенность поведения автомата! Существует множество других применений, некоторые из них описаны в работах [23- 29].

Одним из первых понятие синхронизируемости сформулировал Черни (Сегпу) в 1964 году, в работе [15]. Черни также высказал гипотезу:

Гипотеза 1.1 (Сегпу, 1964). Любой синхронизируемый ДКА srf = (Q, E,<5) может быть синхронизирован словом длины не большей, чем (|(3| — I)2 •.

С тех пор было много попыток доказать или опровергнуть эту так легко формулируемую гипотезу, но ни одна из них не увенчалась успехом. На данный момент гипотеза доказана для многочисленных классов автоматов (см. [5- 14- 19- 21- 34−38]), а в общем случае получена только кубическая верхняя оценка М (см. [1]). Сам же Черни в работе [15] построил бесконечную серию автоматов, кратчайшие синхронизирующие слова которых имеют длину (|<2| — I)2, и доказал тем самым, что данную оценку нельзя понизить.

Первой алгоритмической задачей, связанной с синхронизируемостью, является задача проверки данного автомата srf = (Q, Е, S) на синхронизируе-мость. Оказывается, что можно выполнить эту проверку за время 0(|Е||<5|2), используя 0(Q2) пространства (см. [21]). Для этого необходимо построить автомат на парах = где Q^ = Q х Q,.

М ((р,</),*) = (5(р, a), S (q, a)) V (p, g) 6 Q[2] Va G E.

После этого достаточно рассмотреть пары вида (р, р) и проверить, что из этого множества пар можно, идя по обратным ребрам автомата, достичь все остальные пары. Это условие эквивалентно тому, что любую пару (г, s) состояний автомата sf можно склеить, т. е. подходящим словом v G Е* перевести состояния г и s в некоторое состояние р.

В работе [21] Эпштейн (Eppstein) также показал, что для данного автомата = (Q, Е, 8) можно найти некоторое синхронизирующее слово за время 0(|E||Q|2 + |Q|3). Длина такого слова ^ + 0(Q2).

А как найти кратчайшее синхронизирующее автомат srf — (Q, Е, слово? Для этого используем автомат на подмножествах = (2®, Е, А), где 2® обозначает множество всех подмножеств множества Q, а функция Д: 2*2 х Е —> 2^ определена следующим образом:

Д (М, а) = {5{q, a) q G М} УМ С Q Va 6 Е.

Теперь осталось найти кратчайший путь из множества всех состояний Q в некоторое одноэлементное подмножество. Такой подход дает не самую лучшую оценку на длину кратчайшего синхронизирующего автомат srf слова, а именно 2'°' — |Q| — 1, но все же позволяет найти кратчайшее слово.

Саломаа (Salomaa) [35] и Эпштейн [21] доказали, что задача, в которой для заданного автомата srf и заданного числа L требуется определить, имеет ли автомат srf синхронизирующее слово длины L, является NP-полной. По-другому эту задачу можно сформулировать так: проверить, что кратчайшее синхронизирующее слово для автомата имеет длину, не превосходящую L. Самотий (Samotij) в работе [36] также показал, что задача проверки того, что кратчайшее слово, синхронизирующее автомат имеет длину ровно L, является одновременно iVP-трудной и со — NPтрудной.

Не каждый ДКА может быть синхронизирован, но для каждого ДКА srf = (Q, E,<5) можно указать ранг автомата rk (#/) = min{|?(Q, г>)| v е Е*}. Ранг показывает, какое минимальное количество состояний может получиться в образе множества Q под действием различных словтак, для синхронизируемых автоматов ранг равен 1. Как для синхронизируемых автоматов, так и для несинхронизируемых автоматов можно говорить о сжимаемости. Возьмем произвольное натуральное число п. ДКА srf = (Q, Е, S) называется п-сжимаемым, если найдется такое слово w 6 Е*, что |5(Q, w)| < — и, другими словами, dfw (я/) > п. Такое слово w называется п-сжимающим для автомата я/. Будем также говорить, что слово w сжимает данный автомат j/нап состояний. Ясно, что для любого числа 0 < и < Q — rk (stf) автомат srf является п-сжимаемым.

Проверить, является ли данный автомат srf = (Q, Е, S) п-сжимаемым, можно за время 0(|E||Q|2 + Q3 -InQ2), используя те же идеи, что и в работе Эпштейна [21].

В 1983 году Пэн (Pin) в работе [30] обобщил гипотезу Черни:

Гипотеза 1.2 (Pin, 1983). Любой п-сжилшемый ДКА может быть сжат на п словом длины не большей, чем п2.

Однако, Кари (Kari) в 2000 году опроверг эту гипотезу [24], построив автомат с 6-ю состояниями такой, что кратчайшее сжимающее этот автомат на 4 состояния слово имеет длину 17 = 42+1. Других примеров, опровергающих данную гипотезу, пока не найдено.

Синхронизируемости и ее обобщениям посвящено множество работ, в том числе недавние работы Павла Мартюгина [2−4- 26- 27].

6 Заключение.

В главе 2 показано, что для каждого слова w € Е*, не являющегося универсальным гг-сжимающим словом, найдется автомат-контрпример, имеющий не более 2|ги|(п — 1) + 2 состояний. Таким образом, языки Сп (Е) всех n-сжимающих слов над алфавитом Е являются рекурсивными для всех гг., что обобщает известный ранее результат о рекурсивности языка всех 2-сжимающих слов. Кроме того, из линейности представленной оценки следует, что, во-первых, языки Сп являются контекстными, а, во-вторых, задача распознавания тг-сжимающих слов принадлежит классу сложности co-NP.

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

Глава 4 содержит описание алгоритмов поиска кратчайших универсальных синхронизирующих и универсальных сжимающих слов, а также описание алгоритма построения некоторых коротких универсальных синхронизирующих слов, строящего пересечения языков и отбрасывающего 'дальние' состояния в распознавателях получающихся пересечений. Кроме того, приведены новые примеры кратчайших и достаточно коротких универсальных синхронизирующих и универсальных сжимающих слов.

Наконец, в главе 5 доказано, что если любое универсальное 2-синхрони-зирующее слово прочитать справа налево, то полученное зеркальное слово также будет универсальным 2-синхронизирующим словом.

Автор выражает глубокую благодарность своему научному руководителю Д. С. Ананичеву и профессору М. В. Волкову за помощь в подготовке текстов и внимание к работе.

Показать весь текст

Список литературы

  1. А.А., Рысцов И. К., Спивак М. А. Экстремальная комбинаторная задача, связанная с длиной синхронизирующего слова в автомате / / Ки-берненика. 1987. № 2. С. 16−20.
  2. П.В. Бережная синхронизируемость частичных автоматов // Труды 39-й региональной молодежной конференции «Проблемы теоретической и прикладной математики». Екатеринбург, 2008. С. 336−341.
  3. П.В. Нижние оценки длины кратчайших бережно синхронизирующих слов для двух- и трёхбуквенных частичных автоматов // Дискретный анализ и исследование операций. 2008. С. 44−56.
  4. Мартюгин П.В. PSPACE-полнота задачи проверки частичных автоматов на бережную инхронизируемость // Известия Уральского государственного университета. 2008. № 62. С. 106−150.
  5. И.К. О длине возвратных слов для автоматов с простыми идем-потентами // Кибернетика и системный анализ. 2000. № 3. С. 32−39.
  6. Дж. Алгоритм для минимизации конечного автомата // Кибернетический сборник. Новая серия. М.: Мир, 1974. Вып. 11. С. 177−184.
  7. Programmable and autonomus computing machine made of biomolecules / R. Adar, Y. Benenson, E. Keinan et al.] // Nature. Vol. 414 № 1. P. 430−434.
  8. DNA molecule provides a computing machine with both data and fuel / R. Adar, Y. Benenson, Z. Livneh et al.] // Proceedings of the National Academy of Sciences of USA. 2003. Vol. 100. P. 2191−2196.
  9. Almeida J., Volkov M.V. Profinite identities for finite semigroups whose subgroups belong to a given pseudovariety // Journal of Algebra and Its Applications. 2003. № 2. P. 137−163.
  10. Almeida J., Volkov M.V. Subword complexity of profinite words and subgroups of free profinite semigroups // International Journal of Algebra and Computation. 2006. Vol. 15 № 2. P. 221−258.
  11. Ananichev D.S., Cherubini A., Volkov M.V. Image reducing words and subgroups of free groups // Theoretical Computer Science. 2003. Vol. 307. P. 77−92.
  12. Ananichev D.S., Volkov M.V. Synchronizing monotonic automata // Lecture Notes in Computer Science: Developments in Language Theory (7th International Conference, Szeged, 2003). Berlin-Heidelberg-New York: Springer-Verlag, 2003. Vol. 2710. P. 111−121.
  13. Cerny J. Poznamka к homogennym eksperimentom s konecnymi avtomatami // Matematicko-Fyzikalny Casopis. Slovenskej Akademie Vied, 1964. Vol. 14. P. 208−216.
  14. Cherubini A., Kisielewicz A. Recognizing collapsing words is co-NP-complete // Proceedings of the 8th International Workshop on Descriptional Complexity of Formal Systems / Eds. H. Leung, G. Pighizzini. Las Cruces, 2006. P. 106−117.
  15. Cherubini A., Kisielewicz A. Collapsing words, permutation conditions and coherent colorings of trees // Theoretical Computer Science. 2009. Vol. 410. P. 2135−2147.
  16. Dubuc L. Sur les automates circulaires et la conjecture de Cerny // RAIRO Theoretical Informatics and Application. 1998. Vol. 32. P. 21−34.
  17. Duske J., Ito M. On cofinal and definite automata // Acta Cybernetica. 1983. Vol. 6. P. 181−189.
  18. Eppstein D. Reset sequences for monotonic automata / / SI AM Journal on Computing. 1990. Vol. 19. P. 500−510.
  19. Jurgensen H. Synchronization. // Proceedings of International Conference on Language and Automata Theory and Applications. Tarragona, 2007. P. 27−49.
  20. Kari J. A counter example to a conjecture concerning synchronizing words in finite automata // EATCS Bull. 2001. Vol. 73. P. 146.
  21. Margolis S., Pin J.-E., Volkov M.V. Words guaranteeing minimum image // International Journal of Foundations of Computer Science. 2004. Vol. 15. P. 259−276.
  22. Martyugin P.V. Complexity of problems concerning reset words for commutative automata and automata with simple idempotents / / Proceedings of the 12th International Conference on Automata and Formal Languages. 2008. P. 314−324.
  23. Martyugin P.V. A series of slowly synchronizable automata with a zero state over a small alphabet // Information and Computation. 2008. Vol. 206. P. 1197−1203.
  24. Moore E. Gedanken-experiments with sequential machines // Annals of Mathematics Studies: Automata Studies / Eds. С. E. Shannon, J. McCarthy. Princeton: Princeton University Press, 1956. № 34. P. 129−153.
  25. Natarajan B.K. An algorithmic approach to the automated design of parts orienters // Foundations of Computer Science: 27th Annual Symposium. IEEE, 1986. P. 132−142.
  26. Pin J.-E. On two combinatorial problems arising from automata theory // Annals of Discrete Mathematics. 1983. Vol. 17. P. 535−548.
  27. Identities in full transformation semigroups. / R. Poschel, M.V. Sapir, N. Sauer et al.] //Algebra Universalis. 1994. Vol. 31. P. 580−588.
  28. Pribavkina E.V. On some properties of the Language of 2-collapsing words // International Journal of Foundations of Computer Science. 2006. Vol. 17. P. 665−676.
  29. Reilly N.R., Zhang S. Decomposition of the lattice of pseudovarieties of finite semigroups induced by bands //Algebra Universalis. 2000. Vol. 44. P. 217−239.
  30. Rystsov I.C. Reset words for commutative and solvable automata // Theoretical Computer Science. 1997. Vol. 172. P. 273−279.
  31. Salomaa A. Composition sequences for functions over a finite domain. // Theoretical Computer Science. 2003. Vol. 292. P. 263−281.
  32. Samotij W. A note on the complexity of the problem of finding shortest synchronizing words // Proceedings of International Conference AutoMathA. Palermo, 2007.
  33. Sauer N., Stone M.G. Composing functions to reduce image size // Ars Combinatoria. 1991. Vol. 31. P. 171−176.
  34. Trahtman A.N. The Cerny conjecture for aperiodic automata // Discrete Mathematics and Theoretical Computer Science. 2007. Vol. 9 № 2. P. 3−10.
  35. Работы автора по теме диссертации
  36. Ananichev D.S., Petrov I.V., Volkov M.V. Collapsing words: a progress report // International Journal of Foundations of Computer Science. 2006. Vol. 17 № 3. P. 507−518.
  37. Petrov I.V. An algorithm for recognition of n-collapsing words // Theoretical Computer Science. 2008. Vol. 391. P. 99−108.
Заполнить форму текущей работой