ИЗМЕНЕНО ДЛЯ ДОБАВЛЕНИЯ : На этот вопрос теперь по существу дан ответ; пожалуйста, смотрите эту запись в блоге для более подробной информации. Спасибо всем, кто разместил комментарии и ответы здесь.
ОРИГИНАЛЬНЫЙ ВОПРОС
Это, надеюсь, более умная и информированная версия вопроса, который я задал на MathOverflow. Когда я задал этот вопрос, я даже не знал названия области математики, в которой находилась моя проблема. Теперь я почти уверен, что она лежит в «Алгоритмической комбинаторике с частичными словами». (Недавняя книга на эту тему здесь .)
Я хочу составить список слов по букв. Каждое слово имеет длину ровно . Дело в том, что если находится в списке, где - это подстановочный знак / символ безразличия, то больше никогда не появится в списке. (То же самое верно, если или если и, следовательно, запрещенное подслово - .)
Пример, где и :
<- запрещено, потому что появился в строке над <- запрещено, потому появился в первой строке
Литература по «частичным словам, которых можно избежать», которые я нашел, была бесконечной - в конце концов, некоторый шаблон слов неизбежен, если размер слова достаточно велик. Я хотел бы найти окончательные версии таких теорем. Итак, вопрос:
При условии, что в алфавите из букв есть частичное слово формы , сколько слов длины его избегают и могут ли они быть явно созданы за полиномиальное время?
Я не ожидаю, что вышеупомянутый вопрос будет трудным, и, если нет тонкости, которую я пропускаю, я мог бы вычислить это сам. Настоящая причина, по которой я размещаю информацию на этом сайте, заключается в том, что мне нужно знать гораздо больше о свойствах таких списков слов для моего приложения, поэтому я надеюсь, что кто-то может ответить на следующий вопрос:
Это было изучено в целом? Какие документы рассматривают не только то, является ли частичное слово неизбежным, но и «сколько времени это займет», прежде чем оно станет неизбежным?
Спасибо.
источник
Ответы:
Вот особый случай: количество двоичных слов длиныК таким образом, что два не появляются последовательно F( к + 3 ) , где F( н ) это Nт ч Число Фибоначчи (начиная с F( 1 ) = 1 , F(2)=1 ). Доказательство - через представительство Zeckendorf .
РЕДАКТИРОВАТЬ: Мы можем расширить этот начальный частный случай в немного больший частный случайa◊0a , Рассмотрим строки длиныk по алфавиту размера l+1 такое что письмо a не появляется дважды подряд. Позволятьf(k) быть количеством таких строк (которые мы будем называть «действительными»). Мы утверждаем, что:
Вы можете убедиться, что следующее является закрытой формой для вышеуказанного повторения:
РЕДАКТИРОВАТЬ № 2: Давайте выберем еще один случай -◊0b , a ≠ b , Мы будем называть строки болееL элемент, который не содержит подстроки а б , "действительный" и пусть SК обозначим множество допустимых строк длины К , Далее давайте определимсяTК быть подмножеством SК состоящий из строк, начинающихся с б а также UК быть теми, кто не начинается с б , Наконец, пустье( k ) = |SК| , г( k ) = |TК| , h ( k ) = |UК| ,
Мы наблюдаем, чтог(0)=0,h(0)=1,f(0)=1 а также г( 1 ) = 1 , h ( 1 ) = 1 - 1 , f(1)=l , Далее мы выводим следующие рецидивы:
Далее мы переставляем рекуррентные уравнения для получения:
Мы можем получить довольно непрозрачное решение в этой замкнутой форме для этого повторения, немного покопавшись в генерируемой функции или, если нам лень, направиться прямо к Wolfram Alpha . Однако, немного погуглив и поглядывая в OEIS , мы обнаруживаем, что на самом деле имеем:
источник
Совершенно другой подход к первому вопросу повторно использует ответы на недавний вопрос о генерации слов на обычном языке : достаточно применить эти алгоритмы для длиныk на обычном языке Σ∗aΣjbΣ∗ где Σ is the alphabet.
источник
Обновлено: этот ответ неверен :
при условии,J исправлено, мы можем посчитать количество способов паттернаa◊Jб могут быть сопоставлены: первый a символ может быть сопоставлен в некоторой позиции 1 ≤ i ≤ k - j - 1 , и у нас есть Lя - 1 возможности до этого момента, LJ между a а также б , а также Lk - j - i - 1 для оставшейся части строки, таким образом, в общей сложности
По первому вопросу, при том понимании, чтоj не фиксируется, то есть мы хотим избежать встраивания слова ab :
По второму вопросу мне нечего предложить; Существует связь с встраиванием слов, но результаты, которые я знаю о плохих последовательностях для леммы Хигмана, применяются не сразу.
источник