Каков типичный размер алфавита для конечных автоматов? - PullRequest
0 голосов
/ 17 марта 2011

Не совсем уверен, что это правильный форум, но на теоретической информатике было предложено переместить его сюда ...

Какой типичный размер алфавита для конечных автоматов?

В настоящее время я занят реализацией высокопроизводительной библиотеки FA, и перед тем, как продолжить, я должен сделать некоторые соображения по проектированию.Мое пространство состояний будет порядка 2 147 483 647 (Integer.MAX_VALUE), что, на мой взгляд, более чем достаточно, даже для не общего использования.Теперь все, что остается, это алфавитное пространство.

Есть ли смысл предполагать, что алфавит обычно состоит только из всех отображаемых символов (в этом случае он может быть сохранен как byte, что приведет кдействительно хорошая производительность)?Или символы алфавита лучше переводить в String s, чтобы у вас были метки алфавита?В этом случае мне нужно сохранить карту, которая переводит String в int, short или byte, в зависимости от того, насколько большим я хочу его создать.

1 Ответ

2 голосов
/ 17 марта 2011

Действительно, алфавит конечного автомата - это математическое «множество» любого типа. Ничто не ограничивает содержание набора, это могут быть 1 и 0, A-Z или яблоки-апельсины. Как такового «типичного» размера алфавита FSM не существует. У вас есть пользователь для вашей библиотеки?

...