Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по теории автоматов1.doc
Скачиваний:
33
Добавлен:
02.05.2014
Размер:
106.5 Кб
Скачать

18.02.2003 №1 Введение.

Теор-я ав-в(Т/А) заним-ся изучением абстрактных выч.уст-в или машин. В 30е гг ХХвека Тьюринг исследовал абстрактную машину, кот.по крацней мере в обл-ти выч-й обладала всеми возможностями совр.выч.машин. Целью исследования Тьюринга было определить границу м/у что м/т делать выч.маш-а и что не м/т. Пол-ые им рез-ты явл-ся фундаментальными и лежат в основе построения совр.прог.обеспечения и совр.комп-в.

В 40-50гг ХХ века многие ученые занимались исслед-ми простейших машин, кот-е наз-сь конечными авт-ми – эти модели первон-но были предложены как модели функционирования челов-го мозга, но вскоре они показали свою полезность и в ряде др-х областей знаний.

В к.50гг ХХвека лингвист Хомский занялся изучением формальных грамматик. Не явл-сь машинными в точном смысле этого слова, гр-ки тесно связанны с абстрактными авт-ми и служат основой для построения ПО и в частности компиляторов.

В 1969г мат-к Кук развил рез-ты Тьюринга о выч-ти и о невыч-ти. Ему удалось разбить все задачи на те кот-е м.б. эффективно решенымаш-ой и на те, кот-е впринципе м.б.решены, но для своего решения требуют так много Маш-го времени, что компил-р оказывается бесполезным для решения всех экземпляров задач, за исключением небольших. Послед-е задачи наз-ся трудно-разрешимыми или NP-трудными. Даже при экспотенциальном росте быстродействие ЭВМ весьма вероятно, что задачи этого типа м.б.решены.

Все эти соображения получены в середине прошлого века актуальны и сегодня. Напр-р, конечные ав-ты и некоторые типы формальных гр-к эфф-но исп-ся и сегодня при разработке компонентов П.О. Модель Тьюринга помогает оценить принципиальные возможности П.О. Теория слож-ти вычислений позволяет ответить на вопрос : можем ли мы решить задачу влоб, составив прог-му, или н/о искать обходные пути,. Иногда отказываться от точного решения задачи, т/о для того чтобы решить ее с заданной точностью за приемлемое время.

В силу сказанного Т.А. и теория сложности выч-й явл-ся ядром инф-ки, в частности рез-ты этих теорий исп-ся при:

1) создании ПО, используемого для создания и проверки цифровых схем

2) В лексич-х анализ-рах стандар-го компилятора, т.е.в той части коп-ра, кот.отвечает за разбивку исходного текста на такие логические единицы как идентификаторы, ключевые слова, знаки пунктуации и т.д.

3) В ПО для сканирования таких больших текстовых массивов, как наборы Webстраниц, при поиске слов, фраз и др-х последовательностей символов.

4) В ПО для проверки различного рода симс-м, таких как протоколы связи или протоколы защищенного обмена инф-ей, кот-е м/т нах-ся в конечном числе различных состояний.

Конечный авт-т.

Сущ-т мн-во разл.сис-м и компонентов, кот-е м/о рассм-ть как наход-ся в каж.момент времени в определ-ом состоянии из заданного мн-ва состояний. Назначением каж-го состояния явл-ся запоминание опред-го момента истории сис-мы. Т.к.число состояний сис-мы конечно, а история м/т длиться достаточно долго, то заполнить всю историю невозможно и => сис-у н/о стороить так, чтобы запоминать т/о действ-но важную инф-ию и забывать несущ-ную. Необх-ть иметь конечное число состояний обусловлена тем, что сис-ма долна быть реализована либо виде прог-мы, либо виде схемы.

Расс-м в качестве пр-ра простейшего нетривиального ав-та переключатель:включено-выкл-но. Это уст-во помнит свое текущее состояние и от него зависит рез-т нажатия кнопки. Из состояния вык-но при поступлении сигнала нажатие, ав-т переходит в состояние вкл-но и наоборот.

начало

нажатие

Состояния ав-та обозначены кружками а дуги, указывающие

нажатие

направления переходов помечены входными символами,

воздействующими на сис-у(нажатие). Одно из состояний явл-ся начальным, ччто помечается входной стрелкой, в нашем сл-е это состояние выкл-но.

Часто выделяют одно или неск-ко заключительных или допускающих состояний., попав в одно из них из начального состояния, после совершения неск-ких переходов мы можем считать что в некотором смысле входная посл-ть была хорошей. Напр-р, для нашего авт-та состояние вкл-но м/о считать допускающим, т.к. попав в него вкл-ет какую-то дальнейшую сис-у и она будет работать. В дальнейшем допускающие состояния буд. Обозначать двойными кружками или прямлугольником.

Расс-м др.пр-р, кот.м.б.частью лексического анализ-ра. Пусть ав-т обнаруживает слово them.

t

h

e

m

начало

Это ав-т должен иметь 5разл.состояний,

каж-е из кот-х предс-т собой позицию

в слове them, эти позиции соответствуют

префиксам этого слова от пустой цепрочки (никакая позиция в слове еще не достигнута) до целого слова. Каж-е из 5 сост-й авт-ой модели обозначена частью слова, прочитанного на данном шаге. Входным сигналам этого ав-та соотв-ют буквы. М/о считать, что данный лексический анал-тор на каж-м шаге просматривает по одному символукомпилируемой программы. Состояние, обозначенное символом Themдостигается, когда введено все это слово, т.к.задачей данного ав-та явл-ся распознование именно словаthem, то последнее состояние явл-ся единственным допускающим состоянием.

Т.о., дисциплина ТА явл-ся той теорит-ой базлй, кот-я лежит в основепостроения дискретных уст-в любой слож-ти и любого назначения, а также проектирования ПО, в частности компиляторов, распознователей и т.д.