Основы алгебры логики

Функции 2-значной логики. Лемма о числе функций. Элементарные функции 1-ой и 2-х переменных

Лемма о числе функций утверждает, что для n переменных существует 2^[2^n] различных функций. Элементарные функции составляют базис для представления любых логических выражений. Приводятся примеры применения элементарных функций в задачах математической логики, проектирования логических схем и программирования.

Пусть U=u1,u2,...,um,...U = { u_1,u_2,..., u_m,... } — исходный алфавит переменных (аргументов) и E_2=0,1E\_2 = { 0,1 }.

Определение. Функция f(u_i_1,u_i_2,...,u_i_n)f(u\_ { i\_1 } , u\_ { i\_2 } ,... ,u\_ { i\_n } ), где u_i_s≠u_i_tu\_ { i\_s } \neq u\_ { i\_t } при s≠ts \neq t, аргументы и значение которой определены на множестве E_2E\_2, называется функцией алгебры логики или булевой функцией.

Замечание. Чтобы избежать сложных обозначений для индексов переменных, мы будем употреблять в качестве произвольных символов алфавита UU символы x,y,z,..x,y,z,.., а также эти символы с индексами x1,x2,...,y1,y2,...x_1, x_2, . . . , y_1,y_2, . . .

Опишем два способа задания функций алгебры логики.

 Таблица. \textbf { Таблица. } Для задания функции f(x1,...,xn)f (x_1,..., x_n) достаточно указать, какое значение функции соответствует каждому из наборов значений аргументов, т.е. выписать таблицу.

x1x_1...xn−1x_ { n-1 }xnx_ { n }f(x1,...,xn−1,xn)f(x_1, ..., x_ { n-1 } , x_n)
0 ... 0 0 f(0,...,0,0)f(0, ..., 0, 0)
0 ... 0 1 f(0,...,0,1)f(0, ..., 0, 1)
0 ... 1 0 f(0,...,1,0)f(0, ..., 1, 0)
0 ... 1 0 f(0,...,1,1)f(0, ..., 1, 1)
... ...
1 ... 1 1 f(1,...,1,1)f(1, ..., 1, 1)

Таблица 1. Таблица функции f(xi,...,xn)f(x_i,...,x_n)

Обозначим через P2P_2 систему всех функций алгебры логики над алфавитом UU, содержащую также константы 00 и 11.

Лемма 1.1. Число всех функций из P2P_2, зависящих от, переменных xi,x2,...,xnx_i,x_2,...,x_n, равно 22n2^ { 2^ { n } }.

Доказательство. Легко видеть, что nn переменных принимают 2n2^ { n } различных значений. Поэтому таблица функции f(xi,...,xn)f (x_i,... ,x_n) содержит 2n2^ { n } строк (наборов). Наборы принято располагать в соответствии с естественным порядком следования двоичных записей чисел 0,1,...,2n—10,1,..., 2^ { n } — 1. Поскольку на каждом наборе функция принимает одно из двух значений { 00 или 11 } , то число различных функций равно 22 в степени "количество наборов", т.е. 22n2^ { 2^ { n } }.

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

Рассмотрим примеры функций алгебры логики. Данные функции часто употребляются в математической логике и кибернетике и играют такую же роль, как, например, xnx^n или sinxsin x в анализе, поэтому их называют ** элементарными**.

xxконстанта 00константа 11тождественная xxотрицание xˉ\bar { x }
0 0 1 0 1
1 0 1 1 0

Таблица 2. Элементарные функции одной переменной.

x1x_1x2x_2коньюнкция x1∧x2x_1\wedge x_2дизъюнкция x1∨x2x_1\vee x_2импликация x1→x2x_1\rightarrow x_2сложение по mod2 x1⊕x2x_1\oplus x_2эквиваленция x1≡x2x_1\equiv x_2штрих шеффера x1∣x2x_1|x_2
0 0 0 0 1 0 1 1
0 1 0 1 1 1 0 1
1 0 0 1 0 1 0 1
1 1 1 1 1 0 1 0

Таблица 3. Элементарные функции двух переменных.

