Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Матлогики

.pdf
Скачиваний:
24
Добавлен:
09.05.2015
Размер:
862.21 Кб
Скачать

Доказательство. Утверждения б) и в) равносильны на основании предыдущей теоремы. Докажем равносильность утверждений а) и б).

а) б). Дано: . Покажем, что . Пусть

— такие конкретные высказывания, что

(6.1)

Тогда по равенству (1.2)

(6.2)

Отсюда по определению 1.3

(6.3)

Но поскольку по условию , то отсюда следует. что

. Следовательно, .

б) а). Дано: . Покажем, что .

Предположим, что справедливы все соотношения (6.3) для некоторых . Тогда имеет место соотношение (6.2), из которого на основании равенства (1.2) приходим к соотношению (6.1). Из последнего на основании условия заключаем:

. Но это и означает, что .

Два свойства логического следования

Свойства, формулируемые в теореме 6.5, используются для доказательства того, что какая­то формула является логическим следствием некоторых формул (см. пример 6.2).

Теорема 6.5. Отношение логического следования между формулами алгебры высказываний обладает следующими свойствами:

а) для ;

б) если для и , то

.

Доказательство. а) Фактически это свойство состоит в следующем: . Оно непосредственно вытекает из определения 6.1 логического следования и означает, что отношение логического следования рефлексивно.

б) В частном случае при данное свойство утверждает: если и , то

. Другими словами, отношение логического следования транзитивно. Докажем исходное утверждение. Строим таблицу истинности для всех формул, указанных в утверждении б), перечислив все пропозициональные переменные , входящие хотя бы в одну из этих формул.

Рассмотрим какую­нибудь строку этой таблицы, в которой каждая формула получает истинностное значение, равное 1. Тогда на основании условий каждая из формул

также принимает истинностное значение, равное 1. Следовательно, и имеет значение 1. Таким образом, для всякого набора истинностных значений переменных

, для которого каждая формула принимает значение 1,

формула Я также принимает значение 1. Это означает, что .

Теорема 6.6. Две формулы алгебры высказываний равносильны тогда и только тогда, когда каждая из них является логическим следствием другой:

и .

Доказательство. Необходимость. Дано: . По определению равносильности обе формулы и для любых конкретных высказываний

превращаются в высказывания и , которые одновременно либо оба истинны, либо оба ложны. А раз так, то каждое из высказываний

и

истинно для любых конкретных высказываний . Это означает, что и

, откуда, по теореме 6.3, и .

Достаточность. Дано: и . Тогда, по теореме 6.3, и . Поскольку формула всегда превращается в истинное высказывание и формула всегда превращается в истинное высказывание, то и их конъюнкция

является формулой, которая превращается в истинное высказывание всегда, т.е. . Но на основании теоремы 4.4, пункт ч),

Тогда по замечанию 4.7 имеем , а по теореме 4.2 . Итак, теорема доказана.

Многочленом Жегалкина называется многочлен, являющийся суммой константы 0 или 1 и

различных одночленов, в которые все переменные входят не выше, чем в первой степени:

, причем на каждом наборе <i1, …, ik> все аij (j = 1, …, k) различны, aj

О {0, 1}.

Теорема. Всякую булеву функцию можно представить единственным полиномом Жегалкина.

Многочлен Жегалкина можно получить различными способами. Остановимся на рассмотрении

построения многочлена Жегалкина с помощью треугольника Паскаля. Рассмотрим алгоритм на

примере.

Стрелка Пирса, обычно обозначаемая ↓, эквивалентна операции НЕ­ИЛИ (исключающее или)

Штрих Шеффера, обычно обозначаемый |, эквивалентен операции И­НЕ

(Таким образом, высказывание X | Y означает, что X и Y несовместны, т.е. не являются истинными одновременно)

обратная импликация (от b к a, )

если , то истинно (1), обратная импликация — отрицание (негация, инверсия) обнаружения увеличения (перехода от 0 к 1, инкремента).

Формальная теория считается определенной, если[2]:

1.Задано конечное или счётное множество произвольных символов. Конечные последовательности символов называются выражениями теории.

2.Имеется подмножество выражений, называемых формулами.

3.Выделено подмножество формул, называемых аксиомами.

4.Имеется конечное множество отношений между формулами, называемых правилами вывода.

Обычно имеется эффективная процедура, позволяющая по данному выражению определить, является ли оно формулой. Часто множество формул задаётся индуктивным определением. Как правило, это множество бесконечно. Множество символов и множество формул в совокупности определяют язык или сигнатуру формальной теории.

