3_Алгебра_логики (Мацнев А.П. - Математическая логика и теория алгоритмов - 2004)
Описание файла
Файл "3_Алгебра_логики" внутри архива находится в папке "Мацнев А.П. - Математическая логика и теория алгоритмов - 2004". Документ из архива "Мацнев А.П. - Математическая логика и теория алгоритмов - 2004", который расположен в категории "". Всё это находится в предмете "математическая логика" из 2 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "математическая логика" в общих файлах.
Онлайн просмотр документа "3_Алгебра_логики"
Текст из документа "3_Алгебра_логики"
3. Алгебра логики.
3.1 Понятие алгебры.
Функцию типа f: Mn→M будем называть n - арной операцией на множестве М; n называется арностью операции f.
Алгеброй А называется совокупность < > множества М с заданными на нём операциями S={f11, f12,..., f1k, f21, f22, ..., f2l, ..., fn1, ..., fnm}
A=<M,S>, где М - называется основным или несущим множеством (или просто носителем) алгебры А. Вектор арностей алгебры называется её типом, совокупность операций S - сигнатурой алгебры.
Первый индекс у идентификатора операции указывает её местность. Для идентификации единого целого, содержащего объекты, которые имеют различное математическое строение, например множество операций в нём, было предложено использовать термин совокупность и обозначать его угловыми скобками.
В этой главе особую роль будет играть двухэлементное множество В и двоичные переменные, принимающие значения из В. Его элементы часто обозначаются 0 и 1, однако они не являются числами в обычном смысле. Наиболее распространённая интерпретация переменных - логическая: 1 - истинно, 0 - ложно. В контексте, содержащем одновременно двоичные и арифметические величины и функции, эта интерпретация фиксируется явно: например, в языках программирования (Паскаль и др.) вводится специальный тип переменной - логическая переменная, значения которой обозначаются true и false.
Алгебра, образованная множеством В вместе с всеми возможными операциями на нём, называется алгеброй логики. Функцией алгебры логики (или логической функцией) от n переменных называется n - арная операция на B. Множество всех логических функций обозначается P2, множество всех логических функций от n переменных – P2(n). Алгебра, образованная к - элементным множеством вместе со всеми операциями на нём, называется алгеброй к - значной логики, а n - арные операции на к - элементном множестве называются к - значными логическими функциями n переменных; множество всех к - значных функций обозначается Pk. Множество всех к - значных логических функций от n переменных обозначается Pk(n).
Всякая логическая функция n переменных может быть задана таблицей истинности, в левой части которой перечислены все 2n наборов переменных (т.е. двоичных векторов длины n), а в правой части - значения функций на этих наборах. Наборы, на которых функция f = 1, часто называют единичными наборами функции f, а множество единичных наборов - единичным множеством f. Соответственно наборы, на которых f = 0, называют нулевыми наборами f.
В таблице истинности наборы расположены в определённом порядке - лексикографическом, который совпадает с порядком возрастания наборов, рассматриваемых как двоичные числа. Этим упорядочением будем пользоваться и в дальнейшем. При любом фиксированном упорядочении наборов логическая функция n-переменных полностью определяется вектор - столбцом значений функции, т.е. 2n. Поэтому мощность множества |P2(n)| т.е. число различных логических функций n переменных равно числу различных двоичных векторов длины 2n, т.е. N = .
Переменная xi в функции f(x1, x2, ..., x(i-1), xi, x(i+1), ..., xn) называется несущественной (или фиктивной), если f(x1, x2, ..., x(i-1), 0, , x(i+1), ..., xn) = f(x1, x2, ..., x(i-1), 1, x(i+1), ..., xn) при любых значениях остальных переменных, если изменение значения xi в любом наборе x1,..., xn не меняет значения функции.
В этом случае функция f(x1,..., xn) по существу зависит от n-1 переменной, т.е. представляет собой функцию g(x1, x2, ..., x(i-1), x(i+1), ..., xn-1) от n-1 переменной. Говорят, что функция g получена из функции f удалением фиктивной переменной xi, а функция f получена из g введением фиктивной переменной, причём эти функции по определению считаются равными. Например, запись f(x1, x2, x3)= g(x1, x2) означает, что при любых значения x1 и x2 f = g независимо от значения переменной x3.
Смысл удаления фиктивных переменных при минимализации функции очевиден, поскольку они не влияют на значения функции и являются с этой точки зрения лишними. Однако иногда бывает полезно вводить фиктивные переменные. Благодаря такому введению всякую функцию от n переменных можно сделать функцией большего числа переменных.
В частности, только это доказанное равенство |P2(n)|= справедливо при условии, что P2(n) содержит все возможные функции n переменных, в том числе и функции с фиктивными переменными.
3.2 Основные логические функции
В алгебре логики логические формулы рассматриваются как алгебраические выражения, которые можно преобразовывать по определенным правилам, реализующим логические законы. Алгебра логики как раздел математической логики изучает строение сложных логических высказываний (логических формул) и способы установления их истинности с помощью алгебраических методов.
Основные объекты, изучаемые в этом разделе, - формулы алгебры логики, состоящие из букв, знаков логических операций и скобок. Буквы обозначают логические (двоичные) переменные, которые принимают только два значения -"ложь" и "истина". Знаки операций обозначают логические операции (логические связки). Каждая формула задает логическую функцию - функцию от логических переменных, которая сама может принимать только два логических значения.
Итак, пусть В = {0, 1} - бинарное множество, элементами которого являются формальные символы 1 и 0, не имеющие арифметического смысла и интерпретируемые как {"да", "нет"}, {"истинно", "ложно"} и т.д.
Алгебра логики - алгебра, образованная множеством В ={0, 1} вместе со всеми возможными операциями на нем.
Функцией алгебры логики (или логической функцией) f от п переменных f (х1, х2 ..., хn) называется п-арная логическая операция на В, т.е. f: Вn —> В. Множество всех логических функций (логических операций) обозначается Р2, множество всех логических операций п переменных - Р2 (п).
Любую логическую функцию f (х1, х2 ..., хn) можно задать таблицей истинности, в левой части которой выписаны все возможные наборы значений ее аргументов х1, х2 ..., хn,, а правая часть представляет собой столбец значений функций, соответствующих этим наборам. Набор значений переменных, на котором функция принимает значение f=1, называется единичным набором функции f; множество всех единичных наборов - единичным множеством функции f. Аналогично набор значений, на котором / = 0, называется нулевым набором функции f, а множество нулевых наборов - нулевым множеством.
Число всех возможных различающихся наборов значений п переменных логической функции f (х1, х2 ..., хn) равно 2n (равно числу всех возможных двоичных векторов длины п). Число всех различных функций п переменных равно числу возможных расстановок нулей и единиц в столбце с 2n строками, т.е. |Р2 (п)|= 22n.
Особую роль в алгебре логики играют логические функции одной и двух переменных - унарные и бинарные логические операции, так как очевидным образом интерпретируются естественными логическими связками "не", "и", "или" и т.д., широко используемыми при описании систем, явлений, формализации рассуждений и пр.
φ0 и φ3, - константы 0 и 1 соответственно. Значения этих функций не зависят от переменной х, в таких случаях говорят, что переменная х является несущественной (фиктивной) для этих функций;
φ1(х) =х (повторение переменной).
Таблица 3.1
х | φ0 | φ1 | φ2 | φ3 |
0 1 | 0 0 | 0 1 | 1 0 | 1 1 |
Множество всех логических функций двух переменных Р2(2) - бинарных логических операций - представлено в табл. 3.2 своими таблицами истинности; |Р2(2)| = 16 функций, из которых шесть имеют фиктивные переменные.
Таблица 3.2
х1 х2 | φ0 | φ1 | φ2 | φ3 | φ4 | φ5 | φ6 | φ7 |
0 0 0 1 1 0 1 1 | 0 0 0 0 | 0 0 0 1 | 0 0 1 0 | 0 0 1 1 | 0 1 0 0 | 0 1 0 1 | 0 1 1 0 | 0 1 1 1 |
Кон-станта 0 | Конъ-юнк-ция | Левая ко-имплика-ция | Переменная х1 | Правая ко-имплика-ция | Перемен-ная х2 | Сложе-ние по mod 2 | Дизъ-юнк- ция | |
0 | & | → | х1 | ← | х2 | | ٧ |
Продолжение таблицы
х1 х2 | φ8 | φ9 | φ10 | φ11 | φ12 | φ13 | φ14 | φ15 |
0 0 0 1 1 0 1 1 | 1 0 0 0 | 1 0 0 1 | 1 0 1 0 | 1 0 1 1 | 1 1 0 0 | 1 1 0 1 | 1 1 1 0 | 1 1 1 1 |
Стрелка Пирса | Экви-валент-ность | Отрица-ние х2 | Правая имплика-ция | Отрица-ние х1 | Левая имплика-ция | Штрих Шеф-фера | Кон-станта 1 | |
↓ | ~ | ¬ х2 | ← | ¬ х1 | → | | | 1 |
В двух нижних дополнительных строках таблицы указаны наиболее употребляемые наименования логических операций и их обозначения, которые, однако, не являются единственными. Например:
φ1(х1, х2) - конъюнкция (логическое умножение, операция И), обозначается: