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

Математическая логика, теория алгоритмов, теоретические основы информатики

  1. Алгебра высказываний как модель алгебры Буля, ее аксиоматическое задание. Принцип двойственности и теорема двойственности.

  2. Проблема разрешимости (разрешения) для класса однотипных задач. Проблема разрешимости в алгебре высказываний и способы их разрешения.

  3. Высказывательные формы (предикаты). Способы их задания. Логические операции над предикатами.

  4. Неформальное понятие алгоритма. Общие свойства алгоритмов. Графические средства для описания алгоритмов.

  5. Формальное определение понятия алгоритма в виде машин Тьюринга. Вычисления на машинах Тьюринга. Тезис Тьюринга - Черча. Проблема самоприменимости.

  6. Рекурсивные функции, рекурсивные множества. Тезис Черча. Итерация одноместных функций и доказательная база к ней.

  7. Система счисления с произвольным основанием. Перевод из одной системы счисления в другую. Операции над числами в системах счисления с произвольным основанием.

  8. Основные понятия теории кодирования. Оптимальный код Шеннона-Фано.

  1. Алгебра высказываний как модель алгебры Буля, ее аксиоматическое задание. Принцип двойственности и теорема двойственности.

Алгеброй Буля называется непустое множество, содержащее, по крайней мере, два элемента и замкнутое относительно 2-ух бинарных операций: /\ и \/, удовлетворяющих законам: коммутативности, ассоциативности, дистрибутивности конъюнкции относительно дизъюнкции и дизъюнкции относительно конъюнкции, идемпотентности, сокращения, поглощения, противоречия для конъюнкции и исключения третьего для дизъюнкции, законам де Моргана, и одной унарной операции - ¬, удовлетворяющей закону двойного отрицания.

<M; /\, \/, ¬ > - пример алгебры Буля.

Алгебра высказываний <V; /\, \/, ¬> также является примером алгебры Буля.

Определение 1

Алгебра - структура, где берется непустое множество, на котором заданы какие-то конкретные операции, притом множество замкнуто относительно этих операций.

Примеры:

  1. <N; +, *> - арифметика натуральных чисел;

  2. <Z; +, *> - кольцо целых чисел;

  3. <V; /\, \/, ¬ > - алгебра высказываний.

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

Определение 2

Высказыванием называется законченное повествовательное предложение, для которого можно сказать истинно оно или ложно.

Высказывание не может быть одновременно и истинным, и ложным.

Высказывания

атомарные (неделимые)

или элементарные, исходные

сложные

(составные)

Конкретные атомарные высказывания обозначают начальными заглавными буквами латинского алфавита или теми же буквами с индексами внизу: A, B, C, D, ..., Ai, Bi, Ci, ..., где i Є N.

Из элементарных высказываний с помощью операций над высказываниями или логических связок строят сложные высказывания.

Операции над высказываниями:

1. Операция конъюнкции ( /\ ).

Конъюнкцией двух высказываний, А и В, называется новое высказывание, обозначаемое (A /\ B), которое истинно тогда и только тогда, когда высказывания A и B истинны одновременно, и ложно во всех остальных случаях. Конъюнкции соответствует логическая связка "и". Запись (A /\ B) читается: A и B; A конъюнкция B.

2. Операция дизъюнкции ( \/ ).

Дизъюнкцией двух высказываний, А и В, называется новое высказывание, обозначаемое (A \/ B), которое истинно только тогда, когда истинно, по крайней мере, одно из высказываний, A или B, и ложно в единственном случае, когда оба высказывания, А и В, ложны. Дизъюнкции соответствует связка "или". Запись (A \/ B) читается: A или B; A дизъюнкция B.

3. Операция следования или импликации ( → )

Импликацией (следованием) двух высказываний, А и В, называется новое высказывание, обозначаемое (A → B), которое ложно тогда и только тогда, когда A - истинно, а B - ложно, во всех остальных случаях высказывание (A→B) истинно.

В высказывании (A → B) A - называется посылкой или антецедентом, B - следствием или консеквентом.

Из определения импликации следует, что если посылка A - ложна, то значение (A → B) истинно при любом значении следствия B, то есть изо лжи может следовать что угодно.

Импликация (A → B) в разговорной речи имеет несколько разночтений:

  • если A, то B;

  • из A следует B;

  • A влечет B;

  • B следует из A;

  • A достаточно для B;

  • B необходимо для A.

4. Операция эквивалентности ( ↔ )