Чаще всего имеется возможность эффективно выяснять, является ли данная формула аксиомой; в

таком случае теория называется эффективно аксиоматизированной илиаксиоматической.

Множество аксиом может быть конечным или бесконечным. Если число аксиом конечно, то теория называется конечно аксиоматизируемой. Если множество аксиом бесконечно, то, как правило, оно задаётся с помощью конечного числа схем аксиом и правил порождения конкретных аксиом из схемы аксиом. Обычно аксиомы делятся на два вида: логические аксиомы (общие для целого класса формальных теорий) и нелогические или собственные аксиомы (определяющие специфику и содержание конкретной теории).

Для каждого правила вывода R и для каждой формулы A эффективно решается вопрос о том, находится ли выбранный набор формул в отношении R с формулой A, и если да, то Aназывается

непосредственным следствием данных формул по правилу R.

Выводом называется всякая последовательность формул такая, что всякая формула последовательности есть либо аксиома, либо непосредственное следствие каких­либо предыдущих формул по одному из правил вывода.

Формула называется теоремой, если существует вывод, в котором эта формула является последней.

Теория, для которой существует эффективный алгоритм, позволяющий узнавать по данной формуле, существует ли ее вывод, называется разрешимой; в противном случае теория называется

неразрешимой.

Теория, в которой не все формулы являются теоремами, называется абсолютно непротиворечивой.

Предика́т (n­местный, или n­арный) — это функция с множеством значений (или {ложь,

истина}), определённая на множестве . Таким образом, каждый набор элементов множества M характеризуется либо как «истинный», либо как «ложный».

Определение. Предикат Р(х1, х2, …, хn), заданный на множествах М1, М2, …, Мn, называется:

1.тождественно-истинным, если при любой подстановке вместо переменных х1, х2, …, хn любых конкретных предметов а1, а2, …, аn из множеств М1, М2, …, Мn

соответственно он превращается в истинное высказывание Р(а1, а2, …, аn);

2.тождественно-ложным, если при любой подстановке вместо переменных х1, х2, …, хn любых конкретных предметов из множеств М1, М2, …, Мn соответственно он превращается в ложное высказывание;

3.выполнимым (опровержимым), если существует, по крайней мере, один набор

конкретных предметов, при подстановке которого вместо соответствующих

переменных в предикат, последний обращается в истинное (ложное)

высказывание.

Множеством истинности Т предиката А(х) В(х), х Х является пересечение множеств истинности предикатов А(х) – Т1 и В(х) – Т2, т.е. Т= Т1 ∩Т2. Например: А(х): «х – четное число», В(х): « х кратно 3». А(х) В(х) – «х – четное число и х кратно 3». Т.е. предикат «х делится на 6».

Определение 1. Две формулы логики предикатов А и В называются равносильными на области М, если они принимают одинаковые значения при всех значениях входящих в них переменных, отнесенных к области М.

Определение 2. Две формулы логики предикатов А и В называютсяравносильными, если они равносильны на всякой области (обозначение: ).

Пусть даны два предиката и . Предикат является следствием предиката (), если область истинности содержится в

области истинности . Предикаты и равносильны, если их области истинности совпадают.

Предикаты, так же, как высказывания, принимают два значения: истинное и ложное, поэтому к ним применимы все операции логики высказываний. Рассмотрим применение операций логики высказываний к предикатам на примерах одноместных предикатов.

Логические операции[править | править исходный текст]

Конъюнкцией двух предикатов А(х) и В(х) называется новый предикат , который принимает значение «истина» при тех и только тех значениях х Т, при которых каждый из предикатов принимает значение «истина», и принимает значение «ложь» во всех остальных случаях. Множеством истинности Т предиката А(х) В(х), х Х является пересечение множеств истинности предикатов А(х) – Т1 и В(х) – Т2, т.е. Т= Т1 ∩Т2. Например: А(х): «х – четное число», В(х): « х кратно 3». А(х) В(х) – «х – четное число и х кратно 3». Т.е. предикат «х делится на 6».

Дизъюнкцией двух предикатов А(х) и В(х) называется новый предикат , который принимает значение «ложь» при тех и только тех значениях х Т, при которых каждый из предикатов принимает значение «ложь» и принимает значение «истина» во всех остальных случаях. Областью истинности предиката А(х) В(х) является объединение областей истинности предикатов А(х) В(х).

