2014 Прикладная теория кодирования и сжатия информации №4(26)
УДК 519.72
О РАДИУСЕ ПОКРЫТИЯ ЛИНЕЙНЫХ КОДОВ, ПОРОЖДЁННЫХ АФФИННЫМИ ГЕОМЕТРИЯМИ НАД ПОЛЕМ ИЗ ЧЕТЫРЁХ ЭЛЕМЕНТОВ
М. Э. Коваленко
Московский государственный университет им. М. В. Ломоносова, г. Москва, Россия
E-mail: [email protected]
Рассматриваются линейные коды, порождённые аффинными геометриями над полем из четырёх элементов. Для данных кодов приводятся некоторые свойства и вычисляется точное значение радиуса покрытия равное 4.
Ключевые слова: линейные коды, конечные аффинные геометрии, радиус покрытия, покрывающие коды.
Введение и основные определения
Аффинная геометрия EG(n,ps) представляет собой аффинное пространство F^s, т. е. точки — это векторы из F^s; прямые — одномерные подпространства F^s и их смежные классы (по операции сложения векторов); d-мерные плоскости — d-мерные подпространства F^s и их смежные классы. В работе используется ряд терминов, связанных с конечными геометриями, их можно найти, например, в [1].
Определение 1. Матрицей инцидентности аффинной геометрии называется матрица, строки и столбцы которой сопоставлены прямым и точкам аффинной геометрии соответственно, а элемент в пересечении строки b и столбца p равен 1, если точка p лежит на прямой b, и 0 иначе.
Рассмотрим строки матрицы инцидентности EG(h, 4) как двоичные векторы. Они порождают линейное подпространство Ch С F2 . По определению Ch является двоичным линейным кодом длины 4h.
Расстоянием (Хэмминга) между двумя векторами из F2 называется количество координат, в которых они отличаются. Для каждого вектора пространства F^, не лежащего в Ch, можно выбрать минимальное расстояние среди всех расстояний от него до каждого из векторов Ch. Максимум из всех этих расстояний называется радиусом покрытия линейного кода. Обозначим его r(Ch). Для векторов Ch выберем минимальное расстояние между двумя различными векторами, это расстояние называется кодовым. Более подробно с приведёнными понятиями можно ознакомиться в [1, 2].
В работе исследуется вопрос нахождения точного значения радиуса покрытия кода Ch, а именно доказывается, что при любой размерности кода радиус его покрытия равен 4.
Вопрос нахождения радиуса покрытия кода является одной из версий классической задачи покрытия: даны n и r; какое наименьшее число шаров радиуса r в метрике Хэмминга можно разместить в n-мерном пространстве так, чтобы каждый вектор пространства принадлежал хотя бы одному из них. С большей частью результатов, посвящённых покрывающим кодам, можно ознакомиться в [2].
Приведём некоторые свойства кодов Ch, необходимые для дальнейшей работы.
Лемма 1. В коде Ch нет векторов нечётного веса и векторов веса 2.
Доказательство. Первая часть леммы очевидна, поскольку в силу строения порождающей матрицы базис подпространства составляют векторы веса 4. Докажем вторую часть.
Предположим, что в коде лежит вектор веса 2. Выберем соответствующую ему пару точек из Fj, а у этих двух точек — координату, по которой они отличаются. Пусть это координата yi, и у первой точки y^ = а, а у второй y^2 = в. Тогда красим гиперплоскость {yi = а} в красный цвет, а {yi = в} — в синий. Из оставшихся двух гиперплоскостей ещё одну красим в синий и одну в красный. Итак, по фиксированной координате покрасили половину точек в красный, половину в синий цвет.
Любая прямая или целиком лежит в одной из этих плоскостей, или пересекает все четыре, а значит, содержит чётное число точек каждого цвета. Таким образом, прибавление векторов, соответствующих прямым, не изменит чётности количества точек каждого цвета, входящих в набор, то есть не существует линейной комбинации векторов, соответствующих прямым пространства Fj, которая даёт выбранную пару точек, что противоречит предположению. ■
Замечание 1. Поскольку в выбранном коде лежит нулевой вектор и не лежат векторы веса 2, то кодовое расстояние данного кода равно 4.
1. Оовокупность всех подмножеств Fj как векторное пространство над F2
Рассмотрим совокупность всех подмножеств множества Fj как векторное пространство над F2 с операцией симметрической разности. При этом под суммой прямых, точек и других подмножеств будем понимать сумму в смысле указанного векторного пространства. Такая операция устроена простым образом: точка из Fj принадлежит множеству, являющемуся результатом суммирования, тогда и только тогда, когда она принадлежит нечётному количеству множеств-слагаемых. В терминах такого пространства можно задавать вопросы, свойственные произвольным векторным пространствам: как выглядят порождающие системы векторов, какова размерность линейной оболочки данного набора векторов, можно ли один вектор выразить через другие (т. е. представить линейной комбинацией) и так далее. Обозначим это векторное пространство A(h) и xi(a) — i-ю координату элемента a G A G A(h) или, что то же самое, a G Fj. В пространстве A(h) выберем базис из одноточечных множеств ej: xi(ej-) = Sij.
Пространство A(h) изоморфно пространству двоичных векторов размерности 4h. Здесь и далее подразумевается, что поле F4 реализовано в виде фактор-алгебры F2[x]/(x2 + x + 1).
Далее выберем в A(h) все подмножества с чётным числом элементов, такие, что покоординатная сумма всех элементов каждого подмножества равна 0: Ao (h) = {A G G A(h) : |A| = 0 (mod 2) & Vi Y xi(a) = 0}. Под суммой здесь понимается сумма
aeA
над F4; считается, что пустое множество удовлетворяет необходимому условию.
Лемма 2. Множество A0(h) является подпространством A(h).
Доказательство. Очевидно, что операция симметрической разности сохраняет чётность количества точек в множестве. Рассмотрим AiAA2, где Ai, A2 G A0(h); тогда Y xi(a) = Y xi(a)+ Y xi(a) = 0+0 = 0, так как A(h) — пространство надполем
a€A1AA2 aeAi a€A2
характеристики 2. Таким образом, симметрическая разность двух элементов из A0(h) также является элементом из A0(h). ■
Каждый из элементов a G Fj, a = (x1 + Xy1,... ,xh + Xyh), представим в виде a = (x1,y1,... ,xh,yh), и всего множеств A С Fj ровно 2|Fhl. Тогда множеств, у кото-
рых £ ж:(а) = 0, ровно половина (у второй половины сумма равна 1), т.е. 2|Fhl/2.
aeA
Далее: тех множеств, у которых одновременно £ ж:(а) = 0 и £ = 0, ровно
aeA aeA
2|Fhl/22. Все пары ж^у-7 можно рассматривать независимо друг от друга; таким образом, продолжая подобные рассуждения, получим, что
|A| = 2|Fh|/22h, где A — любое подмножество A(h), у которого покоординатная сумма всех элементов равна нулю. Заметим, что подмножеств с чётным числом элементов столько же, сколько и подмножеств с нечётным числом элементов, а значит, фактически вычислено |A0(h)|.
Введём обозначение N*= N\{1}.
Лемма 3. Для любого h G N* верно |Ao(h)| = 222h-2h-1.
Поскольку A0(h) —подпространство над полем характеристики 2, то можно посчитать его размерность.
Следствие 1. Для любого h G N* верно dim A0(h) = 22h — 2h — 1.
Обозначим A4(h) = {A G A(h) : |A| = 4 & Vi Y1 Xj(a) = 0} — множество всех
aeA
подмножеств из четырёх элементов, таких, что покоординатная сумма всех элементов подмножества равна 0; B0(h) — все прямые. Здесь и далее будем использовать обозначение B0(h) как для совокупности подмножеств над F2, так и для совокупности прямых в Fh. Заметим, что (B0(h)) является подпространством (A0(h)).
Лемма 4. Для любого h G N* выполняется (A0(h)) = A0(h).
Доказательство. Построим выражение любого множества A0(h) через множества A4(h), для этого рассмотрим элемент A G A0(h), A = 0, |A| ^ 4, поскольку множества из двух элементов удовлетворяют условию принадлежности A0(h), только если состоят из двух одинаковых точек. Выберем любые три точки a, b, c G A и рассмотрим A' = A Д {a, b, c, a + b + c}, где Xj(a + b + c) = Xj(a) + Xj(b) + Xj(c) — сумма над F4. Заметим, что A выражается множествами A0(h), если и только если выражается A' и при этом |A'| < |A|. Получился спуск по весу; продолжаем этот спуск к A'', A''', ... , до тех пор, пока не получим |A(n)| ^ 4. Тем самым построено выражение любого множества A0(h) через множества A^h), поскольку A(n) лежит в A0(h). ■
Таким образом, в A4(h) можно выбрать порождающую систему из 22h — 2h — 1 множеств.
Лемма 5. Если одна четвёрка A4(h) \ B0(h) порождается прямыми B0(h), то все четвёрки A0(h) \ B0(h) порождаются прямыми B0(h), где h G N*.
Замечание 2. Лемму также можно сформулировать следующим образом: или все четвёрки A0(h) \ B0(h) порождаются прямыми B0(h), или никакая четвёрка A4(h) \ \ B0(h) не выражается через прямые B0(h), где h G N*.
Доказательство. Пусть какое-либо множество A из A4 (h) \ B0(h) выражается через прямые B0(h). Рассмотрим любую четвёрку из A0(h) \ B0(h) и шесть прямых, проходящих через пары точек выбранной четвёрки. В силу строения четвёрок эти прямые можно разбить на три пары параллельных прямых, которые будем называть образующими A.
Выберем аффинное преобразование, переводящее три точки рассматриваемой четвёрки в точки (0,... , 0), (1, 0, 0,... , 0), (0,1, 0,... , 0). Тогда оставшаяся точка перейдёт в точку (1,1, 0,..., 0) в силу того, что при аффинном преобразовании сохраняется параллельность прямых. Таким образом, выбранная четвёрка перейдет во множество {(0,... , 0), (0,1, 0,... , 0), (1, 0,0,... , 0), (1,1, 0,..., 0)}. Поскольку любую четвёрку
А4 (Л,) \ Во (Л.) можно эквивалентными аффинными преобразованиями перевести в четвёрку {(0,... , 0), (0,1, 0,... , 0), (1, 0, 0,... , 0), (1,1, 0,... , 0)}, то из того, что какая-либо четвёрка А4 (Л) \ В0(Л) выражается через прямые В0(Л), следует, что любая другая четвёрка выражается через прямые В0(Л). ■
Далее покажем, что на расстоянии 0 до В0(Л) в не могут лежать четвёрки А4(Л) \ В0(Л); здесь и далее Л Е М*. Из лемм 4 и 5 можно сделать важный вывод:
Следствие 2. В А0(Л) не существует базиса из прямых В0(Л), если и только если никакая четвёрка А0(Л) \ В0(Л) не порождается прямыми В0(Л).
В работе [3] приводится точное значение размерности пространства (В0(Л)).
Теорема 1 (о базисе В0(Л)) [3]. В В0(Л) существует базис из 22Н — Л2 — Л — 1 элементов, т. е. в
а1ш(В0(Л)) = 22^ — Л2 — Л — 1.
Таким образом, любая достаточно большая система прямых В0(Л) линейно зависима в Е^. Тогда по теореме о базисе В0(Л) и следствию 1 в А0(Л) не существует базиса из прямых В0(Л), а значит, по следствию 2 никакая четвёрка А4 (Л) \ В0(Л) не выражается через прямые В0(Л). Следовательно, множества А4 (Л) \ В0(Л) не могут лежать на расстоянии 0 до (В0(Л)) в Е^.
Более того, по лемме 1 множества А0(Л) \В0(Л) не могут лежать и на расстоянии 2 до (В0(Л)) в Е^. Тогда любая четвёрка А4 (Л) \ В0(Л) обязана лежать на расстоянии 4 до (В0(Л)) в Е^. Проверим, что никакие другие четвёрки не лежат на расстоянии больше 2 до (В0 (Л)) в Е*.
Введём для следующие обозначения для различных множеств по четыре точки: В1 содержит все четырёхточечные множества, пересекающиеся с какой-нибудь прямой ровно по трём точкам; ¡3 — множество четвёрок, никакие три точки которых не лежат на одной прямой, и среди трёх пар образующих их прямых ровно в г, г > 0, парах есть пересечение.
Заметим, что эти множества не пересекаются, а вместе с А0(Л) они исчерпывают все четырёхточечные множества Е^. Для любой четвёрки из множества В1 выберем прямую, пересекающуюся с ней по трём точкам, а для г > 0, выберем пересекающуюся пару прямых из трёх образующих пар (хотя бы одна обязательно найдется) — линейная комбинация указанных прямых и выбранной четвёрки оставляет множество из двух точек. То есть четвёрки из множеств В1 или г > 0, лежат на расстоянии не больше 2 до (В0(Л)) в Е^. Таким образом, доказана следующая теорема:
Теорема 2. Для любого натурального Л =1 любое множество ^ Е А4(Л) \ В0(Л) лежит на расстоянии 4 до (В0(Л)). При этом никакие другие четвёрки не лежат на расстоянии больше 2 до (В0(Л)).
Итак, показано, что для векторов из , соответствующих четвёркам А4 (Л) \В0(Л), с ростом Л сохраняется расстояние от них до кода.
2. Радиус покрытия г(С^)
Заметим, что по аффинной геометрии ЕС (Л, 4) можно построить систему Штей-нера 5(2, 4, 4^). Системой Штейнера 5(¿,&,г>) называется пара (V, В), где V — множество из V элементов, а В — семейство к-элементных подмножеств V, называемых блоками, таких, что любое ¿-элементное подмножество V лежит ровно в одном блоке. С основными результатами по системам Штейнера с указанными параметрами можно ознакомиться, например, в [4].
Для кодов, порождённых матрицами инцидентности систем Штейнера Б(2, 4, V), в [5] приводится верхняя оценка радиуса покрытия.
Теорема 3 [5]. Пусть С — код, порождённый матрицей инцидентности Б(2, 4, V). Тогда г (С) ^ у^.
Для кодов, рассматриваемых в данной работе, верхнюю оценку теоремы 3 удаётся улучшить. Для этого докажем несколько утверждений.
Лемма 6. Если в множество из К точек лежит на расстоянии К от (Во(Л.)), то любое его Б-элементное подмножество лежит на расстоянии Б от (В0(Л)).
Доказательство. Очевидно, что расстояние больше Б ни для какого Б-эле-ментного подмножества достигаться не может. Предположим, для какого-то Б-эле-ментного подмножества можно построить линейную комбинацию прямых, такую, что на ней достигается расстояние меньше Б. Тогда дополнение этого подмножества из КБ элементов лежит от (Во(Л)) на расстоянии не больше К — Б. Но тогда для всего К-элементного множества есть линейная комбинация, на которой достигается расстояние меньше К. Противоречие. ■
Теорема 4. Расстояние в от любого К-элементного подмножества, К > 4, до (В0(Л)) не превосходит 4.
Доказательство. Поскольку К > 4, то в выбранном множестве есть как минимум пять различных точек {а, Ь, с, }. Предположим, что расстояние от этого множества до (В0(Л)) не меньше 5.
Рассмотрим два подмножества {а,Ь, с, ¿1} и {а,Ь,с, ¿2}; по лемме 6 расстояние от них до (В0(Л)) равно 4. Из теоремы 2 известно, что на расстоянии 4 от (В0(Л)) могут лежать только четвёрки А0(Л) \ В0(Л), а значит, а + Ь + с + = а + Ь + с + = 0. Следовательно, = ¿2. Противоречие. ■
Переформулируя эту теорему для кода С^, получим уточнение верхней оценки его радиуса покрытия.
Следствие 3. Пусть С^ — код, порождённый строками матрицы инцидентности ЖС(Л, 4). Тогда г(СЛ) ^ 4.
Доказательство. Предположим, что существует вектор в Е4, который лежит от С^ на расстоянии больше 4. Поскольку 0 лежит в коде, то можно считать, что вес выбранного вектора больше или равен 5. Рассмотрим соответствующее этому вектору множество элементов Ж^, по предположению в нем не менее 5 элементов. По теореме 4 расстояние от этого множества до (В0(Л)) не превосходит 4, поэтому существует линейная комбинация прямых, а значит, и линейная комбинация векторов в , лежащая на расстоянии не больше 4 до выбранного множества и соответствующего вектора. Противоречие. ■
Интерес к кодам, порождённым матрицами инцидентности систем Штейнера Б(2, 4, V), связан с исследованием ранга и аффинного ранга носителей спектра булевых функций [5]. Открытым остаётся вопрос, выполняется ли уточнённая верхняя оценка радиуса покрытия из следствия 3 для кодов, порождённых системами Штейнера Б(2, 4, V) с параметрами, отличными от ЖС(Л, 4).
Вернёмся к исследованию ранга выбранных кодов: в теореме 2 фактически показано, что на векторах , соответствующих четвёркам Д (Л)\В0(Л), достигается верхняя оценка из следствия 3. Таким образом, доказана следующая
Теорема 5 (о радиусе покрытия). Пусть h G N* и Ch — код, порождённый строками матрицы инцидентности EG(h, 4). Тогда r(Cj) = 4.
ЛИТЕРАТУРА
1. Мак-Вильямс Ф. Дж., СлоэнН.Дж. Теория кодов, исправляющих ошибки. М.: Связь, 1979.
2. Cohen G., Honkala I., Litsyn S., and Lobstein A. Covering Codes. North Holland: Elsevier, 1997.
3. Коваленко M. Э., Урбанович Т. А. О ранге матриц инцидентности точек и прямых конечных аффинных и проективных геометрий над полем из четырех элементов // Проблемы передачи информации. 2014. Т. 50. Вып. 1. С. 102-112.
4. Reid C. and Rosa A. Steiner systems S(2,4,v) — a survey // Electronic J. Combinatorics. 2010. http://www.combinatorics.org/ojs/index.php/eljc/article/view/DS18
5. Таранников Ю. В. О рангах подмножеств пространства двоичных векторов, допускающих встраивание системы Штейнера S(2, 4,v) // Прикладная дискретная математика. 2014. №1. С. 73-76.