Доклады Российской академии наук. Математика, информатика, процессы управления, 2020, T. 495, № 1, стр. 65-68

О РЕАЛИЗАЦИИ БУЛЕВЫХ ФУНКЦИЙ КОНТАКТНЫМИ СХЕМАМИ КОНСТАНТНОЙ РАВНОМЕРНОЙ ШИРИНЫ

К. А. Попков 1*

1 Институт прикладной математики им. М.В. Келдыша Российской академии наук
Москва, Россия

* E-mail: kirill-formulist@mail.ru

Поступила в редакцию 01.09.2020
После доработки 01.09.2020
Принята к публикации 03.10.2020

Полный текст (PDF)

Аннотация

Введено понятие равномерной ширины контактной схемы. Для каждой булевой функции найдено минимально возможное значение равномерной ширины реализующей ее контактной схемы. Конструктивно доказано, что оно не превосходит 3. Установлено также, что для почти всех булевых функций от $n$ переменных это значение равно 3.

Ключевые слова: контактная схема, булева функция, равномерная ширина

В работе рассматривается задача синтеза двухполюсных контактных схем [1], реализующих заданные булевы функции и имеющих некоторые ограничения на структуру. (Слово “двухполюсная” в дальнейшем будем опускать.) Впервые такая задача, по-видимому, была рассмотрена в работах К.Э. Шеннона [2, 3]. Ряд результатов, касающихся сложности контактных схем с различными ограничениями, представлены в разделе 1 обзорной работы [4] (под сложностью контактной схемы понимается число контактов в ней). Х.А. Мадатян в [5] ввел понятие ширины контактной схемы (см. также [4, с. 106]) и нашел асимптотику по $n$ минимальной сложности контактных схем ширины не более b, реализующих произвольные булевы функции от $n$ переменных, при некоторых условиях на числа $n$ и b. В дальнейшем понятие ширины было определено и рассматривалось для других классов управляющих систем: схем из функциональных элементов [6, с. 136], ветвящихся программ [7, с. 74], вычислительных программ [8, с. 99; 9]. Также естественным образом можно ввести понятия ширины (плоской) клеточной контактной схемы [4, с. 111] и прямоугольной схемы [10, с. 285–286] как одного из измерений соответствующего прямоугольника.

Ранее автором исследовались вопросы, связанные с тестированием контактных схем (см., например, [1113]).

1. ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ И ВСПОМОГАТЕЛЬНЫЕ УТВЕРЖДЕНИЯ

Множество контактов контактной схемы (КС) называется ее сечением, если оно имеет хотя бы один общий контакт с каждой несамопересекающейся цепью (НЦ), соединяющей полюсы схемы. Сечение считается тупиковым, если после выбрасывания из него любого одного контакта оно перестает быть сечением [14, с. 133]. Непустое множество контактов называется пучком, если все контакты из этого множества имеют одну и ту же пару концов и концы каждого контакта различны.

В работе [5] вводится понятие ширины КС, определяемое как наибольшее число контактов в тупиковом сечении этой схемы. Несложно показать, что: а) ширина любой КС S1, представляющей собой параллельное соединение m несамопересекающихся цепей, где $m \in \mathbb{N}$, равна m; б) ширина любой КС S2, представляющей собой последовательное соединение p пучков, где $p \in \mathbb{N}$, равна максимальному количеству контактов в одном пучке. Однако у введенного понятия ширины КС, с точки зрения автора, есть существенный недостаток, который мы продемонстрируем на конкретном примере. Рассмотрим известную КС $S_{ \oplus }^{n}$, где $n \geqslant 2$, реализующую линейную булеву функцию ${{x}_{1}} \oplus \; \ldots \; \oplus {{x}_{n}}$ и содержащую $4n - 4$ контактов (см. рис. 1). С интуитивной точки зрения ширина этой схемы не должна зависеть от n (если длину схемы связывать с максимальной или минимальной длиной НЦ между ее полюсами, а ширину считать вторым измерением этой схемы), однако, как легко убедиться, одним из тупиковых сечений схемы $S_{ \oplus }^{n}$ является множество, состоящее из всех ее замыкающих контактов, т.е. всех ее контактов ${{x}_{1}},{{x}_{2}}$, ..., xn. В этом сечении содержится $2n - 2$ контактов, следовательно, ширина схемы $S_{ \oplus }^{n}$ не меньше $2n - 2$, т.е. растет с ростом n. Таким образом, приведенное определение ширины КС, по мнению автора, не всегда согласуется с интуитивным смыслом данного понятия.

Рис. 1.

Схема $S_{ \oplus }^{n}$.