Отрицанием предиката А(х) называется новый предикат , который принимает значение «истина» при всех значениях х Т, при которых предикат А(х) принимает значение «ложь», если А(х) принимает

значение «истина». Множеством истинности предиката , х Х является дополнение Т' к множеству Т в множестве Х.

Импликацией предикатов А(х) и В(х) называется новый предикат А(х) В(х), который является ложным при тех и только тех значениях х Т, при которых А(х) принимает значение «истина», а В(х) – значение «ложь» и принимает значение «истина» во всех остальных случаях. Читают: «Если А(х), то В(х)».

Например. А(х): «Натуральное число х делится на 3». В(х): «Натуральное число х делится на 4», можно составить предикат: «Если натуральное число х делится на 3, то оно делится и на 4». Множеством истинности предиката А(х) В(х) является объединение множества Т2 – истинности предиката В(х) и дополнения к множеству Т1 истинности предиката А(х).

Квантор всеобщности (обозначения: , ) — это условие, которое верно для всех обозначенных элементов, в отличие от квантора существования, где условие верно только для каких­то отдельных элементов из указанного множества. Формально говоря, это квантор, используемый для обозначения того, что множество целиком лежит в области истинности указанного предиката. Читается как: «для всех…», «для каждого…» или «каждый…», «любой…», «для любого…».

В предикатной логике, квантор существования (экзистенциальный квантификатор) — это предикат свойства или отношения для, по крайней мере, одного элемента области определения. Он обозначается как символ логического оператора (произносится как «существует» или «для некоторого»). Квантор существования отличается от квантора всеобщности, который утверждает, что свойство или отношение выполняется для всех элементов области.

Существует модификация этого квантора как квантор существования и единственности — это предикат свойства или отношения для одного, и только для одного элемента области определения. Обозначается ! и читается «существует и единственный»

Вматематической логике приписывание квантора к формуле называется связыванием или

квантификацией.

Вмногозначных логиках также вводятся и другие кванторы, например, квантор плюральности (квантор Решера) (обозначается перевёрнутой M, читается «для большинства …»).

Понятие формулы логики предикатов

В логике предикатов используется следующая символика:

1. Символы р, q, r, ... – переменные высказывания, принимающие два значения: 1 – истина, 0 –

ложь.

2. Предметные переменные – х, у, z, ..., которые про​бегают значения из некоторого множества М: х0, у0, z0, ... – предметные константы, то есть значения пред​метных переменных.

3.Р(·), F(·) – одноместные предикатные перемен​ные; Q(·,·,...,·), R(·,·,...,·) – n-местные предикатные пе​ременные. Р0(·), Q0(·,·,…,·) – символы постоянных предикатов.

4.Символы логических операций: .

5.Символы кванторных операций: .

6.Вспомогательные символы: скобки, запятые.

Определение формулы логики предикатов.

1.Каждое высказывание как переменное, так и по​стоянное, является формулой.

2.Если F(·,·,...,·) – n-местная предикатная перемен​ная или постоянный предикат, а x1,х2, ..., хn – предмет​ные переменные или предметные постоянные, не обяза​тельно все различные, то F(x1, х2,..., хn) есть формула. В этой формуле предметные переменные являются свобод​ными. Формулы вида 1 и 2 называются элементарными.

3.Если A и B – формулы, причем такие, что одна и та же предметная переменная не является в

одной из них свя​занной, а в другой свободной, то слова есть формулы. В этих формулах те переменные, которые в ис​ходных формулах были свободными, являются свободны​ми, а те, которые были связанными, являются связанными.

4. Если А – формула, то – формула, и характер предметных переменных при переходе от

формулы А к формуле не меняется.

5. Если А(х) – формула, в которую предметная пере​менная х входит свободно, то слова

и являются формулами, причем предметная переменная в них входит связанно.

6. Никакая другая строка символов формулой не является.

Например, если Р(x) и Q(х,у) – одноместный и двухме​стный предикаты, а q, r – переменные высказывания, то формулами будут слова:

Не является формулой слово: . Здесь нарушено условие п.3, так как

в формулу переменная х входит связано, а в формулу Р(х) переменная х входит свободно.

Из определения формулы логики предикатов ясно, что всякая формула алгебры высказываний

является формулой логики предикатов.

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

Следующие формулы логики предикатов являются тавтологиями:

а)

;

б)

.

 

 

 

а)

;

б)

.

 

 

 

а)

 

 

 

