
- •1.2.2Замечание о кодировке входных и выходных значений алгоритмов
- •§ 1.3Вычислимые функции и разрешимые множества
- •1.3.1Вычислимые функции
- •1.3.2Разрешимые множества
- •§ 1.4Вопросы для самопроверки и задачи к §1.1 и 1.2
- •1.4.1Вопросы для самопроверки
- •1.4.2Задачи к §1.1 и 1.2
- •§ 1.5Исчисления алгоритмов
- •1.5.1Необходимость исчислений
- •1.5.2Методы построения исчислений алгоритмов
- •§ 1.6Марковские подстановки (нормальные алгоритмы)
- •1.6.1Алфавит и правила кодирования
- •1.6.2Элементарные шаги нормального алгоритма – подстановки
- •1.6.3Порядок выполнения подстановок и правила извлечения результатов
- •1.6.4Примеры нормальных алгоритмов
- •§ 1.7Машины Тьюринга (мт)
- •1.7.1Предварительное описание мт
- •1.7.2Описание исчисления мт
- •1.7.3Примеры вычисления функций с помощью мт
- •1.7.4Операции над машинами Тьюринга
- •1.7.4.1Метод первый. Суперпозиция двух мт
- •1.7.4.2Метод второй. Итерация мт
- •1.7.5Операторный язык для синтеза машин Тьюринга
- •§ 1.8Рекурсивное построение вычислимых функций
- •1.8.1Базисные функции и операторы
- •Монина Мария Дмитриевна, преподаватель двггу Классические идеи решения нестандартных задач Тема 1. Элементы теории делимости целых чисел
- •Тема 2. Доказательство от противного
- •Тема 3. Чётность
- •Тема 4. Обратный ход
- •Тема 5. Графы
- •Тема 6. Инварианты
- •Тема 7. Метод крайнего
- •Тема 8. Принцип Дирихле
- •Тема 9. Раскраски
- •Тема 10. Игры
- •Шмарин Сергей Владимирович, преподаватель пггпу олимпиадные планиметрические задачи
- •1. Вписанные углы
- •2. Замечательные точки треугольника
- •3. Вписанные и описанные четырехугольники
- •3.1 Критерии вписанного четырехугольника
- •3.1 Критерии описанного четырехугольника
- •4 Классические теоремы о коллинеарности трех точек
- •Упражнения
- •Разные задачи
§ 1.4Вопросы для самопроверки и задачи к §1.1 и 1.2
1.4.1Вопросы для самопроверки
Перечислите основные свойства алгоритмов.
Опишите условия, которым должны удовлетворять исполнители алгоритмов.
Какие из приведенных ниже последовательностей действий можно отнести к алгоритмам, а какие нельзя. Объясните почему?
Инструкция, направленная из разведцентра резиденту с указанием порядка встречи с прибывающим к нему на явку агентом.
Напечатанная на пакете инструкция по приготовлению супа из концентрата.
Программа для вычисления n!, написанная на одном из языков программирования.
Дайте определение вычислимой функции.
Чем частичная функция отличается от тотальной? приведите примеры.
Дайте определение разрешимого множества. Приведите примеры.
Дайте определение перечислимого множества. приведите примеры.
Что такое характеристическая функция множества?
При каком условии перечислимое множество является также разрешимым?
1.4.2Задачи к §1.1 и 1.2
Составьте алгоритмы вычисления следующих функций. (За образец оформления возьмите решение примеров 1.2.4 и 1.2.5)
Функция следования в двоичной системе счисления. (Указание: если последняя цифра числа равна 0, то ее нужно увеличить на 1 и остановить процесс, если последняя цифра 1, то ее заменяют на 0 и переходят на одну цифру влево. Чтобы этот процесс работал корректно, удобно вначале приписать к входному числу слева цифру 0. Если она не была использована, то по окончании работы алгоритма ее нужно стереть.)
Функция следования в десятичной системе счисления. (Смотри указание к задаче 1.)
Характеристическая функция множества четных чисел. (Указание: если последняя цифра числа четна, то характеристическая функция равна 1, иначе – 0.)
Характеристическая функция чисел, делящихся на 5. (Кодировка – десятичная.)
Функция
в унарной кодировке.
Функция в двоичной кодировке.
Функция в десятичной кодировке.
Функция
(По аналогии с примером 1.2.5.)
Составьте алгоритмы распознавания следующих множеств:
Множество чисел, кратных 10.
Множество простых чисел.
Множество троек чисел
, таких, что
.
Множество чисел, являющихся кубами некоторых натуральных чисел.
Укажите функции, порождающие следующие множества (докажите, что следующие множества перечислимы):
Множество натуральных чисел, которые при делении на m в остатке дают число r (r<m).
Множество натуральных чисел, которые являются разностями квадратов двух натуральных чисел.
Множество натуральных чисел, которые являются суммами кубов двух натуральных чисел.
§ 1.5Исчисления алгоритмов
1.5.1Необходимость исчислений
В предыдущих примерах мы использовали различные способы записи алгоритмов, особо не вдаваясь в описание свойств исполнителя, правил останова и другие тонкости. Для более детально и тщательного исследования свойств алгоритмов (вычислимых функций), нам необходимо давать детальное описание всех действий алгоритма, используя для этого специальный язык (исчисление). При этом возникает серьезная проблема:
Нужно показать, что с помощью данного языка (исчисления) можно записать алгоритм любой алгоритмически разрешимой задачи.
По аналогии с математической логикой, такое свойство исчислений будем называть полнотой.
На настоящее время ни для одного исчисления алгоритмов на прямую не доказано свойство полноты. С другой стороны, есть возможность качественного подтверждения этого факта.
Опять же в курсе математической логики рассматриваются различные модели некоторой аксиоматической теории и разрешение вопроса о полноте этой аксиоматической теории сводится к доказательству изоморфности всех ее моделей.
Мы поступим с исчислениями алгоритмов следующим образом. Рассмотрим большое количество примеров исчислений и покажем их изоморфность. Такой подход даст нам право предполагать, что все рассмотренные исчисления являются полными (обобщенный тезис Тьюринга).
В предположении о полноте исчислений алгоритмов мы, во второй главе, продолжим изучение свойств вычислимых функций.