из функциональных элементов в базисе
B
0
, состоящем из имеющих
вес 1 элементов, которые реализуют дизъюнкцию, конъюнкцию и от-
рицание [2], приведенный в работе [1] метод достаточно сложен для
восприятия, особенно разработчиками устройств обработки дискрет-
ной информации. Имеются публикации по реализации булевых функ-
ций схемами в случае конкретных базисов, отличных от базиса
B
0
[3].
В предлагаемом методе применены разработанные автором моди-
фикация метода Лупанова для базиса
B
0
и принцип использования не
всюду определенных функций.
Сначала рассмотрим метод Лупанова для базиса
B
0
, который явля-
ется ярким примером относительно простого решения довольно труд-
ной задачи. На основе этого метода получено много результатов в обла-
сти синтеза управляющих систем. Кроме того, он нагляден и вполне
доступен для первоначального ознакомления с проблематикой синтеза
оптимальных схем.
Пусть
f
— произвольная булева функция
n
переменных. Вве-
дем параметр
r
и переменные функции
f
разобьем на две группы
x
1
, x
2
, . . . , x
r
и
y
1
, y
2
, . . . , y
n
−
r
. Функцию
f
будем задавать булевой
(2
r
,
2
n
−
r
)
-матрицей
M
f
следующим способом.
Набор
x
1
, x
2
, . . . , x
r
(
y
1
, y
2
, . . . , y
n
−
r
) обозначим как
e
x
(
e
y
), набор
x
1
, x
2
, . . . , x
r
(
y
1
, y
2
, . . . , y
n
−
r
), являющийся двоичной записью числа
t
(числа
s
), — как
X
t
(
Y
s
). Строки и столбцы матриц пронумеруем,
начиная с нуля. Элемент матрицы
M
f
, расположенный на пересечении
t
-й строки и
s
-го столбца, — значение
f
(
X
t
, Y
s
)
.
Введем параметр
s
, разобьем матрицу
M
f
на полосы, каждая из
которых, кроме последней, содержит
s
строк. Число
p
полос матрицы
M
f
равно
]2
r
/s
[
. Число строк последней полосы матрицы
M
f
обозна-
чим как
s
0
,
i
-ю полосу матрицы
M
f
— как
M
f
i
,
1
≤
i
≤
p
.
Пусть
f
i
(
e
x,
e
y
)
— функция, совпадающая с функцией
f
на полосе
M
f
i
и равная нулю вне этой полосы. Дизъюнкцию обозначим знаком
“
∪
”.
В методе Лупанова использовано следующее представление про-
извольной булевой функции
f
:
f
(
e
x,
e
y
) =
p
[
i
=1
f
i
(
e
x,
e
y
)
.
Реализация функций
f
i
(
e
x,
e
y
)
осуществляется следующим образом.
Обозначим через
x
u
булеву функцию двух переменных, такую, что
x
1
=
x
и
x
0
=
x
.
Пусть
K
m
(
z
1
, z
2
, . . . , z
t
)
,
0
≤
m
≤
2
t
−
1
— конъюнкция
z
a
1
1
z
a
2
2
. . . z
a
t
t
,
где числа
a
i
определяются из равенства
m
=
t
P
i
=1
a
i
2
t
−
i
. Отметим, что
ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2014. № 1 103