Normalnye_algoritmy_markova.ppt
- Количество слайдов: 33
Тема: Нормальные алгоритмы Маркова LOGO Презентацию подготовили: Губин Евгений, Павлова Алина Б-ИНФ
Марковские подстановки LOGO
Теория нормальных алгоритмов была разработана советским математиком Андреевичем Марковым в конце 1940 -х годов. Андрей Андреевич Марков (младший) (22. 09. 190311. 10. 1979) – советский математик, сын известного русского математика А. А. Маркова, основоположник советской школы конструктивной математики, автор понятия нормального алгоритма (1947 г. )
Эти алгоритмы представляют собой некоторые правила по переработке слов в каком-либо алфавите При этом исходные данные и результат работы алгоритма являются словами в этом алфавите
Алфавитом будем называть любое непустое множество. Его элементы называются буквами, а любая последовательность букв – словами в данном алфавите Для удобства рассуждений допускается пустое слово, которые обозначим Слова будем обозначать буквами Р, Q, R и с индексами
Рассмотрим упорядоченную пару слов (Р, Q) Марковской подстановкой (Р, Q) называется следующая операция над словами: в заданном слове R находят первое вхождение слова Р и, не изменяя остальных частей слова R, заменяют в нем это вхождение словом Q
Замечание: 1) Полученное слово называется результатом применения марковской подстановки (Р, Q) к слову R 2) Если первого вхождения слова Р в слово R нет (и, следовательно, вообще нет ни одного вхождения Р в R), то считается что марковская подстановка (Р, Q) не применима к слову R
Частными случаями марковских подстановок являются подстановки с пустыми словами: ( , Q), (P, ), ( , )
Для обозначения марковской подстановки (Р, Q) используют запись Р Q Эту запись называют формулой подстановки (Р, Q) Различают простые подстановки Р Q и заключительные подстановки Р . Q
Пример Данное слово: 521421 Подстановка: 21 3 Результат подстановки: 53421
Пример Данное слово: 521421 Подстановка: 21 Результат подстановки: 5421
Пример Данное слово: 521421 Подстановка: 25 7 Результат подстановки: Не применима
Нормальные алгоритмы и их применение к словам LOGO
Упорядоченный конечный список формул подстановок в алфавите А называется схемой нормального алгоритма в А
Для задания нормального алгоритма необходимо определить: - алфавит (к словам в котором алгоритм будет применяться) - схему алгоритма
Процесс применения нормального алгоритма к произвольному слову представляет собой дискретную последовательность элементарных шагов (тактов)
Шаг работы нормального алгоритма Пусть R - слово, полученное на предыдущем шаге работы алгоритма (или исходное слово, если текущий шаг является первым). 1) Если в схеме алгоритма среди формул подстановки нет такой, левая часть которой входила бы в R, то работа алгоритма считается завершённой, и результатом этой работы считается слово R 2) Если в схеме алгоритма имеются формулы подстановки, левые части которых входят в R, то к слову R применяется марковская подстановка, соответствующая первой такой формуле в схеме
Замечание 1) Процесс работы нормального алгоритма считается завершенным, если на данном шаге была применена заключительная формула подстановки или ни одна подстановка схемы не подходит 2) Может оказаться, что процесс подстановок не может остановиться. В этом случае – алгоритм не применим к исходным данным.
Пример , R = Результат работы алгоритма:
Пример ab bd, db ba, bba abb, c R = abbc Результат работы алгоритма: abbc bdbc bbac abbc … Алгоритм не применим к слову abbc
Пример ab bd, db ba, bba abb, c R = cdbacab Ответ: bbddd
Нормально вычислимые функции и принцип нормализации Маркова LOGO
Если А и В два алфавита, причем А В, то алфавит В называется расширением алфавита А
Функция f, заданная на некотором множестве слов алфавита А, называется нормально вычислимой, если найдется такое расширение В данного алфавита А (А В) и такой нормальный алгоритм в В, что каждое слово R (в алфавите А) из области определения функции f этот алгоритм перерабатывает в слово f(R)
Пример 1: f(x) = x + 1, A = {1} Схема алгоритма: . 1 Исходные данные: R = 111 Результат работы алгоритма: 1111
Пример 2: A = {1} Предложить схему нормального алгоритма
Пример 3: f(x) = x + 1, A = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} R = 234 R = 239 R = 299 R = 537. Результат работы алгоритма: 537 a 537 5 a 37 53 a 7 537 a 537 b 538
Замечание В примере 1 и примере 2 алгоритм построен в алфавите А В примере 3 алгоритм построен в расширении В алфавита А, где В=А {a, b}
Принцип нормализации Маркова Для нахождения значений функции, заданной в некотором алфавите, тогда и только тогда существует какой-нибудь алгоритм, когда функция нормально вычислима
Принцип нормализации Маркова Сформулированный принцип носит внематический характер (аналогично тезису Тьюринга и тезису Черча) и не может быть строго доказан. Он выдвинут на основе математического и практического опыта.
§ Спасибо за внимание!
Normalnye_algoritmy_markova.ppt