- •Нижегородский государственный университет им. Н.И. Лобачевского
- •1.Предисловие
- •2.Замечания по терминологии
- •3.Кибернетика и информатика
- •4.Предпосылки информатики
- •4.1.Мечта человека об искусственном человеке
- •4.2.Усилители физической и умственной деятельности человека
- •4.3.Ключевые проблемы информатики
- •5.Формализация естественного языка как средства общения.
- •6.Формализация физических характеристик среды обитания
- •6.1.Дискретные и непрерывные множества
- •6.2. Понятия измерительной шкалы, числа и измерения
- •6.3.Натуральное число
- •6.4.Позиционная система счисления
- •6.5.Натуральная числовая прямая
- •6.6.Целые числа (положительные и отрицательные)
- •6.7.Вещественные числа
- •7.Формализация физических зависимостей
- •7.1.Функции
- •7.2.Элементарные функции
- •7.3.Элементарная алгебра, аналитические и численные вычисления
- •8.Аналоговые и цифровые вычислители
- •9.Простейшие вычислители
- •9.1.Аналоговые вычислительные линейки
- •9.2.Цифровой абак и русские счеты
- •9.3.Цифровые механические арифмометры
- •9.4.Хронология событий.
- •10.Аналитические машины Чарльза Беббиджа.
- •11.Формализация рассуждений
- •11.1.Логика рассуждений
- •11.2.Логические функции и алгебра логики
- •11.3.Алгебра логики и алгебра релейно - контактных схем
- •12.Накануне компьютерной эры
- •12.1. Зарождение цифровых систем управления
- •12.2.Перфокарточные сортировальные машины
- •12.3.Методология моделирования
- •13.Теоретические модели вычислений
- •13.1.Алгоритм и его свойства
- •13.2.Проблема слов в ассоциативном исчислении
- •13.3.Нормальный алгоритм Маркова
- •13.4.Рекурсивные функции
- •13.5.Машина Тьюринга
- •13.6.Равнодоступная адресная машина
- •14.Пионеры зарубежной компьютеризации
- •15.Становление информатики в России. Борьба за признание
- •16.Два типа электронных вычислительных машин
- •16.1.Аналоговая вычислительная машина (авм)
- •16.2.Цифровая электронная вычислительная машина (компьютер, эвм)
- •16.3.Аналог или цифра
- •17.Пионеры отечественной компьютеризации
- •18.Становление информатики в России. Начальный период
- •19.Оригинальные отечественные серийные эвм (компьютеры)
- •19.1.Эвм Стрела
- •Элементная база
- •Программное обеспечение
- •Описание машины
- •Технико-эксплуатационные характеристики
- •Особенности эвм
- •19.2.Семейство эвм "м-20"
- •Структура эвм
- •Элементная база
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •Особенности машины
- •Об использовании эвм м-20
- •Описание машины
- •Элементная база
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •Особенности эвм
- •19.3.Семейство эвм "бэсм"
- •19.3.1.Бэсм-1
- •Структура эвм
- •19.3.2.Бэсм-2
- •Структура эвм
- •19.3.3.Бэсм-4
- •Структура эвм
- •Элементная база
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •19.4.Семейство эвм "Минск"
- •19.4.1.Минск-1
- •19.4.2.Минск-2
- •19.4.3.Минск -22
- •19.4.4.Минск-23
- •19.4.5.Минск-32
- •Описание машины
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •Особенности эвм
- •19.5.Семейство эвм "Урал"
- •19.5.1.Урал-1, Урал-2, Урал-3, Урал-4
- •Описание машины
- •Элементная база
- •Программное обеспечение
- •Основные эксплуатационно-технические данные
- •Особенности эвм
- •19.5.2.Урал-11, Урал-14, Урал-16
- •Описание машины
- •Элементная база
- •Программное обеспечение.
- •Основные эксплуатационно-технические данные машины “Урал-11”
- •Особенности эвм
- •19.6.Эвм "Весна" и "Снег"
- •19.7.Эвм бэсм-6
- •Описание машины
- •Элементная база
- •Программное обеспечение
- •Технико-эксплуатационные характеристики
- •Особенности машины
- •19.8.Многопроцессорные вычислительные комплексы "Эльбрус"
- •Описание машины.
- •Элементная база
- •Программное обеспечение
- •Типовые комплектации
- •Производительность
- •19.9.Управляющие эвм
- •20.Эволюция элементарной базы и поколения эвм
- •20.1.Базисные логические элементы
- •20.2.Элементы регистровой памяти
- •20.3.Элементы памяти на магнитных сердечниках.
- •20.4.Интегральные схемы
- •20.5.Поколения эвм
- •21.Американская система ibm-360
- •22.Семейство Ряд "ес эвм"
- •22.1.Хронология создания
- •22.2.Ес эвм. Крупнейший промах или всеобщее счастье?
- •23.Автоматизация программирования
- •23.1.От двоичных кодов к ассемблерам - языкам символьного кодирования
- •Ассемблеры
- •Программы - загрузчики
- •23.2.Языки программирования высокого уровня
- •23.3.Трансляция программ
- •24.Первые компьютеры Сарова
- •25.Начало компьютеризации Нижегородского госуниверситета
- •26.Они были первыми
- •26.1.Конрад Цузе
- •26.2.А лан Тьюринг
- •26.3.Джон Маулчи и Джон Эккерт
- •26.4.Джон фон Нейман
- •26.5.А ксель Берг
- •26.6.В иктор Глушков
- •26.7.Сергей Лебедев
- •26.8.Исаак Брук
- •26.9.Николай Матюхин
- •26.10.Михаил Карцев
- •26.11.Юрий Базилевский
- •26.12. Башир Рамеев
- •26.13.Георгий Лопато
- •26.14. Всеволод Бурцев
- •27.Приложения
- •27.1.Основные черты кибернетики
- •27.1.1.Общенаучное значение кибернетики
- •27.1.2.Электронные счетные машины и нервная система
- •27.1.3.Прикладное значение кибернетики
- •27.2."Сигнал" Игоря Полетаева
- •27.3.Хронология компьютеростроения
- •Литература
- •Оглавление
13.3.Нормальный алгоритм Маркова
Предложенное А.А. Марковым определение нормального алгоритма конкретизирует правила подстановки ассоциативного исчисления.
Примечание. А.А. Марков употреблял термин "алгорифм".
Алгоритмом в алфавите А, по определению А.А. Маркова, называется всякое общепонятное точное предписание, определяющее потенциально осуществимый процесс над словами из алфавита A, допускающий любое слово в качестве исходного и последовательно определяющий новые слова в этом алфавите.
I. Алгоритм применим к некоторому слову P, если, отправляясь от этого слова и действуя согласно предписанию, мы получим через конечное число шагов некоторое новое слово Q, на котором процесс оборвется. Принято говорить, что алгоритм перерабатывает P в Q.
Пример алгоритма. Перепиши заданное слово, начиная с конца. Полученное слово есть результат. Останов.
Определение I слишком широко: уточнение понятия алгоритма связано с использованием аппарата подстановок, т.е. с понятием ассоциативного исчисления.
Будем считать, что алгоритм в алфавите A задается в виде некоторой системы допустимых подстановок, дополненной общепонятным точным предписанием о том, в каком порядке и как нужно применять допустимые подстановки, и когда наступает останов.
Предыдущие два определение расплывчаты, что такое "общепонятное указание"?
Марков дал определение нормального алгоритма, зафиксировав порядок использования подстановок.
Задается алфавит A и фиксируется система подстановок.
Исходя из произвольного слова P' в алфавите A, просмотреть формулы подстановок в том порядке, в каком они заданы в схеме, разыскивая первую формулу с левой частью, входящей в P'.
Если такой формулы не найдется - процесс останавливается.
В противном случае берется эта первая формула и делается подстановка ее правой части вместо первого вхождения ее левой части в P'. Получается P''.
P'=XY XY=P'' (42)
Повторение 2 для слова P''.
Процесс обрывается в двух случаях:
получается такое слово Pn, что ни одна из левых частей формул схемы в него не входит;
при получении нового слова применяется последняя формула.
Пример нормального алгоритма сложения.
Числа представляются в "примитивной системе счисления" – величина числа представляется количеством единиц в записи числа.
A = {1,+} алфавит I:{1+ +1; правила подстановки
+1 1;
1 1}
P = 1111+11+111
1 |
1 |
1 |
1 |
+ |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
1 |
+ |
1 |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
+ |
1 |
+ |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
+ |
+ |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
|
+ |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
|
|
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
|
|
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Еще две системы подстановок определяющие алгоритмы эквивалентные приведенному алгоритму сложения:
II: {+ } III: {1+ +1;
++ +
+ }
Гипотеза Маркова: всякий алгоритм в алфавите A эквивалентен некоторому нормальному алгоритму в этом же алфавите.
Говоря другими словами, функция вычислима, если для нее может быть построен нормальный алгоритм.
[Айзерман, Л.А. Гусев и др.Гос. изд-во ф.м. л-ры, М.: 1960]
