Основные логические функции
Стр 1 из 3Следующая ⇒ Алгебра логики. Понятие алгебры. Функцию типа 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 = . Переменная x i в функции 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 переменных, в том числе и функции с фиктивными переменными.
Основные логические функции В алгебре логики логические формулы рассматриваются как алгебраические выражения, которые можно преобразовывать по определенным правилам, реализующим логические законы. Алгебра логики как раздел математической логики изучает строение сложных логических высказываний (логических формул) и способы установления их истинности с помощью алгебраических методов. Основные объекты, изучаемые в этом разделе, - формулы алгебры логики, состоящие из букв, знаков логических операций и скобок. Буквы обозначают логические (двоичные) переменные, которые принимают только два значения -"ложь" и "истина". Знаки операций обозначают логические операции (логические связки). Каждая формула задает логическую функцию - функцию от логических переменных, которая сама может принимать только два логических значения. Итак, пусть В = {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
Множество всех логических функций двух переменных Р2 (2) - бинарных логических операций - представлено в табл. 3.2 своими таблицами истинности; | Р2 (2)| = 16 функций, из которых шесть имеют фиктивные переменные. Таблица 3.2
Продолжение таблицы
В двух нижних дополнительных строках таблицы указаны наиболее употребляемые наименования логических операций и их обозначения, которые, однако, не являются единственными. Например:
φ1(х1, х2) - конъюнкция (логическое умножение, операция И), обозначается: х1 & х2, х1 · х2 (часто х1 х2), х1 Λ х2; φ7(х1, х2) - дизъюнкция (логическое сложение, операция ИЛИ), обозначается: х1 ٧ х2, иногда х1 + х2 и т.п. Логические функции трех и более переменных обычно задаются (наряду с таблицами истинности) также формулами бинарных операций. Например, выражение f (х1, х2, х3) = (х1 ٧ х2) → (х1 & х3) означает, что функция трех переменных f задана формулой, состоящей из символов этих переменных х1, х2, х3, над которыми выполняются одна унарная операция отрицания и три бинарные операции: дизъюнкция (٧), импликация (→) и конъюнкция (&). Наиболее употребляемыми являются операции:, ٧, &, →, ~, mod2, |, ↓. Значение любой логической формулы, содержащей знаки этих операций, можно вычислить для любого набора значений переменных, используя табл. 3.1 и 3.2. Таким образом, формула наряду с таблицей служит способом задания и вычисления функции. В общем случае формула описывает логическую функцию как суперпозицию других более простых функций. Эквивалентными, или равносильными, называются формулы, представляющие одну и ту же функцию (эквивалентность формул в алгебре логики обозначается знаком =). Стандартный метод установления эквивалентности двух формул: 1) по каждой формуле восстанавливается таблица истинности; 2) полученные таблицы сравниваются по каждому набору значений переменных, (стандартный метод требует 2 • 2n вычислений).
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|