Лекция 1. Сущность предпринимательства и его виды
Каждый нормальный алгоритм (НА) является определенным процессом преобразования слов в некотором конечном алфавите и задается набором допустимых элементарных преобразований и правилами, определяющими порядок применения этих преобразований. При этом в качестве элементарного преобразования используется замена одного вхождения подслова в слове некоторым другим (или тем же словом). Всевозможные замены для заданного НА определяются его схемой, а последовательность проведения замен – схемой и некоторыми дополнительными соглашениями. Эти соглашения одни и те же для всех НА, а потому НА, по существу, однозначно определяются алфавитом и схемой.
Определение 1. Схемой нормального алгоритма
в алфавите

называется упорядоченная последовательность
(1)
слов
в алфавите
где
- слова в алфавите
, а
есть слово
или
При этом слово
схемы (1) называется ее
-й формулой с левой частью
и правой частью
.
Формула
называется простой, если
есть
и заключительной, если есть 
Действие НА
на слово
в алфавите
описывается следующим определением.
Определение 2. Пусть
- слово в алфавите
и хотя бы одно из слов
является его подсловом. Элементарным преобразованием слова
по нормальному алгоритму
со схемой (1) называется замена в
первого вхождения слова
с наименьшим номером
словом
Если результатом указанного элементарного преобразования является слово
то пишут
т. е.
или
.
Определение 3. Говорят, что НА
в алфавите
применим к слову
в алфавите
и перерабатывает его в слово
, если существует конечная последовательность слов
(2) 
в которой

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

перерабатывает любое слово
в себя, причем последовательность слов, соответствующая слову
имеет вид:
.
2. НА со схемой

не применим ни к одному слову. Последовательность, соответствующая слову
будет бесконечной:

3. НА
в алфавите
со схемой

приписывает к любому слову
слева слово
:

4. Построим НА
, приписывающий к любому слову
справа фиксированное непустое слово
Это сделать несколько сложнее, чем приписывание слова
слева. Для этого удобнее расширить алфавит
, добавив к нему одну новую букву
, и построить искомый НА в алфавите
(т. е. над
). Нетрудно проверить, что нужное нам преобразование будет осуществлять НА со схемой


……………..

Последовательность слов, соответствующая произвольному слову
в алфавите
, для этого НА имеет вид:

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

так, что вся схема запишется в виде:

Заметим, что, выполняя свою задачу приписывания к словам из
справа слова
, мы совсем не интересовались переработкой слов в алфавите
, содержащих букву
. Здесь алгоритм
будет действовать иначе. А именно, слово
в алфавите
, содержащее
вхождений буквы
, он будет перерабатывать в слово
где количество букв
будет равно
,
где
получается из
удалением всех вхождений буквы
(т. е.
есть проекция
в алфавит
).
5. Построим НА
, перерабатывающий любое слово
в перевернутое слово
Для этого добавим к
две новые буквы
и возьмем следующую схему
в алфавите 

Проследите в качестве упражнения, что
для любого слова
в алфавите
.
Приведем еще примеры НА над числами. Условимся натуральное число
записывать в виде
вертикальных палочек.
6. НА в алфавите
со схемой

осуществляет сложение натуральных чисел.
7. НА в алфавите
со схемой

осуществляет умножение натуральных чисел.
Лекция 1. Сущность предпринимательства и его виды
Дата добавления: 2014-12-02; просмотров: 904;
