ПРЕДИСЛОВИЕ
Для инженеров, работающих в области релейно-контактной техники или техники цифровых машин, изучение общей теории конечных автоматов и последовательностных машин не связано с большими трудностями, так как им знаком уже необходимый математический аппарат: исчисление высказываний, общие понятия об исчислении предикатов, основы теории алгоритмов (теории рекурсивных функций).
В значительно худшем положении оказываются инженеры других специальностей, в том числе и инженеры; знакомые с теорией автоматического управления. Основой их математического образования является обычно анализ, математическая физика, дифференциальные уравнения. Как показал опыт, изучение проблем, в основе которых лежит математическая логика и теория алгоритмов, представляет для них известные трудности.
Настоящая книга рассчитана <на широкий круг читателей, работающих в области автоматики, телемеханики и вычислительной техники и впервые знакомящихся с теорией конечных автоматов и последовательностных машин. Авторы имели в виду также, что книга должна быть полезна для математика (не логика), стремящегося познакомиться с этими проблемами, а также для физиолога и биолога, интересующихся теорией конечных автоматов и последовательностных машин применительно к созданию идеализированных моделей нервных тканей. Цель книги — ввести указанный круг читателей в эту новую область, познакомить с основными понятиями, с постановкой некоторых задач и результатами их решения. При этом результаты, полученные авторами, тесно переплетаются с результатами, заимствованными из литературы.
Все же в основном книга рассчитана на инженеров. Поэтому авторы при рассмотрении некоторых вопросов логики и теории алгоритмов вынуждены были пренебрегать строгостью изложения.
Для каждого из упомянутых читателей была бы удобнее своя архитектура книги, свой порядок размещения материалов. Вьмужденные рассчитывать на разных читателей, авторы старались разместить материал так, чтобы встречающиеся трудности последовательно нарастали. Естественно поэтому, что каждый читатель может избрать свой порядок чтения глав, руководствуясь следующими общими советами:
1. Для инженера, не знакомого с предметом, но стремящегося детально изучить его, рекомендуется изучение материала в той последовательности, в какой он приведен в книге.
2. Для инженера, интересующегося предметом лишь в общих чертах, рекомендуется прочесть последовательно первые семь глав, а затем главу XII. После этого можно бегло просмотреть главу XIII и, наконец, прочесть главы VIII, IX, X и XI.
3. Для инженера, знакомого с основами математической логики и ее техническими приложениями (например, для специалиста по релейно-контактной технике или вычислительным машинам), рекомендуется начать чтение книги с главы III.
4. Наконец, математику, интересующемуся техническими приложениями, можно смело опустить при чтении книги, главы I, XII и XIII.
Параграфы 2.5 и 8.4, в которых затрагиваются специальные вопросы минимизации булевых функций и реализации конечных автоматов, заданных на языке регулярных выражений (выходящие за рамки основ общей теории конечных автоматов и последовательностных машин), были по просьбе авторов написаны соответственно В. Д. Казаковым и О. П. Кузнецовым.
Авторы с благодарностью ждут замечаний и предложений от читателей.
Авторы