Научная статья на тему 'Тестирование бесповторных функций в элементарном базисе'

Тестирование бесповторных функций в элементарном базисе Текст научной статьи по специальности «Математика»

CC BY
52
22
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОВЕРЯЮЩИЙ ТЕСТ / БЕСПОВТОРНАЯ ФУНКЦИЯ / ФУНКЦИЯ ШЕННОНА / ЭЛЕМЕНТАРНЫЙ БАЗИС / CHECKING TEST / READ-ONCE FUNCTION / SHANNON FUNCTION / ELEMENTARY BASIS

Аннотация научной статьи по математике, автор научной работы — Чистиков Д. В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Testing read-once functions over elementary basis

We prove a universal upper bound on checking test length for read-once functions over elementary basis. We also establish the exact value of the corresponding Shannon function for the basis of conjunction and disjunction.

Текст научной работы на тему «Тестирование бесповторных функций в элементарном базисе»

УДК 519.718.7

Д.В. Чистиков1

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

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

Ключевые слова: проверяющий тест, бесповторная функция, функция Шеннона, элементарный базис.

Задача проверяющего тестирования бесповторных функций — тестирование относительно бесповторной альтернативы — поставлена A.A. Вороненко в работе [1]. Для бесповторной функции /(ж 1,..., жп), существенно зависящей от всех своих переменных, требуется построить тест — множество наборов, отличающих / от всех остальных бесповторных функций тех же переменных. Такая постановка, в отличие от ряда родственных ей задач, является невырожденной и имеет полиномиальные решения для широкого класса булевых базисов. В настоящей статье исследуется случай элементарного базиса из конъюнкции, дизъюнкции и отрицания. Минимальная длина теста (количество наборов в нем) функции / обозначается символом Т(/), значение соответствующей функции Шеннона — символом Т(п). В работе [2] получено неравенство Т(п) < 7п/2. Основной целью настоящей работы является получение следующей оценки.

Теорема 1. Всякая бесповторная в базисе {&, V,->} функция f(x\,... ,хп) допускает тест относительно бесповторной альтернативы, имеющий длину не более 2п + 1:

Т(п) < 2п+ 1.

1 Факультет ВМК МГУ, асп., e-mail: dchQcs.msu.ru

* Работа выполнена при финансовой поддержке гранта Президента РФ МД-757.2011.9.

Для дизъюнкции п переменных очевидна нижняя оценка Т(х\ V ... V хп) ^ п + 1. С. Е. Бубнов сформулировал гипотезу о том, что Т(/) = п +1 для всех бесповторных функций /, имеющих в точности п существенных переменных. Отметим, что, к примеру, в базисе всех функций двух переменных универсальная верхняя оценка (™) + п + 1 совпадает с длиной единственного тупикового теста для дизъюнкции [3]. В то же время для индивидуальных бесповторных функций в этом базисе известны более сильные, в том числе линейные верхние оценки [4].

Замечание. Для элементарного базиса неудачная попытка доказательства универсальной верхней оценки, равной п + 1, содержится в работе [5]: в частности, для функции / = (х,\ V ж2) & (жз V Ж4) изложенный алгоритм в качестве теста строит множество наборов (0010), (0110), (1000), (1001), (1010), которое тестом не является. Тем не менее можно убедиться, что / допускает тест длины 5, состоящий из наборов (0011), (1100), (1010), (0110), (1101). Таким образом, к настоящему моменту гипотезу С.Е. Бубнова нельзя считать ни доказанной, ни опровергнутой.

Перейдем к изложению основных результатов настоящей работы. Пусть ¡{х\,... ,хп) — бесповторная функция, существенно зависящая от всех своих переменных. Построим вспомогательные множества входных наборов Аа(/) и Ах(/) согласно следующему индуктивному описанию.

1. Пусть / = а*. Тогда А0(/) = {(0)} и А^) = {(1)}.