В связи с вышеуказанным введем другое понятие ширины КС, которое во избежание путаницы будем называть ее равномерной шириной. Пусть S – КС и K – произвольный содержащийся в ней контакт. Обозначим через ${{W}_{K}}(S)$ наименьшее число контактов в тупиковом сечении схемы S, содержащем контакт K, и положим W(S) = $max{{W}_{K}}(S)$, где максимум берется по всем контактам K схемы S, для которых определено значение ${{W}_{K}}(S)$. Величину $W(S)$ назовем равномерной шириной схемы S. Величина ${{W}_{K}}(S)$ играет роль “локальной” ширины этой схемы в окрестности контакта K.

Предложение 1. Значение ${{W}_{K}}(S)$ определено тогда и только тогда, когда в схеме S есть хотя бы одна НЦ между полюсами, содержащая контакт K.

Предложение 2. Значение $W(S)$ определено тогда и только тогда, когда полюсы схемы $S$ не совпадают и в ней есть хотя бы одна НЦ между полюсами.

Доопределим величину $W(S)$ для случаев, когда полюсы схемы S совпадают или в ней нет ни одной НЦ между полюсами, положив в каждом из этих двух случаев $W(S) = 0$.

Для любой КС S, в которой через каждый контакт проходит хотя бы одна НЦ между полюсами этой схемы (т.е. для которой значение ${{W}_{K}}(S)$ определено для любого ее контакта K), величина W(S) играет роль наибольшей “локальной” ширины схемы S.

Нетрудно показать, что сформулированные выше утверждения а) и б) справедливы и при добавлении перед словом “ширина” слова “равномерная”. Таким образом, для указанных в формулировке этих утверждений схем S1 и S2 понятия ширины и равномерной ширины совпадают. Оценим сверху равномерную ширину схемы $S_{ \oplus }^{n}$, изображенной на рис. 1.

Предложение 3. Справедливо неравенство

$W(S_{ \oplus }^{n}) \leqslant 4$.

Выше было показано, что ширина схемы $S_{ \oplus }^{n}$ растет с ростом n. Таким образом, введенное определение равномерной ширины КС при рассмотрении схемы $S_{ \oplus }^{n}$, с точки зрения автора, согласуется с интуитивным смыслом понятия ширины этой схемы, в отличие от определения ширины КС, данного в [5].

Пусть $n \in \mathbb{N} \cup {\text{\{ }}0{\text{\} }}$ и $f({{\tilde {x}}^{n}})$ – булева функция, где ${{\tilde {x}}^{n}} = ({{x}_{1}}, \ldots ,{{x}_{n}})$. Введем следующие обозначения: $W(f) = min\,W(S)$, где минимум берется по всем КС S, реализующим функцию f; W(n) = $max\,W(f)$, где максимум берется по всем булевым функциям f от n переменных. По аналогии с другими подобными величинами (см., например, [14, с. 32]), назовем величину W(n) функцией Шеннона равномерной ширины контактных схем; она определяет минимально возможную равномерную ширину таких схем, достаточную для реализации произвольной булевой функции от n переменных.

Имеет место следующая тривиальная верхняя оценка величины W(n).

Предложение 4. Для любого $n \in \mathbb{N} \cup {\text{\{ }}0{\text{\} }}$ справедливо неравенство $W(n) \leqslant n$.

Элементарной конъюнкцией (переменных из множества ${\text{\{ }}{{x}_{1}},\; \ldots ,\;{{x}_{n}}{\text{\} }}$) называется выражение вида $x_{{{{i}_{1}}}}^{{{{\sigma }_{1}}}}\& \; \ldots \;\& x_{{{{i}_{r}}}}^{{{{\sigma }_{r}}}}$, где $r \in {\text{\{ }}1,\; \ldots ,\;n{\text{\} }}$, ${{i}_{1}},\; \ldots ,\;{{i}_{r}}$ – попарно различные индексы от 1 до n и ${{\sigma }_{1}},\; \ldots ,\;{{\sigma }_{r}} \in {\text{\{ }}0,\;1{\text{\} }}$; при этом полагаем

