



Построение и анализ таблиц истинности логических выражений
Условные обозначения логических операций:
¬A, — не A (отрицание, инверсия);
A ∧ B, A · B — A и B (логическое умножение, конъюнкция);
A ∨ B, A + B— A или B (логическое сложение, дизъюнкция);
A → B— импликация (следование);
A ≡ B— эквивалентность (равносильность).
Операцию «импликация» можно выразить через «ИЛИ» и «НЕ»:
A → B = ¬A ∨ B — A → B =
Иногда для упрощения выражений полезны формулы де Моргана:
¬(A ∧ B) = ¬A ∨ ¬B —
¬(A ∨ B) = ¬A ∧ ¬B —
Если в выражении нет скобок, сначала выполняются все операции «НЕ», затем — «И», затем — «ИЛИ», «импликация», и самая последняя — «эквивалентность».
Таблица истинности выражения определяет его значения при всех возможных комбинациях исходных данных.
Если известна только часть таблицы истинности, соответствующее логическое выражение однозначно определить нельзя, поскольку частичной таблице могут соответствовать несколько разных логических выражений (не совпадающих для других вариантов входных данных).
Количество разных логических выражений, удовлетворяющих неполной таблице истинности, равно где k – число отсутствующих строк; например, полная таблица истинности выражения с тремя переменными содержит 23 = 8 строчек, если заданы только 6 из них, то можно найти 28−6 = 22 = 4 разных логических выражения, удовлетворяющие этим 6 строчкам (но отличающиеся в двух оставшихся).
Логическая сумма A + B + C + … равна 0 (выражение ложно) тогда и только тогда, когда все слагаемые одновременно равны нулю, а в остальных случаях равна 1 (выражение истинно).
Логическое произведение A · B · C · … равно 1 (выражение истинно) тогда и только тогда, когда все сомножители одновременно равны единице, а в остальных случаях равно 0 (выражение ложно).
Логическое следование (импликация) А → В равна 0 тогда и только тогда, когда A (посылка) истинна, а B (следствие) ложно.
Эквивалентность А ≡ B равна 1 тогда и только тогда, когда оба значения одновременно равны 0 или одновременно равны 1.
Составление запросов для поисковых систем с использованием логических выражений
В поисковых запросах операция «НЕ» обозначается знаком ~, операция «И» обозначается знаком &, а операция «ИЛИ» — знаком |.
Пусть A — множество страниц, на которых встречается слово A, а B — множество страниц, на которых встречается слово B; тогда:
а) запрос A & B соответствует пересечению множеств A ∩ B;
б) запрос A | B соответствует объединению множеств A ∪ B.
Будем обозначать через NX количество страниц, которые выдаёт поисковая система по запросу X.
Для двух областей справедлива формула включений и исключений, которая позволяет легко решать все задачи с двумя областями:
NA | B = NA + NB − NA & B
Эту формулу можно переписать в разных формах в зависимости от того, что требуется найти, например,
NA & B = NA + NB − NA | B;
NA = NA | B + NA & B − NB;
NA + NB = NA | B + NA & B
Равенство сохраняется, если каждая из 4-х областей заменяется на её пересечение с третьей областью C:
N(A | B) & C = NA & C + NB & C – NA & B & C
Таким образом, если все 4 запроса имеют вид X & C, область C при вычислениях можно игнорировать (это равносильно переходу от областей A и B к областям A’ = A & C и B’ = B & C, что не изменяет результата).
Формула включений и исключений для трёх областей выглядит так:
NA | B | C = NA + NB + NC – NA & B – NA & C – NB & C +
+ NA & B & C.
Основные понятия математической логики
Для упрощения выражений можно использовать формулы:
(т. к.
);
(т.к.
).
Некоторые свойства импликации:
Связь логики и теории множеств:
— пересечение множеств соответствует умножению логических величин, а объединение — логическому сложению;
— пустое множество — это множество, не содержащее ни одного элемента, оно играет роль нуля в теории множеств;
— универсальное множество U — это множество, содержащее все возможные элементы заданного типа (например, все целые числа), оно играет роль логической единицы: для любого множества целых чисел X справедливы равенства и
(для простоты мы используем знаки сложения и умножения вместо знаков пересечения ∩ и объединения ∪ множеств);
— дополнение множества X — это разность между универсальным множеством U и множеством X (например, для целых чисел
— все целые числа, не входящие в X);
— пусть требуется выбрать множество A так, чтобы выполнялось равенство в этом случае множество A должно включать дополнение
то есть
(или «по-простому» можно записать
то есть
— пусть требуется выбрать множество A так, чтобы выполнялось равенство в этом случае множество
должно включать дополнение
то есть
отсюда
то есть
Преобразование логических выражений
Операцию «эквиваленция» также можно выразить через «ИЛИ» и «НЕ»:
A ≡ B = ¬A ∧ ¬B ∨ A ∧ B
или в других обозначениях
A ≡ B =
Правила преобразования логических выражений (законы алгебры логики):
| Закон | Для И | Для ИЛИ |
|---|---|---|
| Двойного отрицания | ||
| Исключения третьего | ||
| Исключения констант | ||
| Повторения | ||
| Поглощения | ||
| Переместительный | ||
| Сочетательный | ||
| Распределительный | ||
| Де Моргана | ||