;

 

 

 

б)

 

 

 

;

 

 

 

в)

 

;

 

г)

.

 

 

а)

 

;

б)

 

;

в)

 

;

г)

.

 

а)

;

б)

.

 

 

 

а)

 

 

;

 

 

б)

 

 

;

 

 

в)

 

 

 

.

 

Маши́на Тью́ринга (МТ) — абстрактный исполнитель (абстрактная вычислительная машина). Была предложена Аланом Тьюрингом в 1936 году для формализации понятия алгоритма.

Машина Тьюринга является расширением конечного автомата и, согласно тезису Чёрча — Тьюринга, способна имитировать всех других исполнителей (людей или других живых существ) (с помощью задания правил перехода), каким­либо образом реализующие процесс пошагового вычисления, в котором каждый шаг вычисления достаточно элементарен.

В состав машины Тьюринга входит бесконечная в обе стороны лента (возможны машины Тьюринга, которые имеют несколько бесконечных лент), разделённая на ячейки, иуправляющее

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

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

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

Машина Тьюринга называется детерминированной, если каждой комбинации состояния и ленточного символа в таблице соответствует не более одного правила. Если существует пара «ленточный символ — состояние», для которой существует 2 и более команд, такая машина Тьюринга называется недетерминированной.

Конкретная машина Тьюринга задаётся перечислением элементов множества букв алфавита A, множества состояний Q и набором правил, по которым работает машина. Они имеют вид: qiaj→qi1aj1dk (если головка находится в состоянии qi, а в обозреваемой ячейке записана буква aj, то головка переходит в состояние qi1, в ячейку вместо aj записывается aj1, головка делает движение dk, которое имеет три варианта: на ячейку влево (L), на ячейку вправо (R), остаться на месте (N)). Для каждой возможной конфигурации <qi, aj> имеется ровно одно правило (для недетерминированной машины Тьюринга может быть большее количество правил). Правил нет только для заключительного состояния, попав в которое машина останавливается. Кроме того, необходимо указать конечное и начальное состояния, начальную конфигурацию на ленте и расположение головки машины.

Вычислимые функции — это множество функций вида, которые могут быть

реализованы на машине Тьюринга. Задачу вычисления функции называюталгоритмически разрешимой или алгоритмически неразрешимой, в зависимости от того, возможно ли написать алгоритм, вычисляющий эту функцию.

В качестве множества обычно рассматривается множество — множество слов в

двоичном алфавите , с оговоркой, что результатом вычисления может быть не только слово, но и специальное значение «неопределённость», соответствующее случаю, когда

алгоритм «зависает». Таким образом, можно дать следующее определение :

где , а — специальный элемент, означающий неопределённость.

Роль множества может играть множество натуральных чисел, к которому добавлен элемент

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

В данном определении вместо исполнителя машин Тьюринга можно взять один из Тьюринг­полных исполнителей. Грубо говоря, «эталонным исполнителем» может быть некоторый абстрактный компьютер, подобный используемым персональным компьютерам, но с потенциально бесконечной памятью и особенностями архитектуры, позволяющими использовать эту бесконечную память.

Важно отметить, что множество программ для этого исполнителя (например, множество машин Тьюринга при фиксированном алфавите входных и выходных данных) счётно. Поэтому множество вычислимых функций не более чем счётно, в то время как множество функций вида

несчётно, если счётно. Значит, есть невычислимые функции, причёммощность их множества больше, чем мощность множества вычислимых функций. Примером невычислимой функции (алгоритмически неразрешимой проблемы) может быть функция определения остановки — функция, которая получает на вход описание некоторой машины Тьюринга и вход для неё, а возвращает 0 или 1 в зависимости от того, остановится данная машина на данном входе или нет. Еще одним примером невычислимой функции является колмогоровская сложность.

Реку́рсия — наличие в определении, описании, изображении какого­либо объекта или процесса самого этого объекта или процесса, то есть ситуация, когда объект является частью самого себя.

Определение понятия примитивно рекурсивной функции является индуктивным. Оно состоит из указания класса базовых примитивно рекурсивных функций и двух операторов (суперпозиции и примитивной рекурсии), позволяющих строить новые примитивно рекурсивные функции на основе уже имеющихся.

Кчислу базовых примитивно рекурсивных функций относятся функции следующих трёх видов:

Нулевая функция — функция без аргументов, всегда возвращающая 0.

Функция следования одного переменного, сопоставляющая любому натуральному