${{x}^{\sigma }} = \left\{ \begin{gathered} x,\quad {\text{если}}\quad \sigma = 1, \hfill \\ \bar {x},\quad {\text{если}}\quad \sigma = 0. \hfill \\ \end{gathered} \right.$

2. ОСНОВНЫЕ РЕЗУЛЬТАТЫ

Выделим два возможных представления булевой функции $f({{\tilde {x}}^{n}})$:

(1)
$\begin{gathered} f({{{\tilde {x}}}^{n}}) = \mathcal{K}, \hfill \\ \hfill \\ \end{gathered} $
где $\mathcal{K}$ – элементарная конъюнкция;
(2)
$\begin{gathered} f = {{\varphi }_{1}}\& \; \ldots \;\& {{\varphi }_{k}}, \hfill \\ \hfill \\ \end{gathered} $
где $k \in \mathbb{N}$ и для любого $i \in {\text{\{ }}1,\; \ldots ,\;k{\text{\} }}$ функция ${{\varphi }_{i}}({{\tilde {x}}^{n}})$ имеет вид либо ${{\mathcal{K}}_{i}}$, либо ${{\mathcal{K}}_{i}} \vee \mathcal{K}_{i}^{'}$, где ${{\mathcal{K}}_{i}}$, $\mathcal{K}_{i}^{'}$ – элементарные конъюнкции.

Теорема 1. Для любой булевой функции $f({{\tilde {x}}^{n}})$ справедливо равенство

Все верхние оценки величины $W(f)$ в теореме 1 доказаны конструктивно, т.е. с предъявлением конкретных контактных схем, дающих эти оценки. При доказательстве нижних оценок той же величины используется следующая

Лемма 1. Пусть S – такая КС без изолированных вершин, что $W(S) \in {\text{\{ }}1,\;2{\text{\} }}$ и для каждого контакта K данной схемы определено значение ${{W}_{K}}(S)$. Тогда схема S представима в виде последовательного соединения $m$ контактных схем, где $m \in \mathbb{N}$ и каждая из этих $m$ схем представляет собой либо одиночный контакт, либо параллельное соединение двух НЦ.

Теорема 2. Для любого $n \in \mathbb{N} \cup {\text{\{ }}0{\text{\} }}$ справедливо равенство $W(n) = min(3,n)$, причем доля тех булевых функций f от n переменных, для которых $W(f) = 3$, стремится к 1 при $n \to \infty $.

Теорема 2 несложным образом вытекает из теоремы 1 и следующей леммы.

Лемма 2. Для любой булевой функции $f({{\tilde {x}}^{n}})$, $n \geqslant 2$, представимой в виде (2) и отличной от константы 1, существуют такие различные индексы $i,j \in {\text{\{ }}1,\; \ldots ,\;n{\text{\} }}$ и такие $\alpha ,\beta \in {\text{\{ }}0,\;1{\text{\} }}$, что данная функция при подстановке вместо переменных xi и xj значений соответственно α и β становится равна тождественному нулю.

Список литературы

  1. Лупанов О.Б. Асимптотические оценки сложности управляющих систем. М.: Изд-во Моск. ун-та, 1984. 138 с.

  2. Shannon C.E. A symbolic analysis of relay and switching circuits // Trans. AIEE. 1938. V. 57. P. 713–723.

  3. Shannon C.E. The synthesis of two-terminal switching circuits // Bell Syst. Tech. J. 1949. V. 28. № 1. P. 59–98.

  4. Коршунов А.Д. Сложность вычислений булевых функций // Успехи матем. наук. 2012. Т. 67. Вып. 1 (403). С. 97–168.

  5. Мадатян Х.А. Синтез контактных схем ограниченной ширины // Проблемы кибернетики. Вып. 14. М.: Наука, 1965. С. 301–307.

  6. Карпова Н.А. О вычислениях с ограниченной памятью // Матем. вопросы кибернетики. Вып. 2. М.: Наука, 1989. С. 131–144.

  7. Окольнишникова Е.А. О сложности ветвящихся программ // Матем. вопросы кибернетики. Вып. 10. М.: Физматлит, 2001. С. 69–82.

  8. Ложкин С.А. Лекции по основам кибернетики (учебное пособие для студентов). М.: Издательский отдел ф-та ВМиК МГУ, 2004. 251 с.

  9. Коноводов В.А. О синтезе схем ограниченной ширины // Материалы VIII молодежной научной школы по дискретной математике и ее приложениям. Москва, 24–29 октября 2011 г. М., 2011. С. 37–41.

  10. Кравцов С.С. О реализации функций алгебры логики в одном классе схем из функциональных и коммутационных элементов // Проблемы кибернетики. Вып. 19. М.: Наука, 1967. С. 285–292.

  11. Попков К.А. О диагностических тестах размыкания для контактных схем // Дискретная математика. 2019. Т. 31. Вып. 2. С. 124–143.

  12. Попков К.А. Короткие единичные проверяющие тесты для контактных схем при обрывах и замыканиях контактов // Интеллектуальные системы. Теория и приложения. 2019. Т. 23. Вып. 3. С. 97–130.

  13. Попков К.А. Короткие тесты замыкания для контактных схем // Матем. заметки. 2020. Т. 107. Вып. 4. С. 591–603.

  14. Редькин Н.П. Надежность и диагностика схем. М.: Изд-во Моск. ун-та, 1992. 192 с.

Дополнительные материалы отсутствуют.

Инструменты

Доклады Российской академии наук. Математика, информатика, процессы управления