veprus

Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Если математик, то тогда я буду говорить специальными терминами. У меня сейчас нет возможности посмотреть русскую литературу, поскольку далеко я от Родины, уверен лишь, что большую часть того, что я здесь сейчас скажу можно найти в учебнике "Математическая логика" Ершова и Палютина. И так. Формальная арифметика Пеано есть стандартное исчисление предикатов, плюс набор из 10 аксиом, коммутативность, ассоциативность, существование нуля, существование следующего и т.д. У нас есть набор констант (0), набор функциональных символов, набор переменных, набор предикатных символов. Определение терма. 1. Константа и переменная суть термы. 2. Если f - n-арный функциональный символ, и x_1,...,x_n - термы, то f(x_1,...,x_n) - терм. 3. Других термов нет. Определение предиката. 1. Любой терм является предикатом. 2. Если P - n-арный предикатный символ и x_1,...,x_n - термы, то P(x_1,...,x_n) - предикат. 3. Если x - переменная, P - предикат, то {forall}xP и {exist}xP - предикаты. 4. Других предикатов нет. Предикат считается истинным, если он выполним в данной модели (или, что тоже самое, если он выводим из данной системы аксиом) и ложным в противном случае. Частично-рекурсивные функции - это функции, получаемые из 3-х базовых с помощью операторов суперпозиции, минимизации и еще какого-то (названия не помню, да это и не важно). Поскольку все здесь строится очень конкретно, можно ввести нумерацию предикатов, переменных, функций и т.д. Не буду уже рассказывать как. Причем нумерацию взаимнооднозначную, совместно с декодирующей вычислимой функцией. Теорема Геделя. Не существует частично рекурсивной функции, которая по номеру предиката выдавала бы 0 в том случае, когда он истинный и 1, когда он ложный (немного вольная трактовка но смысл такой). В различных источниках доказывается эквивалентность частично-рекурсивных функций, машин Тьюринга, машин Проста. Кроме того, любой язык программирования имеет такую штуку (не помню как называется, нечто вроде логической схемы), которая полностью формально описывает язык и позволяет доказать, что он эквивалентен машинам Тьюринга. Я сам в свое время доказывал такую штуку для Паскаля и Пролога. Вообще пролог это в чистом виде исчисление предикатов и потому для него это все очень просто доказывается. К сожалению, мои студенческие лекции не доступны, а восстановить список литературы по памяти я уже не могу. Точно помню, что лекции на тему пролога были вообще по журналам и какой-то английской книге. Мораль: Машина НИКОГДА не сможет заменить человека даже в таком простом вопросе, как арифметика. И даже не просто арифметика, а полностью формализованная арифметика Пеано (вообще говоря, она поменьше, чем просто вся арифметика).
|