2. Пусть / = /1 &/2 к,... &/<;, где /г — либо переменные, либо конъюнкции монотонных бесповторных функций. (В случае / = /1 V /2 V ... V построение осуществляется двойственным образом.) Будем считать, что порядок переменных / задается последовательным перечислением всех переменных /1, затем переменных /2,...,/в. Соответствующие разным функциям группы переменных будем отделять друг от друга вертикальной чертой. Выберем произвольно по одному набору щ € ^4.1 (/¿) и включим в А\{[) набор

а = (а1\а2 \ ■ ■ ■ |ав),

а также всевозможные наборы, получаемые из а заменой какого-либо одного поднабора щ на произвольный поднабор а\ из соответствующего Ах(/¿). Множество А0(/) составим из всевозможных наборов вида

/3 = (1|...|1|Д|1|...|1),

где Д € А0(/г), г = 1,..., 5, и символы 1 обозначают поднаборы из единиц.

3. Пусть / получается из /' подстановкой х$ вместо хц в формулу для /'. Тогда наборы множеств Аа(/) и Ах(/) получаются из соответствующих наборов для /' инвертированием разряда, отвечающего переменной ж*.

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

Утверждение 1. Для любой монотонной бесповторной функции /(х\,... ,хп) множества Аа(/) и Ах(/) состоят из верхних нулей и нижних единиц / соответственно.

Утверждение 2. Если х^ — существенная переменная монотонной бесповторной функции /, то в множестве Аа(/) найдется набор с х^ = 0, а в множестве Ах(/) — набор с х% = 1.

Лемма 1. Для всякой бесповторной функции / множество Аа(/)иА1(/) содержите точности п + 1 набор, где п — число существенных переменных /.

Доказательство. Из утверждения 1 следует, что для всякой бесповторной функции / множества Аа(/) и Ах(/) не пересекаются, так что мощность их объединения равна сумме их мощностей. Применим метод математической индукции. В случае п = 1 утверждение леммы очевидно. Пусть п)2и без ограничения общности / = /1 & ... & где 5^2. Тогда по построению А0(/) и Ах(/)

\М/)\ + |А1(/)| - 1 = £ \АоШ\ + (1 + Е (\МП)\ - 1)) - 1 = Е (\МП)\ + |А1(/,)| - 1),

1=1 ^ 1=1 ' 1=1 что и дает искомое в силу предположения индукции.

Лемма 2 (основная). Для любой бесповторной в базисе {&, V} функции /, существенно зависящей от всех своих переменных, множество Аа(/) иА^/) является тестом относительно бесповторной альтернативы в базисе {&, V}.

Доказательство проводится индукцией по глубине бесповторной формулы, реализующей /. При п = 1 рассматриваемое множество содержит все возможные входные наборы. Пусть я ) 2 и без ограничения общности / = /1 & /2 & ... & , где — переменные и дизъюнкции бесповторных

функций и s ^ 2. Восстановим /, используя только ее бесповторность в базисе {&, V} и значения на наборах множества AQ(f) U Ai(f). Заметим, что

