| СОДЕРЖАНИЕ РАЗДЕЛА |
- Логические выражения и логические операции
- Законы логики и преобразование логических выражений
- Конъюнкция - логическое умножение
- Дизъюнкция - логическое сложение
- Инверсия - отрицание
- Логическое следование (импликация)
- Эквивалентность (логическое тождество)
- Построение таблиц истинности и логических функций
- Построение логической функции по ее таблице истинности
- Основы математической логики.
- Пример 1 (упрощение формул)
- Пример 2 (упрощение формул)
- Вопросы для самопроверки
Логические выражения и логические операции
Простым высказыванием называют повествовательное предложение, относительно которого имеет смысл говорить, истинно оно или ложно. Считается, что каждое высказывание либо истинно, либо ложно и ни одно высказывание не может быть одновременно истинным и ложным.
Примеры высказываний:
- 1) Площадь круга равна S = π·r2, где r есть радиус круга (высказывание истинно);
- 2) Волга впадает в Каспийское море (высказывание истинно);
- 3) Число 12 является простым числом (высказывание ложно).
- 4) Выражение x + 1 = x + 1 является уравнением (высказывание ложно).
- 5) Уравнения x2 = x и x = 1 является равносильными (высказывание ложно).
- 6) Уравнения sin x = cos x и tg x = 1 является равносильными (высказывание истинно).
С помощью высказываний устанавливаются свойства, взаимосвязи между объектами. Высказывание истинно, если оно адекватно отображает эту связь, в противном случае оно ложно.
В математической логике не рассматривается конкретное содержание высказывания, важно только, истинно оно или ложно. Поэтому высказывание можно представить некоторой переменной величиной, значением которой может быть только 0 или 1. Если высказывание истинно, то его значение равно 1, если ложно - 0.
Простые высказывания назвали логическими переменными, а сложные - логическими функциями. Значения логической функции также только 0 или 1. Для простоты записи высказывания обозначаются латинскими буквами А, В, С. Понятие истинности и ложности высказывания определяется и ограничивается знаниями о высказываемом "на данный момент". И это одпереляет относительность понятия истинности или ложности.
Простым высказываниям ставятся в соответствие логические переменные, значение которых равно 1, если высказывание истинно, и 0, если высказывание ложно. Обозначаются логические переменные, большими буквами латинского алфавита.
Законы логики и преобразование логических выражений
| Истина | И | True | T | 1 |
| Ложь | Л | False | F | 0 |
С помощью логических переменных и символов логических операций любое высказывание можно формализовать, то есть заменить логической формулой (логическим выражением).
Логическое выражение - это символическая запись высказывания, состоящая из логических величин (констант или переменных), объединенных логическими операциями (связками).
Связки "НЕ", "И", "ИЛИ" заменяются логическими операциями инверсия, конъюнкция, дизъюнкция. Это основные логические операции, при помощи которых можно записать любое логическое выражение.
Конъюнкция - логическое умножение
Конъюнкция - логическое умножение:
- в естественном языке соответствует союзу «И»;
- в алгебре высказываний обозначение «&»;
- в языках программирования обозначение «And».
В алгебре множеств конъюнкции соответствует операция пересечения множеств, т.е. множеству получившемуся в результате умножения множеств А и В соответствует множество, состоящее из элементов, принадлежащих одновременно двум множествам.
| Таблица истинности | Диаграмма Эйлера-Венна | |||||||||||||||
|
![]() |
Дизъюнкция - логическое сложение
- в естественном языке соответствует союзу «ИЛИ»;
- в алгебре высказываний обозначение " + " или " + ";
- в языках программирования обозначение «Or».
В алгебре множеств дизъюнкции соответствует операция объединения множеств, т.е. множеству получившемуся в результате сложения множеств А и В соответствует множество, состоящее из элементов, принадлежащих либо множеству А, либо множеству В.
| Таблица истинности | Диаграмма Эйлера-Венна | |||||||||||||||
|
![]() |
Инверсия - отрицание
- в естественном языке соответствует словам "неверно, что..." и частице " не " ;
- в алгебре высказываний обозначение " ¬ " или " - ";
- в языках программирования обозначение " Not ".
В алгебре множеств логическому отрицанию соответствует операция дополнения до универсального множества, т.е. множеству получившемуся в результате отрицания множества А соответствует множество, дополняющее его до универсального множества.
| Таблица истинности | Диаграмма Эйлера-Венна | ||||||
|
![]() |
Логическое следование (импликация)
| A | B | A –> B |
| 1 | 1 | 1 |
| 1 | 0 | 0 |
| 0 | 1 | 1 |
| 0 | 0 | 1 |
Пример. Дано сложное высказывание: "Если тело перестаёт двигаться равномерно и прямолинейно, то это результат воздействия на тело двугих тел". Требуется записать его в виде логической формулы. Обозначим через А простое высказывание "тело перестаёт двигаться равномерно", через В - "тело перестаёт двигаться прямолинейно", С - "это результат воздействия на тело двугих тел". Тогда логической формулой этого сложного высказывания будет : A & B –> C.
Эквивалентность (логическое тождество)
| A | B | A<–>B |
| 1 | 1 | 1 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
| 0 | 0 | 1 |
- T– его температура не меняется;
- m – его масса не меняется;
- И – газ является идеальным;
- S – процесс изменения является изотермическим
Построение таблиц истинности и логических функций
Любая логическая функция может быть задана с помощью таблицы истинности, в левой части которой записывается набор аргументов, а в правой части - соответствующие значения логической функции. При построении таблицы истинности необходимо учитывать порядок выполнения логических операций.
Порядок выполнения логических операций в сложном логическом выражении:
- инверсия;
- конъюнкция;
- дизъюнкция;
- импликация;
- эквивалентность.
Алгоритм построения таблиц истинности для сложных выражений:
- Определить количество строк (количество строк = 2n + строка для заголовка, n – количество простых высказываний.
- Определить количество столбцов (количество столбцов = количество переменных + количество логических операций);
- Определить количество переменных (простых выражений).
- Определить количество логических операций и последовательность их выполнения.
- Заполнить столбцы результатами выполнения логических операций в обозначенной последовательности с учетом таблиц истинности основных логических операций.
Решение.
- Определим количество строк: на входе три простых высказывания: А, В, С поэтому n = 3 и количество строк = 23 + 1 = 9.
- Определим количество столбцов:
- простые выражения (переменные): А, В, С;
- промежуточные результаты (логические операции):
¬ А - инверсия (обозначим через E);
B + C - операция дизъюнкции (обозначим через F);
а также искомое окончательное значение арифметического выражения: D = ¬ А & (B + C). т.е. D = E & F - это операция конъюнкции. - Заполним столбцы с учетом таблиц истинности логических операций
| A | B | C | E | F | D |
| 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 0 | 1 | 1 | 1 | 1 |
| 0 | 1 | 0 | 1 | 1 | 1 |
| 0 | 1 | 1 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 0 | 1 | 0 |
| 1 | 1 | 1 | 0 | 1 | 0 |
Построение логической функции по ее таблице истинности
| X | Y | Z |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
- Выделить в таблице истинности те строки, в которых значение функции равно 1.
- Выписать искомую формулу в виде дизъюнкции нескольких логических элементов. Число этих элементов равно числу выделенных строк.
- Каждый логический элемент в этой дизъюнкции записать в виде конъюнкции аргументов функции.
- Если значение какого-либо аргумента функции в соответствующей строке таблице равно 0, то этот аргумент взять с отрицанием.
- В первой и третьей строках таблицы истинности значение функции равно 1.
- Так как строки две, получаем дизъюнкцию двух элементов: X + Y.
- Каждый логический элемент в этой дизъюнкции запишим в виде конъюнкции аргументов функции X и Y: (X & Y) + (X & Y).
- Берем аргумент с отрицанием если его значение в соответствующей строке таблицы равно 0 и получаем искомую функцию: Z (X, Y) =(¬ X & ¬ Y) + (X & ¬ Y).
Основы математической логики
- Закон двойного отрицания (двойное отрицание исключает отрицание): ¬ (¬ A) = A.
- Переместительный (коммутативный) закон:
- для логического сложения: А + B = B + A;
- o для логического умножения: A & B = B & A.
- Сочетательный (ассоциативный) закон:
- для логического сложения: (А + B) + C = A + (B + C);
- для логического умножения: (A & B) & C = A & (B & C).
- Распределительный (дистрибутивный) закон:
- для логического сложения: (А + B) & C = (A & C) + (B & C);
- для логического умножения: (A & B) + C = (A + C) & (B + C).
- Закон общей инверсии (законы де Моргана):
- для логического сложения: ¬ (A + B) = (¬ A) & (¬ B);
- для логического умножения: ¬ (A & B) = (¬ A) + (¬ B);
- Закон идемпотентности (равносильности):
- для логического сложения: А + A = A;
- для логического умножения: A & A = A .
- Законы исключения констант:
- для логического сложения: А + 1 = 1, А + 0 = A;
- для логического умножения: A & 1 = A, A & 0 = 0.
- Закон противоречия: A & (¬ A) = 0. Невозможно, чтобы противоречащие высказывания были одновременно истинными.
- Закон исключения третьего: A + (¬ A) = 1. Из двух противоречащих высказываний об одном и том же предмете одно всегда истинно, а второе — ложно, третьего не дано.
- Закон поглощения:
- для логического сложения: А + (A & B) = A;
- для логического умножения: A & (A + B) = A.
Некоторые преобразования логических формул похожи на преобразования формул в обычной алгебре (вынесение общего множителя за скобки, использование переместительного и сочетательного законов и т.п.), другие - основаны на свойствах, которыми не обладают операции обычной алгебры (использование распределительного закона для конъюнкции, законов поглощения, склеивания, де Моргана и др.).
Нарушения законов логики приводят к логическим ошибкам и вытекающим из них противоречиям.
Пример 1 (упрощение формул)
Решение.
- Раскроем скобки: (А + В) & (А + С) = A & A + A & C + B & A + B & C;
- По закону идемпотентности A & A =A, следовательно, A & A + A & C + B & A + B & C = A + A & C + B & A + B & C;
- В высказываниях А и А & C вынесем за скобки А и используя свойство А + 1 = 1, получим A + A & C + B & A + B & C = A & (1 + C) + B & A + B & C = A + B & A + B & C;
- Аналогично предыдущему пункту вынесем за скобки высказывание А A + B & A + B & C = A & (1 + B) + B & C = A + B & C.
Всякую формулу можно преобразовать так, что в ней не будет отрицаний сложных высказываний - все отрицания будут применяться только к простым высказываниям.
Пример 2 (упрощение формул)
- X = ¬ (A & B ) + (¬ B): Решение. X = ¬ A + (¬ B)+ (¬ B ) = ¬ A + (¬ B )
- Y = ¬ ((¬ B & C )+ C). Решение. Y = (B + (¬ C) )& (¬ C) = ¬ C
- Z = ¬ (¬ A&C)+(B&(¬C)) Z = A+(¬ C) +(B&(¬ C)) = A +( ¬ C)
Вопросы для самопроверки
- Составьте таблицы истинности логических выражений:
- A + (¬ B & C);
- ¬ (A + B ) & (A & ¬ B);
- (А + B) + (C & B) .
- Составьте логическую функцию F (X, Y, Z) для заданной таблицы истинности:
- Упростите выражение (¬ ( ¬ А) & С) + B & (¬ C)
| X | Y | Z | F |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 0 | 1 |