Замечание. Часто вместо x1∧x2x_1\wedge x_2 пишут x1x2x_1x_2. Также заметим, что x1∧x2=min(x1;x2)=x1⋅x2x_1\wedge x_2 = min(x_1; x_2) = x_1\cdot x_2, x1∨x2=max(x1,x2)x_1\vee x_2 = max(x_1, x_2)

##Равенство функций и эквивалентность формул

Введенное понятие функции не позволяет рассматривать функции от меньшего числа аргументов как функции от большего числа аргументов.

Определение. Функция f(x_1,...,x_i—1,x_i,x_i+1,...,x_n)f(x\_1,... ,x\_ { i—1 } ,x\_i,x\_ { i+1 } ,... ,x\_n) из P_2P\_2 существенно зависит от переменной x_ix\_i, если существуют такие значения (α_1,...,α_i—1,α_i+1,...,α_n( \alpha\_1 ,..., \alpha\_ { i—1 } , \alpha \_ { i+1 } ,..., \alpha \_n переменных x_1,...,x_i—1,x_i+1,...,x_nx\_1 ,..., x\_ { i—1 } , x\_ { i+1 } ,..., x\_n, что

f(α_1,...,α_i−1,0,α_i+1,...,α_n)=f(α_1,...,α_i−1,1,α_i+1,...,α_n)f( \alpha\_1 ,..., \alpha\_ { i-1 } ,0, \alpha\_ { i+1 } ,..., \alpha\_n) = f( \alpha\_1 ,..., \alpha\_ { i-1 } ,1, \alpha\_ { i+1 } ,..., \alpha\_n).

В этом случае переменная xix_i называется существенной. Если xix_i не является существенной переменной, то она называется фиктивной.

Пусть для функции f(x_1,...,x_n)f(x\_1 ,..., x\_n) перемениая x_ix\_i является фиктивной. По таблице функции f(x_1,...,x_n)f(x\_1 ,... ,x\_n) построим новую таблицу, вычеркивая все строки вида (0,...,а_i—1,1,a_i+1,...,a_n)(0,..., а\_ { i—1 } ,1, a\_ { i+1 } ,..., a\_n) и вычеркивая столбец переменной x_ix\_i. Полученная таблица определяет некоторую функцию g(x_1,...,x_i—1,x_i+1,...,x_n)g(x\_1,..., x\_ { i—1 } ,x\_ { i+1 } ,..., x\_n). Будем говорить, что функция gg получена из ff путем удаления фиктивной переменной xx, а также, что функция ff получается из gg путем введения фиктивной переменной x_ix\_i.

Определение. Функции f1f_1 и f2f_2 называются равными, если функцию f2f_2 можно получить из ff путем введения и удаления фиктивных переменных.

Напомним, что каждой формуле над FF соответствует функция алгебры логики, причем различным формулам могут соответствовать равные функции.

Другие статьи из категории

Похожие статьи

Все статьи →

Основы алгебры логики

Теорема об аналоге СДНФ в Pk

Аналог СДНФ в Pk позволяет однозначно представлять любую функцию k-значной логики через комбинации значений переменных и их отрицаний.…

Основы алгебры логики

Теорема о заведомо полныx системаx

Заведомо полная система функций гарантирует возможность реализации всех возможных отображений в рамках k-значной логики. Для проверки…

Основы алгебры логики

Класс Te . Теорема о замкнутости Te

Класс Te включает все функции, для которых выполнено условие сохранения константы e. Замкнутость класса означает, что любая суперпозиция…

Основы алгебры логики

Лемма о построении множества F[x1,x2]

Множество F[x1,x2] представляет собой набор всех возможных отображений пар значений [x1,x2] в множество значений k-значной логики. Лемма…

Основы алгебры логики

Теорема об алгоритме распознавания полноты

Алгоритм распознавания полноты позволяет определить, можно ли с помощью заданной системы функций выразить любую функцию из Pk. Для этого…

Нужен расчёт?

Пришлите исходные данные — уточним состав работы и ответим по срокам.

Связаться