/(ai|a2| ... |as) = 1, а[ G A1(f1), (входные наборы / — из A1(f))

f(ßi\l\... |1) = 0, ßi G A0(/i), (входные наборы / — из AQ(f))

=>/(/01 ¡«2! • • • |«s) = 0, ßi G A0(/i), (из монотонности /)

=>/(—1«21 • • • |«S) = /1 (по предположению индукции).

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

Воспользуемся тем фактом, что для любой пары переменных хи хт остаточная подфункция / вида h(xk-, хт), существенно зависящая от хи хт, не зависит от выбора констант, подставляемых на места остальных переменных /. Для восстановления / достаточно восстановить граф множество вершин которого совпадает с множеством существенных переменных /, а произвольное ребро (ж^, хт) присутствует тогда и только тогда, когда у / существует подфункция, равная x^hxm. Данная техника восходит к работе В. А. Гурвича [6] и применялась, к примеру, в работах [2] и [7]; наиболее общее ее изложение в применении к задаче тестирования относительно бесповторной альтернативы можно найти в работе [4]. В данном случае достаточно доказать связность каждого подграфа графа порожденного множеством вершин — переменных подфункций fi и fj (тогда, поскольку дополнение такого подграфа обязано при этом быть несвязным, недостающая информация о ребрах восстанавливается автоматически). При этом, согласно вышеизложенному, можно считать известными отдельные порожденные подграфы для всех /¿: каждый такой подграф либо состоит из единственной вершины, либо несвязен и имеет компоненты связности, отвечающие слагаемым разложения fi в дизъюнкцию бесповторных функций.

Рассмотрим для определенности подграф для f\ и /2. Не ограничивая общности рассуждений, предположим, что набор а, включенный в тест, имеет вид

а = («1д0 ... 0|а2д0 .. .0|а3| ... |as).

Здесь и далее компоненты наборов разбиваются на группы в соответствии с бесповторными представлениями / = fi & /2 &... & fs и fi — fi,i V ... V fi^mi символы 0 обозначают поднаборы из нулей. Уже восстановленная информация об / позволяет определить, что на наборах, отличающихся от а значениями компонент, равных в «1д и а2д единице, / принимает значение 0 (согласно утверждению 1, наборы «1д и а2д суть нижние единицы fiд и /2д соответственно), так что как минимум для одной пары переменных хи хт подфункций и /2д имеется подфункция — их конъюнкция. Восстановим теперь по одному ребру между переменными подфункций /1д и /2j-, а также между переменными подфункций fiti и /2д для всех допустимых г и j, тогда связность рассматриваемого подграфа будет доказана.

Не ограничивая общности рассуждений, рассмотрим только одну пару /1д и /2)2. Указанный выше вид набора а предполагает наличие в А\(/) хотя бы одного набора вида

(«1д0 ... 0|0а2)20 ... 0|«з| ... |as), а2)2 G Ai(/2,2),

поэтому

/(а 1д0 ... 0|0а2)20 ... 0|«з| ... |as) = 1 (входной набор / — из Ai(f)) =>/(7i,i) = 1, 7i,i = («i,i0 ... 0|0а2)20 ... 0|1| ... |1) (из монотонности /).

Кроме того,

f(ßi\l\... |1) = 0, ßi G A0(/i), (входные наборы / — из AQ(f))

/(«i|a2| ... |as) = 1, «i G Ai(f\), (входные наборы / — из A1(f))