Эквивалентностью двух высказываний, A и B, называется новое высказывание, обозначаемое (A ↔ B), которое имеет значение ложь тогда и только тогда, когда A - истинно, а B - ложно или A - ложно, а B - истинно. А значение истина тогда и только тогда, когда одновременно оба высказывания, A и B, либо истинны, либо ложны.

Эквивалентность (A ↔ B) в разговорной речи имеет несколько разночтений:

  • A необходимо и достаточно для B

  • A тогда и только тогда, когда B;

  • A эквивалентно B;

  • A равносильно B;

  • из A следует B , а из B следует A.

5. Операция отрицания ( ¬ )

Отрицанием высказывания A называется новое высказывание, обозначаемое ¬A, которое истинно тогда и только тогда, когда ложно A, и ложно тогда и только тогда, когда A истинно.

Отрицанию соответствует логическая связка "не". Запись ¬A читается: не А; неверно, что А.

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

Двойственность

Принцип двойственности впервые был высказан французом по фамилии Понселе. Наблюдается в проективной плоскости (прямая - точка), в пространстве (точка - плоскость).

Будем говорить, что операция конъюнкции ( /\ ) двойственна операции дизъюнкции ( \/ ) и наоборот: операция дизъюнкции двойственна операции конъюнкции; константа "Л" двойственна константе "И" и наоборот: константа "И" двойственна константе "Л".

Определение 1

Формулы α и α* называются двойственными, если одна из них получается из другой заменой констант "И" и "Л" на двойственные им константы "Л" и "И" соответственно, и каждой операции /\ на двойственную ей операцию \/ , а \/ - на операцию /\.

Примеры:

двойственные формулы

α

α*

(X \/ ¬Y) /\ Z

(X /\ Y) \/ Z

[(A \/ B) /\ C] \/ (A /\ B /\ C)

[(A /\ B) \/ C] /\ (A \/ B \/ C)

(A /\ B) \/ (A /\ B)

(A \/ B) /\ (A \/ B)

Очевидно, что для каждой формулы α существует двойственная ей формула α*. Также ясно, что (α*)* ≡ α, т.е. двойственной формулой по отношению к двойственной формуле α есть сама формула α.

Теорема 1.

Если α(X1, X2, ..., Xn) и α*(X1, X2, ..., Xn) двойственные формулы, то отрицание формулы α(X1, X2, ..., Xn) равносильно формуле, полученной из α*( X1, X2, ..., Xn) с помощью замены всех переменных на их отрицание, т.е. ¬α(X1, X2, ..., Xn) ≡ α*X1, ¬X2, ..., ¬Xn).

Доказательство очевидно.

Пример:

Пусть α (X, Y, Z) ≡ (X \/ ¬Y) /\ Z, тогда α*(X, Y, Z) ≡ X /\ ¬Y \/ Z,

¬α(X, Y, Z) ≡ ¬((X \/ ¬Y) /\ Z) ≡ ¬(X \/ ¬Y) \/ ¬Z ≡ ¬X /\ ¬(¬Y) \/ ¬Z ≡

≡ ¬X /\ Y \/ ¬Z,

α*(¬X, ¬Y, ¬Z) ≡ ¬X /\ ¬(¬Y) \/ ¬Z ≡ ¬X /\ Y \/ ¬Z.

Следовательно, ¬α(X, Y, Z) ≡ α*(¬X, ¬Y, ¬Z).

Теорема двойственности (закон двойственности)

Если формулы β(X1, X2, ..., Xn).и α(X1, X2, ..., Xn) равносильны, то двойственные им формулы β*( X1, X2, ..., Xn).и α*( X1, X2, ..., Xn) тоже равносильны.

β(X1, X2, ..., Xn). ≡ α(X1, X2, ..., Xn)

β*(X1, X2, ..., Xn). ≡ α*( X1, X2, ..., Xn)

Доказательство.

По условию доказываемой теоремы:

β(X1, X2, ..., Xn). ≡ α(X1, X2, ..., Xn) (1).

По условию теоремы 2: β*(¬X1, ¬X2, ..., ¬Xn) ≡ ¬β(X1, X2, ..., Xn), откуда

β*(¬(¬X1), ¬(¬X2), ..., ¬(¬Xn)) ≡ ¬β(¬X1, ¬X2, ..., ¬Xn), следовательно

β*(X1, X2, ..., Xn) ≡ ¬β(¬X1, ¬X2, ..., ¬Xn) (2).

Аналогично, α*(X1, X2, ..., Xn) ≡ ¬α(¬X1, ¬X2, ..., ¬Xn) (3).

