Конечные автоматы, которые принимают двоичные строки, делимые на n

18

Я работаю над набором задач для класса и подумал над вопросом, касающимся того, над чем я работал. Существует ли минимальное количество состояний, которое должен иметь конечный автомат, чтобы принимать двоичные строки, представляющие числа, кратные целому числу n? В более раннем наборе задач я смог построить DFA, который принимал двоичные строки, делимые на 3 с 3 состояниями. Это совпадение, или есть что-то присущее общей задаче обнаружения строк, делимых на n, что предполагает минимальное количество состояний?

Я обещаю, что это не ответит на домашнее задание для меня! :)

Ник Ван Хугенстин
источник
3
Добро пожаловать на cstheory, сайт вопросов и ответов по исследовательским вопросам теоретической информатики (TCS). Ваш вопрос не является вопросом исследовательского уровня в TCS. Пожалуйста, смотрите FAQ для получения дополнительной информации о том, что подразумевается под этим и предложения для сайтов, которые могут приветствовать ваш вопрос. Наконец, если ваш вопрос закрыт из-за того, что он выходит за рамки, и вы считаете, что можете отредактировать вопрос, чтобы сделать его вопросом исследовательского уровня, не стесняйтесь делать это. Закрытие не является постоянным и вопросы могут быть вновь открыты, проверьте FAQ для получения дополнительной информации.
Каве
2
@Kaveh: Я думаю, что вопрос в порядке, особенно учитывая краткий ответ Дэвида.
Гек Беннетт
2
@HuckBennett Я согласен с Каве, что этот вопрос должен быть закрыт в целом, в основном, чтобы быть последовательным. Тем не менее, я также согласен с вами: это забавный вопрос, и когда вы впервые видите DFA, это определенно тот вопрос, который вы должны задать себе. Я думаю, что ОП должен попытаться повеселиться, выработав для себя ответ, а затем обратиться к math.SE за дополнительной информацией.
Артем Казнатчеев
11
Это не домашнее задание (хотя оно вдохновлено домашним заданием), это интересный вопрос, я не верю, что это хорошо известный результат, и ответ на вопрос появился в исследовательском журнале. Я не понимаю, почему это должно быть закрыто. Верхняя граница была домашнее задание, и на самом деле легко, но речь шла о нижней границы.
Питер Шор
1
@Janoma: Действительно. Конец вопроса предполагает, что ОП путает верхние и нижние границы.
Михаил Блондин

Ответы:

32

Для такого конечного автомата известна формула минимального числа состояний. Это зависит как от так и от радиуса R базового позиционного представления.Nр

Если взаимно просто с R , то минимальное число состояний равно n . Однако, когда n делит коэффициент с основанием, тогда ситуация довольно сложная. См. Mathematica Journal Vol. 3 Issue 11. «Делимость и сложность состояния» Клауса Сатнера.NрNN

Дэвид Харрис
источник
1
Именно то, что я искал. Спасибо, я скоро погрузлюсь в газету.
Ник Ван Хугенстин
2
Ссылка кажется битой
гигабайты
8

Есть еще одна статья на эту тему: Б. Алексеев, Минимальный DFA для проверки делимости, J. Comput. Сист. Sci. 69 (2004), 235–243.

Джеффри Шаллит
источник