logo

1.2. Суперпозиция и формулы алгебры логики

Определение. Суперпозицией функций f1, … , fm называется функция f,

полученная с помощью подстановок этих функций друг в друга и переименования переменных.

Пример. Пусть даны функции f1( x1, x2 ) = ( 0, 1, 1, 0 ) и f2( x1, x2 ) = (1, 0, 1, 0).

Тогда функция f( x2, x3, x4 ) = f1[ x2, f2(x3, x4) ] будет суперпозицией функций f1 и f2.

Табличное задание функций f1 и f2 представлено табл. 1.7. С помощью данной таблицы найдем табличное задание искомой функции f( x2, x3, x4 ), которое представле-но в табл. 1.8.

Таблица 1.7

x1

х2

f1

f2

0

0

0

1

0

1

1

0

1

0

1

1

1

1

0

0

Таблица 1.8

x2

х3

х4

f2(x3, x4)

f=f1[x2, f2(x3, x4)]

0

0

0

1

1

0

0

1

0

0

0

1

0

1

1

0

1

1

0

0

1

0

0

1

0

1

0

1

0

1

1

1

0

1

0

1

1

1

0

1

Для построения табл. 1.8 вначале, пользуясь табл. 1.7, строим функцию f2(x3, x4) для всех строк табл. 1.8. При этом роль переменных х1, х2 табл. 1.7 играют переменные х3, х4 соответственно.

Затем, по табл. 1.7 для f1, строим функцию f1[ x2, f2(x3, x4) ].При этом роль переменных х1, х2 табл. 1.7 играют переменная х2 и f2( x3,x4 ) соответственно.

Полученная функция и будет искомой. Ее векторный вид:

f( x2,x3,x4 ) = ( 1,0,1,0,0,1,0,1 ).

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

Например, формула

F = f3{ f1( x3,x1 ), f2[ x1, f3( x1,x2 ) ] }. (1.1)

описывает суперпозицию функций f1, f2 и f3.

Формулы, входящие в основную формулу, называются подформулами. Обычно формулы, как правило, имеют более привычный вид, при котором знаки логических операций стоят между переменными. Такая запись формулы называется инфиксной.

Например, пусть f1 –дизъюнкция, f2 – конъюнкция, а f3 – сложение по mod 2. Тогда формула (1.1) в инфиксной записи будет иметь вид:

F = ( x3 x1 ) ( x1 & ( x1 x2 ) ). (1.2)

Любая формула задает способ ее вычисления, если известно, как вычислить вхо-дящие в нее функции.

Пример. Вычислить значение выражения (1.2) при х1 = х2 = 1, х3 = 0.

Вычисления будем производить в следующем порядке:

х3 х1 = 0 1 = 1 , x1 x2 = 1 1 = 0,

x1 & ( x1 x2 ) = 1 & 0 = 0, F = 1 0 = 1.

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

Пример. Составить таблицу задания функции f( x1,x2 ), которая задана формулой:

f( x1,x2 ) = ( ( x1 & x2 ) x1) x2.

Искомая функция строится за три шага и представлена в табл. 1.9. Сначала строится подформула х1 & x2, затем подформула ( х1 & x2) x1, а затем и сама функция.

Таблица 1.9

х1

х2

х12

1&x2) x1

f

0

0

0

0

0

0

1

0

0

1

1

0

0

1

1

1

1

1

0

1

Пример. Составить таблицу задания функции

f( x,y,z ) = ( x → y ) → ( ( x y ) → ( x z ) ).

Табл. 1.10 показывает процесс построения данной функции. Последний столбец этой таблицы является значениями искомой функции.

Таблица 1.10

x

y

z

x → y

x y

x z

(x y)(x z)

f

0

0

0

1

0

0

0

1

0

0

1

1

0

1

1

1

0

1

0

1

1

0

0

0

0

1

1

1

1

1

1

1

1

0

0

0

1

1

1

1

1

0

1

0

1

1

1

1

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

1

Определение. Эквивалентными (равносильными) называются формулы, представляющие одну и ту же функцию.

Эквивалентными формулами будут формулы в выражениях (1.3). В отличие от

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

Например, функцию Шеффера, функцию стрелка Пирса и можно представить следующими эквивалентными формулами:

х1 / x2 ~ ~ ,

x1 ↓ x2 ~ & ~ , (1.3)

Справедливость этих формул доказывает табл.1.11.

Таблица 1.11

x1

x2

х1/x2

x1x2

x1↓x2

x1 x2

0

0

1

1

1

1

0

1

1

1

0

1

0

1

1

1

0

1

0

1

0

0

1

0

1

0

1

0

1

1

0

1

0

0

1

0

1

1

0

0

0

0

1

0

0

0

1

0

Пример. Проверить равносильность функций:

f1 = x1 ( x2 ~ x3 ) и f2 = ( x1 x2 ) ~ ( x1 x3 ).

Для проверки этого составим следующую таблицу.

Таблица 1.12

х1

х2

x3

x2~x3

f1

x1 x2

X1 x3

f2

0

0

0

1

1

0

0

1

0

0

1

0

0

0

1

0

0

1

0

0

0

1

0

0

0

1

1

1

1

1

1

1

1

0

0

1

1

1

1

1

1

0

1

0

1

1

1

1

1

1

0

0

1

1

1

1

1

1

1

1

1

1

1

1

Из табл. 1.12 видно, что 5 и 8 столбцы одинаковы. Это означает эквивалентность данных функций, т.е . f1 ~ f2.

Замечание. В формулах, у которых внешняя функция является конъюнкцией, или дизъюнкцией, или сложением по mod 2, или импликацией, или функцией Шеффера, внешние скобки не пишутся.

Например, пишут х1 → х2 вместо ( х1 → х2 ).

Не пишутся также скобки у выражения, над которым стоит знак отрицания.

Например, пишут вместо ( ).

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4