Из (1) следует, что ¬β(X1, X2, ..., Xn). ≡ ¬α(X1, X2, ..., Xn), откуда

¬β(¬X1, ¬X2, ..., ¬Xn). ≡ ¬α(¬X1, ¬X2, ..., ¬Xn) (4). По свойству равносильности [β*(X1, X2, ..., Xn) и α*(X1, X2, ..., Xn) равносильны соответственно выражениям ¬β(¬X1, ¬X2, ..., ¬Xn).и ¬α(¬X1, ¬X2, ..., ¬Xn), которые являются равносильными] β*(x1, x2, ..., xn). ≡ α*(x1, x2, ..., xn), что и требовалось доказать.

Закон двойственности "наполовину уменьшает работу математикам": если уже доказана некоторая равносильность, то справедливость другой, полученной из первой двойственными преобразованиями, уже не нужно доказывать, она будет выполняться.

Примеры:

  1. Известно, что A \/ (A /\ B) ≡ A. Тогда двойственную ей формулу: A /\ (A \/ B) ≡ A уже не нужно доказывать.

  2. Т.к. (A \/ B) /\ (¬A \/ ¬B) ≡ (A /\ ¬B) \/ (B /\ ¬A), то двойственная ей формула: A /\ B \/ ¬A /\ ¬B ≡ (A \/ ¬B) /\ (B \/

\/ ¬A) не требует доказательства.

  1. Проблема разрешимости (разрешения) для класса однотипных задач. Проблема разрешимости в алгебре высказываний и способы их разрешения.

Проблема разрешения

Рассмотрим множество каких-нибудь однотипных задач, например задачи на решение системы m линейных уравнений с n неизвестными, где m, n - произвольные натуральные числа. Для этой серии задач можно поставить следующий вопрос: Существует ли метод, по которому решаются все задачи данной серии? Причем этот метод должен быть одинаковым для любой задачи серии. Поставленная задача носит название проблемы разрешения.

Например, для системы m уравнений с n неизвестными существует несколько способов решения: метод Гаусса, метод Крамера. Значит, для системы m линейных уравнений с n неизвестными проблема разрешения разрешима.

Если для серии М однотипных задач единый метод решения (алгоритм) существует, то говорят, что для этой серии М проблема разрешения решена и разрешима.

Если же доказано, что единого метода решения задач из серии М не существует, то говорят, что для данной серии задач проблема разрешения решена и неразрешима.

Если для серии М однотипных задач единый метод решения не найден, и не доказано, что такого метода не существует, то говорят, что для данной серии М задач проблема разрешения не решена (открыта).

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

Точное определение проблемы разрешения можно будет дать только после строгого математического определения понятия алгоритм. Такое определение существует, оно появилось в 30-ых годах XX-ого века.

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

Появление новой отрасли в математике - математической логики и теории алгоритмов сделало возможным решать такие задачи, т. е. доказывать, что они не разрешимы в рамках данной аксиоматической теории.

Проблема разрешения для алгебры высказываний.

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

В самом деле, если ¬φ тождественно истинная формула, то φ тождественно ложная, т. е. невыполнима.

Если же ¬φ не тождественно истинная формула, то φ - выполнима.

Известно, что проблема разрешения для алгебры высказываний разрешима. Существуют два способа ее разрешения:

  1. Поскольку формулы алгебры высказываний конечнозначны, то их можно проверить по таблице, составленной для каждой формулы отдельно. Правда это может быть очень долгим занятием, ведь если формула содержит n элементарных высказываний, то нужно определить значения функции для 2n наборов.

  2. Приводим формулу алгебры высказываний к конъюнктивному нормальному виду. Если каждая элементарная дизъюнкция К.Н.Ф. содержит пару, состоящую из какого-нибудь высказывания и его отрицания, то эта формула тождественно истинна. Если нет - то не тождественно истинна.

Алгоритм проблемы выполнимости:

  1. Берем формулу ¬φ.

  2. Приводим ¬φ к К.Н.Ф. и узнаем, является ли ¬φ тождественно истинной или нет.

  3. Если формула ¬φ тождественно истинна, то φ невыполнима, если же ¬φ не тождественно истинна, то φ выполнима.

  1. Высказывательные формы (предикаты). Способы их задания. Логические операции над предикатами.

Часто мы сталкиваемся с такими выражениями, которые имеют форму высказываний, но содержат предметные переменные некоторых множеств. Например, “x-простое число”. Такие выражения легко получить из любого высказывания, заменив в нём обозначения предметов, предметными переменными множеств. Если в таком выражении предметные переменные заменить каким-либо элементом (конкретным) множества, то снова получится высказывание.