^/(a'Jll ... |1) = 1, a[ G Ai(/1), (из монотонности /)

=>/(—|l|...|l) = /i (по предположению индукции).

В силу утверждения 1 для всякого поднабора а[ получаемого из «1д заменой единицы нулем в одной из компонент,

/(а'1Д0...0|1| ... |1) = О =>/(7од) = 0, 7од = (а[ ^0 ... 0|0а2)20 ... 0|1| ... |1) (из монотонности /).

Имеем также

/(а 1Д0 ... 0|аз|аз| ... |as) = 1, а2 G A1(f2), (входные наборы / — из Ai(/))

=>/(ai,i0 ... 01«з111 ... |1) = 1, «2 G Ai(/2), (из монотонности/)

_/(Х|/?2111 ... |1) = 0, /?2 €Е А0(/2), (входные наборы / — из AQ(f))

=>/(«i,iO • • • 01/За111 ... |1) = 0, /?2 G А0(/2), (из монотонности/)

=^/(öi,iO • • • 01 — |X| ... |1) = /2 (по предположению индукции) => /(7i,o) = 0, 7i,o = («i,iO ... 0|0«2 20 ... О|X| ... |1), (из монотонности/)

где «2 2 получается из «2,2 заменой какой-либо единицы нулем.

Значения / на трех наборах 71,1, 70,1 и 71,0 доказывают наличие у нее подфункции — конъюнкции некоторых двух переменных /1,1 и /2,2- Согласно вышесказанному, таким образом доказана связность порожденного подграфа для /1 и /2. Случай, когда хотя бы одна из этих функций имеет лишь одну существенную переменную, разбирается аналогичным образом. Лемма доказана.

Из леммы 1 и леммы 2 следует

Теорема 2. Всякая бесповторная в базисе {&, V} функция f(x 1,...,хп) допускает тест относительно бесповторной альтернативы, имеющий длину не более п + 1.

Данная теорема устанавливает точное значение функции Шеннона длины теста относительно бесповторной альтернативы в базисе из конъюнкции и дизъюнкции. Утверждение теоремы означает, что дизъюнкция п переменных является самой сложной (в смысле проверяющего тестирования) бесповторной функцией в этом базисе. Заметим, что в этом базисе имеются бесповторные функции, тестируемые легче дизъюнкции: в работе [7] построен пример подпоследовательности функций, зависящих от п переменных и допускающих тесты длины менее 3^/п.

Вернемся к случаю элементарного базиса.

Доказательство теоремы 1. Не ограничивая общности рассуждений, будем считать, что / монотонна и не имеет фиктивных переменных. Согласно утверждению 2, для каждой переменной Xi найдется набор Si € Ai(f) с ж* = 1. Согласно утверждению 1, на наборе отличающемся от Si лишь значением Xi = 0, функция / принимает значение 0, в то время как ¡{8%) = 1. Включим в множество A2(f) по одному набору 5\ для каждого i. Тогда значения / на наборах множества AQ(f)UAi(f)UA2(f), во-первых, доказывают монотонность / по всем переменным (бесповторность в базисе {&, V}) и, во-вторых, отличают / от всех остальных бесповторных в {&, V} функций тех же переменных. Следовательно, это множество является тестом для / относительно бесповторной альтернативы в базисе {&, V, -i}. С учетом леммы 1 получаем, что длина этого теста не превосходит (п + 1) + п = 2п + 1. Теорема доказана.

СПИСОК ЛИТЕРАТУРЫ

1. Вороненко А. А. О проверяющих тестах для бесповторных функций // Математические вопросы кибернетики. Вып. И. М.: Физматлит, 2002. С. 163-176.

2. Вороненко A.A. О длине проверяющего теста для бесповторных функций в базисе {0,1, &:, V, —>} // Дискр. матем. 2005. 17. № 2. С. 139-143.

3. Рябец J1. В. Сложность проверяющих тестов для бесповторных булевых функций // Дискретная математика и информатика. Вып. 18. Иркутск: Изд-во Ирк. гос. пед. ун-та, 2007. 30 с.

4. Вороненко A.A., Чистиков Д.В. Индивидуальное тестирование бесповторных функций//Учен. зап. Казан, гос. ун-та. Сер. Физ.-матем. науки. 2009. 151. Кн. 2. С. 36-44.

5. Бубнов С.Е. Функция Шеннона длины проверяющих тестов функций, бесповторных в элементарном базисе // Сборник статей молодых ученых факультета ВМК МГУ. Вып. 6. М.: Изд. отдел ф-та ВМК МГУ; МАКС Пресс, 2009. С. 47-57.

6. Гурвич В. А. О бесповторных булевых функциях // Успехи математических наук. 1977. 32. № 1. С. 183184.

7. Бубнов С.Е., Вороненко A.A., Чистиков Д.В. Некоторые оценки длин тестов для бесповторных функций в базисе {&, V} // Прикладная математика и информатика. Вып. 33. М.: МАКС Пресс, 2009. С. 90-100.

Поступила в редакцию 28.02.11

TESTING READ-ONCE FUNCTIONS OVER ELEMENTARY BASIS Chistikov D. V.

We prove a universal upper bound on checking test length for read-once functions over elementary basis. We also establish the exact value of the corresponding Shannon function for the basis of conjunction and disjunction. Keywords: checking test, read-once function, Shannon function, elementary basis.

i Надоели баннеры? Вы всегда можете отключить рекламу.