2013 Теоретические основы прикладной дискретной математики №1(19)
УДК 621.391: 519.728
ДВОИЧНЫЕ ПРЕДСТАВЛЕНИЯ НЕДООПРЕДЕЛЁННЫХ ДАННЫХ
И ДИЗЪЮНКТИВНЫЕ КОДЫ1
Л. А. Шоломов Институт системного анализа РАН, г. Москва, Россия E-mail: [email protected]
Рассматриваются достаточно компактные представления недоопределённых данных, позволяющие полностью восстановить исходные данные (а не только их доопределения). Их построение основано на введённых и изученных в данной работе специальных матрицах, названных селективными. Они обобщают широко применяемые в информатике дизъюнктивные матрицы. Исследованы свойства селективных матриц и получены оценки длины представления данных в функции от некоторых параметров. Рассмотрены сложностные вопросы, связанные с построением представлений.
Ключевые слова: недоопределённые данные, сжатие, двоичное представление, базис системы множеств, длина представления, дизъюнктивная матрица, дизъюнктивный код, свободное от покрытий семейство, полиномиальный алгоритм.
Введение
Для полностью определённых данных термины «сжатие» и «архивация» обычно понимаются одинаково. Они означают экономное кодирование данных, обеспечивающее их полное восстановление. Для недоопределённых данных эти понятия будем различать.
В качестве недоопределённых данных мы рассматриваем последовательности недоопределённых символов. Каждому такому символу соответствует некоторое множество основных (полностью определённых) символов, одним из которых он может быть замещён (доопределён). Имеются две естественные постановки задачи кодирования недоопределённых данных.
В первой постановке кодирование должно обеспечить восстановление какого-либо доопределения исходных данных (но не их самих). Она соответствует случаю, когда допустимо любое доопределение данных. При второй постановке от кодирования требуется, чтобы оно позволяло полностью восстановить исходные недоопределённые данные. К такой постановке приводит задача их хранения. Термин «сжатие» будем связывать с первой постановкой, термин «архивация» — со второй.
До сих пор мы имели дело с первой постановкой (например, в [1]). На её основе введена энтропия недоопределённых данных как характеристика степени сжатия, определены другие информационные показатели. Данная работа инициирована второй постановкой; часть её результатов имеется в [2].
Рассмотрим побуквенное представление недоопределённых последовательностей. Символы основного алфавита кодируются наборами из 0 и 1, а недоопределённые сим-
1 Работа выполнена при поддержке ОНИТ РАН по проекту «Теоретические основы эффективного использования недоопределённой информации» программы «Интеллектуальные информационные технологии, системный анализ и автоматизация».
волы представляются наборами из 0, 1 и *, где * —неопределённый символ. Ставится условие, чтобы отношение доопределимости между основными и недоопределёнными символами переносилось на представляющие их наборы. Это позволяет решать задачи, связанные со сжатием и доопределением данных, работая непосредственно с представлениями.
Если Л и Л — матрицы, столбцами которых являются соответственно представления основных и недоопределённых символов, то при мощности m основного алфавита матрица Л состоит из m столбцов, а число столбцов матрицы TV может достигать 2m — 1. Это делает процедуры представления недоопределённых последовательностей, применяющие матрицу Л, неэффективными. В работе предложен эффективный способ, использующий лишь матрицу Л. В результате этого задача экономного представления недоопределённых последовательностей свелась к построению допустимых матриц кодирования Л с возможно малым числом строк.
Работа посвящена характеризации и изучению свойств матриц кодирования Л, их построению и оценке параметров. Показано, что эти матрицы обладают некоторым свойством, названным селективностью, и их частным случаем являются дизъюнктивные матрицы. Последние введены в работе [3] как средство описания дизъюнктивных (superimposed) кодов. Эти коды широко применяются в различных задачах прикладной математики и информатики (см., например, [3-7] и цитированные там источники). Учитывая направленность журнала ПДМ, отметим применение дизъюнктивных кодов в криптографии для задачи распределения ключей [5, 8-9]. Дизъюнктивные коды интенсивно изучаются в течение многих лет, и некоторые из полученных для них результатов используются в данной работе.
1. Двоичное представление
Задан алфавит А0 = {a0, ai,... , am-1} основных символов. Пусть M = {0,1,... , m — 1} и каждому непустому T Ç M поставлен в соответствие символ ат. Символ ат называется недоопределённым и его доопределением считается всякий основной символ ai, i G T. Символ ам, доопределимый любым основным символом, называется неопределённым и обозначается *. Под доопределением последовательности aTl ... aTv недоопределённых символов понимается любая последовательность ail ... aiv основных символов, полученная из исходной заменой всех символов какими-либо доопределениями. Пусть выделена система T некоторых непустых подмножеств T множества M и с ней связан недоопределённый алфавит А = Ат = {aT : T G T}.
Задавшись натуральным числом s, припишем каждому ai G А0 некоторый набор
Ai = (Ai(1), Ai(2),..., Ai(s)) G {0,1}s — код символа ai, а каждому aT G A — некоторый
набор AT = (AT (1),AT (2),...,AT (s)) G {0,1, *}s. Обозначим через Л матрицу, столбцами которой являются наборы (точнее, транспонированные наборы) Ai, i G M, а через Л — матрицу со столбцами AT, T G T. Скажем, что пара (Л, Л) задает двоичное представление алфавита А, если для любых T G T и i G M
Ai доопределяет AT ^ i G T.
(Фактически используется расширенное двоичное представление — к 0 и 1 добавляется символ *, но удобно говорить о двоичном представлении.)
Утверждение 1. Всякий алфавит А двоично представим, т. е. обладает представлением указанного вида.
Такое представление можно получить, назначив s = m и взяв в качестве Ai, i G M, набор (Ai(v), v = 1,... , m), в котором компонента Ai(v) равна 1 для v — 1 = i и 0 для
v — 1 = i, а в качестве AT, T G T, — набор (AT(v), v = 1,... , m), в котором компонента AT (v) равна * для v — 1 G T и 0 для v — 1 G T. ■
Двоичное представление алфавита Ат допускает интерпретацию в терминах вложения системы T подмножеств множества M в булев куб {0,1}s (подходящей размерности s). При вложении каждому i G M сопоставляется некоторая точка Ai куба, каждому T G T — некоторый подкуб At , и этот подкуб содержит те и только те точки Ai, которые соответствуют значениям i G T. Параметр s будем называть размерностью представления (вложения). Наименьшее s, при котором для алфавита А имеется двоичное представление размерности s, обозначим s (А) и назовем размерностью алфавита А.
Будем рассматривать побуквенное представление недоопределённых последовательностей, при котором последовательности aTl aT2 ... aTv соответствует представление At1 At2 ... Atn . Его построение и восстановление по нему исходной недоопределён-ной последовательности использует матрицу Л, число столбцов которой может достигать 2m — 1. Это делает процедуру неэффективной (неполиномиальной). Покажем, что задачи представления и восстановления недоопределённых последовательностей можно эффективно решать, пользуясь лишь матрицей Л, имеющей m столбцов.
Дальше, говоря о множестве столбцов T матрицы Л, будем иметь в виду столбцы Ai с индексами i G T. Недоопределённый набор ÀT G {0,1, *}s назовём T-селектором для матрицы Л, если все столбцы множества T являются его доопределениями и никакой другой столбец матрицы его не доопределяет. Матрицу Л будем называть T -селективной, если при каждом T G T для нее существует T-селектор. В случае, когда система T образована всеми t-элементными подмножествами множества M, T-селективную матрицу будем называть t-селективной.
Утверждение 2. Двоичное представление алфавита Ат, использующее матрицу кодирования Л, существует тогда и только тогда, когда она T-селективна.
Действительно, если Л T-селективна, то в качестве столбцов матрицы Л в двоичном представлении могут быть взяты T-селекторы Ат, и наоборот, если представление (Л, Л) существует, то роль T-селекторов Ат могут играть столбцы матрицы А. ■
Число строк матрицы Л будем обозначать s (Л). По матрице кодирования Л с s^) = s построим наборы Ат G {0,1, *}s, T G T, положив компоненту AT(v), v = 1,..., s, набора равной т G {0,1}, если Ai(v) = т для всех i G T, и равной *, если найдутся i, j G T, для которых Ai(v) = Aj(v).
Утверждение 3. Если матрица Л T-селективна, то при каждом T G T набор Ат является T-селектором.
Доказательство. Для всех i G T столбцы Ai доопределяют Ат по построению. Рассмотрим j G T. Возьмем произвольный T-селектор Ат. Он не доопределим до Aj, т. е. при некоторых v и т имеет место Ат (v) = т, Aj (v) = f. Все столбцы Ai, i G T, доопределяют A t , а потому имеют A^v) = т. Отсюда Ат (v) = т = Aj (v) и, следовательно, Aj не доопределяет Ат. ■
Отметим, что если столбцы Ai матрицы Л интерпретировать как точки куба {0,1}s, то набор Ат соответствует минимальному (по включению) подкубу, содержащему все точки Ai, i G T.
Следствие 1. Если алфавит А двоично представим с матрицей кодирования Л, то одним из его двоичных представлений является (Л, Л), где Л — матрица, образованная столбцами Ат, T G T.
Представление (Л,Л), будем называть каноническим. С использованием матрицы Л нахождение канонического представления Ат символа ау и восстановление символа ау по каноническому представлению Ау выполнимы с линейной относительно площади тз матрицы сложностью. Дальше будем рассматривать канонические представления. В этом случае задача нахождения двоичного представления алфавита А-у сводится к задаче построения Т-селективной матрицы.
2. Сведение к задаче о конъюнктивном базисе
Скажем, что система 2 подмножеств множества М образует конъюнктивный базис системы Т, если каждое множество Т £ Т может быть получено как пересечение некоторых множеств из 2, и образует обобщённый конъюнктивный базис, если каждое Т £ Т может быть получено как пересечение каких-либо множеств из 2 либо их дополнений (до М). При этом считается, что пересечение пустой совокупности множеств даёт М, так что множество М конъюнктивно порождаемо любой системой 2.
Строки матрицы Л будем обозначать через А (и), V = 1,... , 5. Строке А(г>) сопоставим множество X С М, X = {г : А^) = 1}, характеристическим набором которого строка является. Положим 2 = {^,... , ^}.
Утверждение 4. Матрица кодирования Т-селективна тогда и только тогда, когда соответствующая ей система множеств 2 образует обобщённый конъюнктивный базис системы Т.
Доказательство. Для X С М и т£ {0,1} под ZT будем понимать X при т = 1 и X = М \ X при т = 0.
1. Пусть матрица кодирования Л является Т-селективной, 2 — соответствующая ей система множеств, Л — матрица канонического представления, построенная по Л. Рассмотрим произвольное Т £ Т. Положим Уу = {V : Ау(V) = *} и убедимся, что
т = п хЯт ^. (1)
уЕ Ут
Если множество Уу пусто, то столбец Ау образован элементами * и его доопределяют все столбцы матрицы Л. В этом случае Т = М и равенство (1) выполнено в силу соглашения относительно пересечения пустой системы множеств.
Дальше считаем Уу = 0. Для любого г £ Т столбец А* доопределяет Ат и, следовательно, при каждом V £ Уу выполнено А^) = Ау (V). Это означает, что г содержится
в каждом множестве (^, V £ ^, а потому и в их пересечении. С учётом про-
извольности г Т заключаем, что Т включено в пересечение из правой части (1). Обратное включение вытекает из того, что для всякого у £ Т столбец А^- не является доопределением столбца Ат, т.е. при некотором V £ Уу имеет место А^(V) = Ат(V), а
потому у £ и у не содержится в пересечении из (1). Равенство (1) показывает,
что система 2 образует обобщённый конъюнктивный базис для Т.
2. Пусть задан обобщённый конъюнктивный базис 2 = {^1,...,Х8} системы Т. Для г £ М и V =1,...,5 положим А^) = 1, если г £ X, и А^) = 0, если г £ X. Образуем матрицу Л = ||Аг^)||. Всякое множество Т £ Т представимо в виде пересечения некоторых множеств X или их дополнений. Фиксируем одно из таких представлений и обозначим через Уу совокупность индексов V участвующих в нём множеств X. Для V £ Уу положим Ау(V) равным 1 или 0 в зависимости от того, в какой из форм — X или X — входит в пересечение это множество. Если множество X системы 2 не
участвует в рассматриваемом представлении, полагаем Ау(V) = *. В принятых обозначениях представление записывается в виде
Т = п XЛт^. (2)
Образуем матрицу Л = ||Ат(V)!. Пара (Л, Л) двоично представляет алфавит А, ибо столбец А, доопределяет Ат тогда и только тогда, когда для любого V £ ^ выполнено А, (V) = Ау(V), что эквивалентно соотношениям г £ XЛт(,и), а это в силу (2) имеет место тогда и только тогда, когда г £ Т. ■
Следствие 2. Двоичное представление алфавита А = Ат, имеющее размерность в, существует тогда и только тогда, когда у системы Т имеется обобщённый конъюнктивный базис мощности в.
Проверка, образует ли система 2 обобщённый конъюнктивный базис для Т, выполнима с полиномиальной относительно мощностей систем 2, Т и множества М сложностью. Это следует из того, что множество Т £ Т представимо в виде пересечения некоторых множеств из 2 или их дополнений тогда и только тогда, когда Т совпадает с пересечением всех содержащих его множеств Я", X £ 2, т £ {0,1}.
Обозначим через [Т] замыкание системы множеств Т относительно операции пересечения. В [Т], в частности, содержится множество М как пересечение пустой системы множеств. Из того, что обобщённый конъюнктивный базис системы Т является таковым и для [Т], вытекает следующий факт.
Следствие 3. Т-селективная матрица [Т]-селективна.
Это позволяет в задачах построения и упрощения Т-селективных матриц не принимать в расчет множества системы Т, являющиеся пересечениями других.
Задача о размерности алфавита состоит в том, чтобы по алфавиту А (эквивалентно, по системе Т) и числу в узнать, существует ли для А двоичное представление размерности 5.
Утверждение 5. Задача о размерности алфавита КР-полна.
Доказательство. Согласно следствию 2, достаточно установить КР-полноту задачи об обобщённом конъюнктивном базисе. Переход от множеств системы Т к их дополнениям превращает её в задачу об обобщённом дизъюнктивном базисе (определения дизъюнктивного и обобщённого дизъюнктивного базисов аналогичны соответствующим определениям конъюнктивного и обобщённого конъюнктивного базисов с тем отличием, что роль пересечения играет объединение). Укажем сведение к ней КР-полной задачи о дизъюнктивном базисе (задача МР7 из [11]).
Пусть требуется решить задачу о (дизъюнктивном) базисе системы Т некоторых подмножеств Т множества М = {0,1,... ,т — 1}. Можно ограничиться случаем М £ Т, ибо общий случай сводится к этому очевидным образом. Образуем множество М' = {0,1,...,т — 1,т} и рассмотрим систему Т', полученную из Т добавлением одноэлементного множества {т}. Докажем, что система Т обладает базисом мощности в (т. е. состоящим из в множеств) тогда и только тогда, когда у системы Т1 имеется обобщённый базис мощности в + 1.
Если система 2 мощности в является базисом для Т, то система {2, {т}} имеет мощность в + 1 и образует базис (и обобщённый базис) для Т'. Обратно, пусть у системы Т' имеется обобщённый базис 2' мощности в + 1. Чтобы покрыть множество { т} Т', он должен содержать множество {т} или его дополнение М' \ {т} = М.
Ни одно из них не может участвовать в покрытии множеств системы Т. Удалив их из 2', получим обобщённый базис 2'' системы Т, состоящий из не более чем в множеств. Для всякого X'' £ 2'' лишь одно из множеств X'' и X'' = М' \ X'' не содержит элемента т и может участвовать в покрытии множеств системы Т. Совокупность таких множеств образует дизъюнктивный базис системы Т. Если он состоит из менее чем в множеств, произвольно дополним его до мощности в. ■
В связи с трудностью нахождения значения в (А) представляют интерес оценки этой величины. Обозначим через в(т, п) максимальное значение в (А) по всем алфавитам А с |А0| = т, |А| = п, где | • | означает мощность множества.
Утверждение 6. Имеет место равенство
в(т, п) = шт{т, п}.
Доказательство. Для алфавита А = Ат с |А0| = т и |А| = п верхнюю оценку в (А) ^ т получим, если в качестве конъюнктивного базиса системы Т возьмем совокупность всех (т — 1)-элементных подмножеств множества М, а верхнюю оценку в (А) ^ п обеспечим, если в качестве конъюнктивного базиса возьмем саму систему Т.
В случае т ^ п нижняя оценка в (А) ^ т справедлива для алфавита А = Ат, у которого система Т состоит из всех (т — 1)-элементных подмножеств множества М и п — т любых других подмножеств, а при п < т оценка в (А) ^ п имеет место для алфавита А = Ат, у которого в качестве Т взята система, образованная множествами М \ {г}, г = 0,1,... п — 1. ■
Мощность |А| алфавита недоопределённых символов может достигать 2|Ао1 — 1. В содержательных задачах обычно |А0| ^ |А|, поэтому в качестве основного будем рассматривать случай
т ^ п. (3)
При условии (3) утверждение 6 приобретает вид
в(т, п) = т. (4)
3. Алфавит с ограниченным числом доопределений
Представляет интерес рассмотрение содержательных случаев, когда размерность алфавита существенно ниже гарантируемой утверждением 6. Недоопределённые данные, с которыми имеют дело в приложениях, обычно помимо неопределённого символа * используют лишь символы, имеющие небольшое число доопределений. Так, например, если в качестве недоопределённого символа выступает нечётко написанная буква, то скорее всего она похожа лишь на небольшое число реальных букв.
Обозначим через в(т,п; £) максимальную из размерностей в(А) алфавитов А, для которых |А0| = т, |А| = п и каждый символ ау £ А имеет не более £ доопределений либо является неопределённым.
Утверждение 7. Справедливы оценки
в(т, п; 2) ^ 41п(тп) + 1; (5)
в(т, п; 3) ^ 81п(тп) + 1; (6)
в(т,п; £) ^ е(£ +1)1п(тп) + 1. (7)
Доказательство. Рассмотрим произвольный алфавит А с параметрами т, п и £. Пусть А = Ат. Поскольку любое двоичное представление реализует символ * = ам автоматически, можно считать, что М £ т и для любого Т £ Т выполнено |Т | ^ £. Согласно утверждению 4, достаточно оценить сверху мощность обобщённого конъюнктивного базиса для системы Т.
Пары (Т, ]), ] £ М \ Т, будем называть фрагментами. Скажем, что множество X реализует фрагмент (Т, ]) прямо, если Т С X, ^ £ X, и реализует инверсно, если Т П X = 0, ^ £ X. Множество реализует фрагмент, если оно его реализует прямо или инверсно. Ясно, что система 2 образует обобщённый конъюнктивный базис для Т тогда и только тогда, когда множествами системы 2 реализуются все фрагменты (Т, ]), Т £ Т, ] £ М \ Т. Для построения и оценки мощности системы с указанным свойством используем вероятностный метод.
Рассмотрим систему в случайных подмножеств множества М, в каждое из которых элементы г £ М включаются независимо с одинаковой вероятностью р, которая будет выбрана позже. Вероятность того, что случайное множество реализует заданный фрагмент (Т,^), составляет р|у|(1 — р) + (1 — р)|у|р, а вероятность, что ни одно из в множеств системы его не реализует, равна (1 — (р|у|(1 — р) + (1 — р)|у!р))8. Эта
величина не превосходит (1 — (р*(1 — р) + (1 — р)*р))8. Поскольку число фрагментов
меньше |Т| • |М| = пт, вероятность отсутствия реализации хотя бы у одного из них меньше
тп( 1 — (р*(1 — р) + (1 — р)*р))8.
Отсюда и из соотношения 1п(1 — х) ^ — х следует, что при любом
1п(тп)
в ^ --------------------
р*(1 — р) + (1 — р)*р
эта вероятность меньше 1 и, следовательно, существует обобщённый конъюнктивный базис такой мощности. Это дает
1п(тп) , ,
в*(т,п) ^ ^ (8)
^ (р)
где ^(р) = р*(1 — р) + (1 — р)*р.
Выберем значение р. Для £ = 2 и 3 функция ^ (р) достигает максимума при р = 1/2. Подстановка этого значения в (8) приводит к оценкам (5) и (6). При произвольном £ с учетом того, что ^¿(р) ^ р*(1 — р) и величина р*(1 — р) при р = £/(£ + 1) принимает значение ¿¿/(£ + 1)*+1, имеем
d + 1/ (t + 1)*+^ e(t + 1)‘
Подставляя эту оценку в (8), приходим к (7). ■
В основном случае (3) соотношение (7) приводит к оценке
s(m, n; t) ^ 2e(t + 1)ln n + 1. (9)
Справедлива тривиальная нижняя оценка
s(m, n; t) ^ log3 n,
вытекающая из мощностного соотношения 3s(m>n;t) ^ |T| = n. Она отличается от верхней оценки (9) по порядку в t раз. Дальше этот разрыв будет сокращен до логарифма t (утверждение 14).
1
4. Строго двоичные представления
В двоичных представлениях рассматриваемого вида недоопределённым последовательностям в алфавите A соответствуют недоопределённые двоичные последовательности, фактически использующие трёхбуквенный алфавит {0,1, *}. Обычно, когда речь идет о сжатии данных, характеристики сжатия связываются с параметрами двоичного кодирования. Данный пункт посвящён представлениям в двухбуквенном алфавите.
Двоичное представление (Л, Л) алфавита A назовем строго двоичным, если Л — матрица в двухбуквенном алфавите. Этим алфавитом может быть {0, *} либо {1, *}. Оба случая равноценны, но удобнее иметь дело с {0, *}, и дальше будем рассматривать этот случай. Построенное в утверждении 1 двоичное представление является строгим, поэтому всякий недоопределённый алфавит строго двоично представим. Если интерпретировать строгое двоичное представление алфавита AT как вложение системы множеств T в булев куб (с. 18), то подкубы, содержащие множества T G T, должны обладать дополнительным свойством — проходить через вершину (0,... ,0).
Опишем вид матриц кодирования Л , возникающих при строго двоичном представлении. Под дизъюнкцией Л V Л' двоичных наборов Л = (Л(1),..., Л(в)) и А' = = (Л'(1),... , Л' (s)) понимается набор с компонентами A(i) V Л' (г), i = 1,...,s. Скажем, что набор Л' покрывает Л, если Л V Л' = Л', и что некоторое множество наборов покрывает Л, если Л покрывается их дизъюнкцией. Матрицу Л со столбцами Л^, i G M, назовем T-дизъюнктивной, если для любого T G T множество столбцов T не покрывает ни одного столбца, не входящего в это множество. В случае, когда система T состоит из всех t-элементных подмножеств множества M, T-дизъюнктивную матрицу называют t-дизъюнктивной. Множество наборов, соответствующих столбцам ¿-дизъюнктивной матрицы, образует t-дизъюнктивный код. Дизъюнктивные (superimposed) коды, введённые в работе [3], находят широкое применение в информатике; T-дизъюнктивные матрицы общего вида встречались в [12].
Утверждение 8. Строго двоичное представление алфавита At , использующее матрицу кодирования Л, существует тогда и только тогда, когда она T-дизъюнктивна.
Доказательство. Если строго двоичное представление с матрицей кодирования Л существует, то у Л при каждом T G T имеется некоторый T-селектор Лt в алфавите {0, *}. Столбцы множества T доопределяют его, и их единицы находятся в позициях, где Лт принимает значение *. Любой другой столбец содержит 1 в некотором нулевом разряде T-селектора Лт и потому не покрывается столбцами множества T. В силу произвольности T G T это означает T-дизъюнктивность матрицы.
Обратно, если матрица T-дизъюнктивна, то T-селектор в алфавите {0, *} для T G T можно образовать, взяв дизъюнкцию столбцов из множества T и заменив в ней все элементы 1 на *. Очевидно, что столбцы Л^, i G T, доопределяют этот набор, а любой столбец Л^-, j G T, не доопределяет, ибо имеет 1 в некотором разряде, где дизъюнкция равна 0. Наличие для каждого T G T T-селектора в алфавите {0, *} обеспечивает строго двоичную представимость. ■
Из этого утверждения, в частности, следует, что T-дизъюнктивные матрицы T-селективны. Применяя в качестве столбцов Лт матрицы Л при строго двоичном представлении T-селекторы из второй части доказательства, можно, пользуясь лишь матрицей Л, эффективно строить строгое представление недоопределённой последовательности и эффективно восстанавливать по нему исходную последовательность. Заменив в этом представлении символы * на 1, получим последовательность в алфавите {0,1},
которую можно рассматривать как код исходной последовательности. При этом кодом символа ау будет дизъюнкция столбцов Лг, г £ Т. Заметим, что по той же матрице Л можно построить каноническое двоичное представление, но оно, как правило, не будет строгим.
Никакой столбец ¿-дизъюнктивной матрицы не покрывается £ другими, поэтому такие матрицы также называют свободными от покрытий [13]; Т-дизъюнктивные матрицы естественно называть свободными от Т-покрытий. Представим в аналогичных терминах понятие Т-селективной матрицы. Под инверсией двоичного набора будем понимать набор, полученный из него заменой всех компонент их отрицаниями. Будем говорить, что некоторое множество наборов инверсно покрывает набор Л, если множество инверсий этих наборов покрывает инверсию набора Л. Скажем, что множество наборов дважды покрывает набор Л, если оно покрывает и инверсно покрывает набор Л. Матрицу Л назовем свободной от двойных Т-покрытий, если для любого Т £ Т множество столбцов Лг, г £ Т, не покрывает дважды ни одного столбца, не входящего в это множество.
Утверждение 9. Матрица Л Т-селективна тогда и только тогда, когда она свободна от двойных Т-покрытий.
Доказательство. Рассмотрим матрицу Л и построенную по ней матрицу Л канонического представления. Убедимся, что столбец Л^- доопределяет столбец Лу тогда и только тогда, когда совокупность столбцов Лг, г £ Т, дважды покрывает Л^-. Пусть Л^- доопределяет Лу. Если для некоторой позиции V имеет место Л^- (V) = т, то лу(V) £ {*, т} и по построению Л найдется г £ Т, для которого Лг^) = т. Применив это рассуждение ко всем позициям V с т = 1, заключаем, что множество столбцов Лг, г £ Т, покрывает Л^-. Аналогичное рассмотрение позиций с т = 0 показывает, что множество инверсий этих столбцов покрывает инверсию столбца Л^-. Это означает, что покрытие двойное. Доказательство в другую сторону проводится обращением этих рассуждений.
Матрица Л Т-селективна тогда и только тогда, когда алфавит Ат представим парой (Л, Л) (утверждение 3). Это означает, что для Т £ Т ни один из столбцов Л^-, ] £ Т, не доопределяет столбец Лу и по доказанному выше не покрывается дважды множеством столбцов Т, т. е. матрица Л свободна от двойных Т-покрытий. ■
Используя это утверждение, продемонстрируем возможность улучшения параметров при переходе от дизъюнктивных матриц к селективным.
Утверждение 10. В результате дописывания к произвольной 2-дизъюнктивной матрице столбца, составленного из единиц, получается 2-селективная матрица.
Доказательство. Обозначим через Л' матрицу, полученную из 2-дизъюнктив-ной матрицы Л дописыванием единичного столбца 1 . Рассмотрим три разных столбца Лг, Л^, Л& матрицы Л'. Если среди столбцов Лг, Л^- нет 1, то они не покрывают Л& в силу 2-дизъюнктивности Л либо того, что Л& = 1. Если же, например, Лг = 1, то Лг Л Л^- = Л.,-не покрывается столбцом Л&, а потому столбцы Лг, Л^- не покрывают инверсно Л&. ■
Полученная матрица Л' не дизъюнктивна, поскольку в дизъюнктивных матрицах отсутствуют поглощения столбцов.
Для Т-дизъюнктивных матриц справедлив аналог утверждения 4. Как и раньше, строкам Л^), V = 1,...,в, матрицы Л сопоставим множества Zv = {г : Лг^) = 1}. Положим 2' = {Хь ... , X.,}, где = М \ Zv.
Утверждение 11. Матрица Т-дизъюнктивна тогда и только тогда, когда соответствующая ей система множеств 2' образует конъюнктивный базис системы Т.
Доказательство опускаем. Это свойство может быть использовано для построения и упрощения Т-дизъюнктивных матриц для конкретных систем Т.
Следующее утверждение указывает способ преобразования Т-селективной матрицы в Т-дизъюнктивную. Пусть Л означает инверсию матрицы Л — результат замены в ней всех элементов их отрицаниями.
Утверждение 12. Если матрица Л Т-селективна, то матрица
Л
, полученная
дописыванием к строкам матрицы Л строк её инверсии, Т-дизъюнктивна.
Этот факт следует из утверждений 4 и 12, поскольку указанное преобразование матриц соответствует переходу от обобщённого конъюнктивного базиса к конъюнктивному базису за счет добавления дополнений множеств, входящих в обобщённый базис. ■
Укажем некоторые различия в свойствах Т-селективных и Т-дизъюнктивных матриц, легко проверяемые непосредственно. В Т-селективных матрицах допустима инверсия строк, а свойство Т-дизъюнктивности при инверсиях может нарушаться. Если Ут означает дизъюнкцию столбцов множества Т, то в Т-дизъюнктивных матрицах наборы У у для разных Те Т различны. Для Т-селективных матриц они могут совпадать, но различными являются пары (Уу, Лу), где Лу — конъюнкция столбцов множества Т. Двойственным к понятию Т-дизъюнктивности является Т-конъюнктивность (для любых Т Е Т и ] Е Т конъюнкция столбцов множества Т не покрывается столбцом ). Класс Т-селективных матриц включает оба эти класса матриц и не исчерпывается ими.
Обозначим через во (А) размерность алфавита А для строго двоичных представлений, определяемую аналогично в (А). Очевидно, в (А) ^ в0(А). Следующий пример показывает, что неравенство может быть строгим.
Пример 1. Пусть основным алфавитом является А0 = |а0, а2, а3}, а алфавит А образован всеми символами, имеющими два доопределения (эквивалентно, не более двух — следствие 3). В силу утверждения 10 матрица
о со
1 1 0 0
1 0 1 0
1 0 0 1
образованная из диагональной матрицы дописыванием столбца из единиц, 2-селек-тивна. Она обеспечивает для алфавита А размерность 3. Из приведённой в [4] нижней оценки Л. А. Бассалыго следует, что при использовании 2-дизъюнктивных матриц наименьшей достижимой размерностью здесь является 4.
На основе в0(А) введём функции в0(т,п) и в0(т, п; ¿), аналогичные тем, которые были определены применительно к в (А). Для них справедливы аналоги утверждений 5, 6 и формулы (4). Оценка функции в0(т, п; ¿) проводится, как в утверждении 7, но вместо ^ (р) в формуле (8) возникает функция ^(р) = р*(1 — р), принимающая наибольшее значение ¿¿/(^ + 1)*+1 при р = ¿/(£ + 1). Аналог оценки (7) сохраняет тот же вид, поскольку в процессе установления (7) вместо ^¿(р) фактически использовалась функция ^(р), а константы в аналогах (5) и (6) возрастают. Подсчёт показывает, что имеет место следующий факт.
Утверждение 13. Справедливы оценки
s0(m, n; 2) ^ 6,75 ln(mn) + 1, s0(m, n; 3) ^ 9,48 ln(mn) + 1, s0(m,n; t) ^ e(t +1)ln(mn) + 1.
Тривиальной нижней оценкой является s0(m,n; t) ^ logn (она будет улучшена). Всюду под log n понимается log2 n.
5. Нижние оценки
В конце п. 3 и 4 приведены тривиальные (мощностные) нижние оценки функций s(m,n; t) и s0(m, n; t). Далее получим нетривиальные нижние оценки на основе установленного в [14] соотношения
s
2(s-i)
t(t+l)
f10)
связывающего параметры t-дизъюнктивной матрицы. Здесь m — число столбцов, s — число строк. Подробнее об оценках для t-дизъюнктивных матриц и их авторстве будет сказано далее.
Начнём со случая строго двоичных представлений.
Утверждение 14. При выполнении условия
--"(sfe) »‘1
справедлива оценка
S0<m"n; 0 ~ 2(-2+og’°+g е)' С -log3T< 1'027- (12)
Доказательство. Поскольку n не превосходит числа подмножеств множе-
ства M, имеющих мощность не выше t, справедливо неравенство
n ^ E(m). (13)
u<i \ U /
i rm!\
Пусть m' — максимальное значение, удовлетворяющее условию n ^ ^ . Очевид-
V U /
но, что m' ^ m. В силу максимальности m' выполнено
n ^ Е (m' + 1) ^ (m' + 1)i.
«^i \ U J
Отсюда с учётом (11) получаем
log n
log(m' + 1) ^ —-— » log log n (14)
(соотношение u ^ v означает v — o(u)), а потому
m' » log n » t. (15)
Положим M1 = {0,1,... ,т/ — 1} и возьмём в качестве T некоторую систему, которая состоит из n подмножеств множества M мощности не выше t и включает все t-элементные подмножества множества MРассмотрим произвольную T-дизъюнктивную матрицу Л, первые т! столбцов которой соответствуют элементам множества M1. Эти столбцы образуют t-дизъюнктивную матрицу и для неё справедливо соотношение (10). В силу тривиальной нижней оценки s ^ log n и условия (11) выполнено
s ^ t. Прологарифмировав (10), получаем с учётом неравенства log ( ) ^ log — и
соотношений (14), (15) и s ^ t
log n
t
<
2s
t(t + 1)
+ 1 log
et(t + 1) 2 '
Отсюда
2s t(t + 1)
+ 1 >
log n
t log
et(t + 1)
f16)
2
Так как в силу (11) выполнено
log n
>
log n
t loget(t +д) (-!orn
Vloglog
2
n
log log n
из (16) находим
t(t + 1) log n
>
(t + 1) log n
2t log
et(t + 1)
2
2 2 log t + log
(t + 1)e 2t
(t + 1) log n
2 [ 2 log t + log —
Отсюда следует (12). ■
При растущем t оценка (12) отличается от верхней оценки функции so (m, n; t) по порядку в log t раз.
Рассмотрим теперь функцию s(m, n; t), относящуюся к двоичным представлениям общего вида. Из утверждения 12 вытекает, что s(A) ^ s0(A)/2, а потому s(m,n; t) ^ ^ s0(m,n; t)/2 и для s(m,n; t) справедлива нижняя оценка из (12), уменьшенная в
2 раза. Следующее утверждение содержит оценку, которая лучше этой при всех t ^ 2.
Утверждение 15. При выполнении условия (11) справедлива оценка
(t — 1)log n
s(m, n; t) > ——:—;--------т----т,
V ; ~ 2(2 log(t — 1) + c)’
f17)
где с — константа из (12).
Доказательство.
1. Рассмотрим сначала случай, когда (т — 1,п,£ — 1) —допустимая тройка, т. е. существует алфавит с такими параметрами. Покажем, что в этом случае
s(m, n; t) ^ s0(m — 1, n; t — 1).
f18)
Пусть А — произвольный алфавит с параметрами (т — 1, п, £ — 1) и ему соответствуют основной алфавит А0 = |а0,... , ат-2} и система множеств Т. Обозначим через АО
1
основной алфавит, полученный из А0 присоединением нового символа am_ 1. Путём добавления к каждому множеству T системы T элемента m — 1 образуем множества T' и систему всех таких множеств обозначим через T7. Алфавит A' = A71 имеет параметры (m, n, t).
Рассмотрим T'-селективную матрицу, на которой достигается s(A'). Путем инверсирования её строк добьемся того, чтобы столбец, соответствующий элементу m — 1 , общему для всех множеств T', стал нулевым; полученную матрицу обозначим Л'. Все T'-селекторы матрицы Л' являются наборами в алфавите {0, *} и потому она T'-дизъюнктивна. Матрица Л, образованная из Л' удалением нулевого столбца, T-дизъюнктивна. В результате получаем
s0(A) ^ s^) = s^') = s(A') ^ s(m, n; t).
Учитывая произвольность алфавита A с параметрами (m— 1, n, t— 1), приходим к неравенству (18), которое совместно с (12) обеспечивает в рассматриваемом случае оценку
t log n
s(n'm; 0 > 2(2log(f — 1) + c) • (19)
m1
2. Пусть тройка (m — 1, n, t — 1) недопустима. Положим n' = У] (
U^t_1 \ u
Тройка (m — 1, n', t — 1) допустима и справедливо неравенство n > n'. Параметр n
f "m \ 1 "m — 1
удовлетворяет условию (13). Правая часть (13) в силу соотношения I I < ml
\uy \u — 1
не превосходит tmn'. Поэтому n ^ tmn'. Логарифмируя это неравенство и учитывая (11), получаем
log n < log m + log n'. (20)
Из (13) вытекает, что n ^ m*, а потому log n ^ t log m. Подстановка этого соотношения в (20) даёт t log n' > (t — 1)log n. С учётом этого из оценки (19), применённой
к допустимой тройке (m — 1, n', t — 1), вытекает цепочка соотношений
t t '^^ t logn' ^ (t — 1)logn
s(m, n; t) ^ s(m, n ; t) > ——:— --- --- > ——:— ------- --- ,
v ’ v ’ 2(2log(t — 1) + c) ~ 2(2log(t — 1) + c)’
приводящая к требуемому результату. ■
При растущем t разрыв между верхней и нижней оценками (9) и (17) функции s(m, n; t) имеет порядок log t.
6. Применение результатов о дизъюнктивных кодах
Естественным способом задания недоопределённого символа ay является указание характеристического набора (длины m) для множества T. В данной работе этому способу соответствует задание набором длины m в алфавите {0, *} (см. утверждение 1). Из (4) видно, что значение m не понижается и при использовании представлений в алфавите {0,1, *}. Если недоопределённый алфавит A имеет параметры (m, n, t), то для двоичного представления его символа достаточно s(m,n; t) символов 0, 1 и *, а для строго двоичного представления достаточно s0(m, n; t) символов 0 и *. Оценки этих величин в п. 3, 4 и 5 выражены через параметры n и t. Чтобы их сравнивать с длиной m естественного представления, исключим в функциях s(m, n; t) и s0(m, n; t) параметр n и вместо них будем рассматривать
s (m; t) = max s (m, n; t), s0 (m; t) = max s0 (m, n; t),
где максимумы берутся по всем допустимым значениям n. Очевидно, что значения s(m;t) и s0(m;t) достигаются на алфавите A, состоящем из всех символов, допускающих не более t доопределений, и символа *. В силу следствия 3 и его аналога для строго двоичных представлений можно в качестве A рассматривать алфавит, образованный всеми символами, имеющими ровно t доопределений. Это означает, что величины s(m; t) и s0(m; t) совпадают с минимальным числом строк t-селективной и t-дизъюнктивной матриц. В качестве следствия утверждений 7 и 13 получаем следующий факт.
Утверждение 16. Справедливы оценки
s(m;2) ^ 12lnm, s0(m;2) ^ 20,25lnm, s(m; з) ^ 32 ln m, s0(m;3) ^ 37,92ln m, s(m; t) ^ s0(m; t) ^ e(t + 1)2 (ln — + 2).
Доказательство. Будем рассматривать алфавит, образованный всеми символа-
m
ми, имеющими ровно t доопределений. Для него n = ( j . Подстановка в (5), (6) и (7)
верхних оценок для n, равных соответственно m2/2, m3/6 и (me/t)*, приводит к указанным верхним оценкам для s(m; 2), s(m; 3) и s(m; t). Аналогично из утверждения 13 получаются верхние оценки для s0(m; 2), s0(m; 3) и s0(m; t). ■
Отметим, что оценки, асимптотически совпадающие с оценками утверждений 7, 13 и 16, могут быть получены также с использованием жадного алгоритма (в другой терминологии — градиентной процедуры). Применительно к оценке для s(m; t) см. [2].
В случае t-дизъюнктивных матриц метод случайного кодирования для верхней оценки величины s0(m; t) применялся многими авторами (например, в [4, 5, 13, 15]), а жадный алгоритм — в работе [16]. Все полученные оценки имеют одинаковый порядок O(t2 log m), но лучшими являются оценки работы [4]. Оценка для s0(m; t) из утверждения 16 асимптотически совпадает с оценкой этой величины из [4], но способ её получения путём оценки мощности конъюнктивного базиса отличен от использованного там.
Впервые немощностная (и к данному моменту наилучшая) нижняя оценка для s0(m; t) установлена в [4]. Она относится к случаю t = const, m ^ œ и может быть представлена в виде
К S+V (21)
где с — константа из (12).
Эта оценка доказывается достаточно сложно индукцией по t. Позднее в работе [17] было найдено чисто комбинаторное доказательство в 4 раза более слабой оценки. Затем в заметке [14] было представлено очень простое комбинаторное доказательство оценки, которая хуже (21) в 2 раза. Она вытекает из установленного в [14] соотношения (10). Мы будем основываться на последней работе, поскольку её результат удаётся распространить на случай растущего t. Имеет место следующий факт.
Утверждение 17. При условии
t = o(log m) (22)
справедливы оценки
t(t + 1) log m
so(m;t) > ——-v; (23)
2(2 log t + c)
. . (t — 1)tlogm ,
s(m; t) > 1 , , ----Ц-, (24)
v ’ ; ~ 2(2 log t + c) ’ v J
где c — константа из (12).
Доказательство. Оценка (23) легко получается из соотношения (10) с использованием неравенства ( ) ^ (ue/v)v и с учётом (22). Оценка (24) вытекает из неё и
W
соотношения s(m; t) ^ s0(m — 1; t — 1), доказываемого подобно (18). ■
Метод случайного кодирования не дает конструкции t-селективной (либо t-дизъюнктивной) матрицы, а трудоёмкость жадного алгоритма экспоненциальна. Возникает задача нахождения эффективных и конструктивных алгоритмов, обеспечивающих «достаточно хорошие» верхние оценки величины s0(m; t). Детерминированный алгоритм считается эффективным, если его трудоёмкость ограничена полиномом от размера исходных данных, и считается конструктивным, если из него извлекается явное описание объекта.
В работе [3] представлены некоторые конструкции дизъюнктивных кодов. Один из предложенных там подходов основан на использовании q-ичных кодов с большим кодовым расстоянием. Реализация этого подхода в [5] с применением кодов Рида — Соломона позволила для дизъюнктивных матриц получить достаточно хорошую эффективную оценку величины m при заданных t и s (в [3] имеется указание на использование кодов Рида — Соломона, но оценки не приведены). Применительно к задаче двоичного представления недоопределённых данных из этой оценки вытекает следующий результат.
Утверждение 18. Существует эффективный и конструктивный метод, обеспечивающий оценку
s(m;t) ^ so(m;t) < (2f+t1)logm) . (25)
log(t log m)
Отношение оценки (25) к оценке, полученной методом случайного кодирования, log m
имеет порядок —--------—------—. При больших значениях t оценка (25) может ока-
(log t + log log m)2
заться даже лучше её. Так, например, при t = mc, c = const < 1/2, оценка (25) приобретает вид s(m,t) < 4t2/c2. Для сравнения укажем нижнюю оценку s(m,t) > t2/4, вытекающую из нижней оценки Бассалыго [4] для s0(m; t) и соотношения s(m; t) ^ ^ so(m; t)/2.
В приложениях больший интерес представляют малые значения t. Малыми будем считать величины t, удовлетворяющие условию (22). При его выполнении оценка (25)
log m
хуже полученной методом случайного кодирования по порядку в —— -------------— раз.
(log log m) 2
В работе [5] приведена ещё одна эффективная конструкция, позволившая при малых t улучшить оценку. Она использует некоторое семейство алгебро-геометрических кодов Гоппы. Из полученной в [5] оценки m в функции от t и s вытекает следующий результат для двоичных представлений.
Утверждение 19. Существует эффективный и конструктивный метод, обеспечивающий оценку
s(m; t) ^ so(m; t) = О ^“joggt“) .
Эта оценка отличается от полученной методом случайного кодирования по порядку
в ---раз и при условии (22) лучше оценки (25). Разрыв между детерминированными
logt
эффективными оценками и полученными методом случайного кодирования устранён в работе [6]. Из неё вытекает следующий факт.
Утверждение 20. Существует эффективный метод, обеспечивающий оценку
s(m; t) ^ s0(m; t) = О (t2 log m) .
Однако этот результат нельзя считать вполне удовлетворительным, поскольку метод работы [6] эффективен (полиномиален), но не конструктивен — использует дерандомизацию метода случайного кодирования.
В [18] представлен эффективный и конструктивный метод построения t-дизъюнктивных кодов, который при некоторых значениях параметров приводит к лучшим результатам, чем метод случайного кодирования.
Введённые и исследованные в данной работе селективные матрицы являются обобщениями широко применяемых в информатике дизъюнктивных матриц. Основное назначение последних — выделение из больших множеств малых подмножеств. Эту задачу можно эффективно решать с помощью селективных матриц: в дизъюнктивных матрицах выделяются столбцы, покрываемые заданным набором, а в селективных — столбцы, доопределяющие заданный недоопределённый набор. Поскольку класс селективных матриц шире, от их применения можно ожидать некоторого выигрыша.
ЛИТЕРАТУРА
1. Шоломов Л. А. Элементы теории недоопределённой информации // Прикладная дискретная математика. Приложение. 2009. №2. С. 18-42.
2. Шоломов Л. А. Двоичное представление недоопределённых данных // Доклады Академии наук. 2013. Т. 448. №3. С. 275-278.
3. Kautz W. H. and Singleton R. C. Nonrandom binary superimposed codes // IEEE Trans. Inform. Theory. 1964. V. 10. No. 4. P. 363-377.
4. Дьячков А. Г., Рыков В. В. Границы длины дизъюнктивных кодов // Проблемы передачи информации. 1982. Т. 18. Вып.3. С. 7-13.
5. Kumar R., Rajagopalan S., and Sahai A. Coding construction for blacklisting problems without computational assumptions // LNCS. 1999. V. 1666. P. 609-623.
6. Porat E. and Rotshchild A. Explicit non-adaptive combinatorial group testing schemes // Automata, Languages and Programming. LNCS. 2008. V. 5125. P. 748-759.
7. Chuzhoy J. and KhannaS. An O(k3 log n)-approximation algorithm for vertex-connectivity survivable network design //Proc. 50th Annual IEEE Symp. Foundation Computer Science (FOCS). Washington: IEEE Computer Society, 2009. P. 437-441.
8. DyerM., Fenner T., Frieze A., and Thomason A. On key storage in secure networks // J. Cryptology. 1995. V. 8. P. 189-200.
9. Mitchell C. J. and Piper F. C. Key storage in secure networks // Discr. Appl. Math. 1988. V. 21. P. 215-228.
10. Quinn K. A. S. Bounds for key distribution patterns // J. Cryptology. 1999. V. 12. P. 227-239.
11. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. М.: Мир, 1982. 416 с.
12. Коспанов Э. Ш. О кодировании (0,1)-матриц конъюнкциями // Дискретный анализ. Сборник трудов. Вып. 27. Новосибирск: Институт математики СО АН, 1975. С. 17-22.
13. Erdos P., Frankl P., and Furedi Z. Families of finite sets in which no set is covered by the union of r others // Israel J. Math. 1985. V. 51, No. 1-2. P. 79-89.
14. Furedi Z. On r-cover-free families // J. Combinator. Theory. Ser. A. 1996. V. 73. P. 172-173.
15. Cheng V., DuD.-Z., and Lin G. On the upper bounds of the minimum number of rows of disjunct matrices // Optimizat. Lett. 2009. V. 3. Iss.2. P. 297-302.
16. Hwang F. K. and Sos V. T. Non-adaptive hypergeometric group testing // Studia Scientiarum Mathecarum Hungarica. 1987. V. 22. P. 257-263.
17. Ruszinko M. On the upper bound of the size of the r-cover-free families // J. Combinator. Theory. Ser. A. 1994. V. 66. P. 302-310.
18. D’yachkov A. G., Macula A. J., and Rykov V. V. New constructions of superimposed codes // IEEE Trans. Inform. Theory. 2000. V. 46. No. 1. P. 284-290.