Предикат – это повествовательное законченное предложение, содержащее в себе один или несколько символов переменных величин, истинностное значение которого зависит от этих переменных величин : при конкретных значениях переменных он превращается в высказывание, которое может оказаться или истинным или ложным.

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

Пример: Наполеон – француз. Пусть М - множество всех земных людей. xM. Слово Наполеон заменим предметной переменной x из М и получим “x-француз”. Это высказывание при одних элементах из М будет истинным, а при других – ложным. “Сократ – француз” – ложно. “Де Бальзак - француз” – истинно.

Другой пример: 2 – простое число. М – множество натуральных чисел. xM. “x – простое число”. В обоих этих случаях мы получим функции, определённые на некотором множестве М и со значениями И. или Л. Такие функции называются функциями-высказываниями или предикатами.

Определение 1

n- местным предикатом, определённым на некотором множестве М называется выражение, которое всякому упорядоченному набору элементов <x1,…, xn > из М ставит в соответствие И или Л.

Обозначается: P (x1,…, xn),

А (x1,…, xn).

Если зафиксировать все переменные: x1=a1,…, xn=an, то предикат обращается в высказывание: P (а1,…, аn), А (а1,…, аn).

Пример:

1). Высказывание 3 < 2. Заменим 3 переменной х, получим x < 2, которое в области действительных чисел истинно тогда и только тогда, когда число меньше двух. Получим одноместный предикат x < 2. Заменим 2 переменной y:

x < y – двуместный предикат.

2). x2 + y2 = 2*x*y – истинно только при x = y

Множество M назовём полем, и его элементы будем обозначать последними буквами латинского алфавита: x, y, z, … ,x1, y1 … . Эти символы неопределенных элементов и называются предметными переменными.

Начальные буквы латинского алфавита a, b, c, … , a1, b1… будут обозначать конкретные элементы из М и называется индивидуальными предметами.

A, B, C, … , U, V – обозначают элементарные высказывания. Выражения F(x), F(x, y), A(x, y , u), P (x1,…, xn) будут обозначать предикаты. Но F(a), F(a, b), A(a, a , b), P (a1,…, an) уже будут элементарными высказываниями. Они же иногда называются значением соответствующего предиката.

Определение 2

Два n- местных предиката P1 (x1,…, xn), P2 (x1,…, xn) называются равносильными, если их значения на данном поле М совпадают.

Пример: x > 2 и предикат x – 2 > 0 равносильны.

Определение 3

Предикат P1 (x1,…, xn) называется:

а) тождественно истинным, если его значение для любого набора из М истина;

б) тождественно ложным, если при любых наборах (x1,…, xn) из М она принимает значение ложь.

Пример: x2 + 2 < 0.

в) выполнимым, если существует по меньшей мере один набор (x10,…, xn0) из М, то Р(x10,…, xn0) = И.

Имеют место очевидные теоремы:

Теорема 1

Любые два n- местные тождественно истинные предикаты, определённые на одном и том же множестве, и любые два n- местные тождественно ложные предикаты, определённые на одном и том же множестве равносильны между собой.

Обратная теорема

Любой предикат равносильный тождественно истинному предикату будет тождественно истинным. Любой предикат равносильный тождественно ложному предикату - тождественно ложным.

Определение 4

Множеством истинности предиката P(x1,…, xn), определённого на некотором множестве М, называется совокупность <x1,…, xn> из М, для которых значение Р есть истина и обозначается:

Ep ={(x1,…, xn) | P (x1,…, xn)}.

Например, пусть N – натуральные числа, тогда

{x | x < 10} = {1, 2, …, 9}

{<x, y> | x + y = 3} = {(0,3), (1,2),(2,1),(3,0)}.

Теорема 2

Множества истинности предикатов Р1(n) и Р2(n), определённых на множестве М, совпадают тогда и только тогда, когда Р1(n) Р2(n).

Р1(n) Р2(n) = Ep1 = Ep2

Рассмотрим все предикаты, определённые на множестве М. Область истинности каждого предиката является некоторое подмножество из М, причем, равносильным предикатам соответствует одно и то же подмножество. Верно и обратное утверждение: каждое подмножество множества М можно рассматривать как область истинности некоторого предиката. Т. е. между множеством одноместных предикатов, определённых на множестве М и совокупностью его подмножеств устанавливается взаимооднозначное соответствие.

Соседние файлы в папке Вопросы и ответы нах