Научная статья на тему 'О весовых спектрах одного класса линейных кодов'

О весовых спектрах одного класса линейных кодов Текст научной статьи по специальности «Математика»

CC BY
332
60
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
КОД РИДА МАЛЛЕРА / ВЕСОВОЙ СПЕКТР / БУЛЕВЫ ФУНКЦИИ / ВЕС БУЛЕВОЙ ФУНКЦИИ / REED MIILLER CODE / WEIGHT SPECTRUM / BOOLEAN FUNCTIONS / WEIGHT OF BOOLEAN FUNCTION

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

Рассматривается класс линейных кодов, являющихся подкодами кода Рида Маллера. Для данного класса кодов рассчитываются их весовые спектры.

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

On the weight spectrum in linear codes of a class

A class of linear codes being subcodes of a Reed Miiller code is considered. The weight spectra of codes from this class are calculated.

Текст научной работы на тему «О весовых спектрах одного класса линейных кодов»

ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА

2014 Прикладная теория кодирования №1(23)

ПРИКЛАДНАЯ ТЕОРИЯ КОДИРОВАНИЯ

УДК 519.7

О ВЕСОВЫХ СПЕКТРАХ ОДНОГО КЛАССА ЛИНЕЙНЫХ КОДОВ

А. В. Покровский

Институт проблем информационной безопасности Московского государственного университета им. М. В. Ломоносова, г. Москва, Россия

E-mail: [email protected]

Рассматривается класс линейных кодов, являющихся подкодами кода Рида — Маллера. Для данного класса кодов рассчитываются их весовые спектры.

Ключевые слова: код Рида — Маллера, весовой спектр, булевы функции, вес булевой функции.

Введение

Проблема описания весового спектра кода Рида — Маллера тесным образом связана с задачей классификации булевых функций относительно группы аффинных или линейных преобразований, действующих на её аргументах. Для квадратичных булевых функций она была решена с помощью аппарата симплектических форм и теоремы Диксона [1, 2], что позволило описать весовой спектр кода Рида — Маллера второго порядка. Иначе обстоит дело с классификацией булевых функций более высоких степеней. Начиная уже с кубических форм, нет их полной классификации, хотя исследования в этом направлении проводятся довольно давно. В этой связи следует отметить работу [3], в которой получено существенное продвижение в данном вопросе. Аналогичная ситуация складывается и при описании весового спектра кодов Рида — Маллера более высоких порядков. Существенными результатами в области описания этой характеристики кодов являются формула Касами — Токуры [2] для числа кодовых слов, вес которых лежит в определённом диапазоне, и теорема, описывающая весовой спектр произвольного кода с максимальным расстоянием [4]. В настоящей работе рассматривается один из подкодов кода Рида — Маллера произвольного порядка и описывается его весовой спектр.

1. Основные обозначения и определения

Символом Fn, n Е N, будем обозначать множество булевых функций от n переменных, Fq — поле из q элементов. Для веса булевой функции и степени её полинома Жегалкина используем запись wt(f) и deg(f) соответственно.

Определение 1. Линейным кодом над Fq называется подпространство C векторного пространства F^ Размерность C называется размерностью кода. Если она равна к, то такой код называется (n, к)-кодом. Кодовым расстоянием C называется минимальный вес Хемминга ненулевого элемента с Е C. Если кодовое расстояние C равно d, то такой код называется (n, к, d)-кодом.

Для любого линейного (n, к, d)-кода справедлива оценка Синглтона [1, 2, 4]

d ^ n — к + 1.

Определение 2. Любой код с кодовым расстоянием, удовлетворяющим равенству d = п — к + 1, называется кодом с максимальным расстоянием.

Определение 3. Весовым спектром (п, к)-кода С называется совокупность чисел А0, Аь ..., Ап, где Аі = |{с є С : wt(c) = і}|, і = 0,1,..., п.

Весовой спектр кодов с максимальным расстоянием описывает следующая теорема.

Теорема 1 [4]. Распределение весов (п, к, d)-кода над Е, с максимальным расстоянием определяется формулами А0 = 1, А, = 0 при і = 1,...^ — 1 и

л, = (п) (« — 1) Е (—1)' (г — 1) при і > d.

Практически важным классом линейных кодов является код Рида — Маллера, который определяется через булевы функции заданной степени. Обозначим Qf вектор значений функции f є ^п:

Qf = (у (ио ),у (и1),...,у (и2п—1)), иі є , і = ° ..., 2га — 1.

Определение 4. Для произвольных п, г є N 0 ^ г ^ п, кодом Рида — Маллера ИМ (г, п) порядка г и длины 2п называется множество всех строк Qf булевых функций

V Є Тп, удовлетворяющих условию deg(f) ^ г.

На данный момент полностью описан весовой спектр кода ИМ(2,п). Эту задачу удалось решить, используя полученную классификацию квадратичных форм. Обозначим АОЬ группу аффинных преобразований на Щ.

Определение 5. Функции У1,У2 Є Т,п называются аффинно эквивалентными, если существует пара (А, 7) Є АОЬ, такая, что У1(хА ф 7) = У2(х) для любого Х Є Щ, где А — невырожденная матрица размера п х п над Е2; 7 — вектор из ЕП.

В дальнейшем обозначать аффинную эквивалентность функций будем символом

VI а£ьУ2. Как известно [1, 2], любая квадратичная форма аффинной заменой переменных может быть приведена к одному и только одному каноническому виду:

^ (Х1, . . . ,Хп) = Х1Х2 ф ... ф Х2к—1Х2к;

^(Х1, . . . ,Хп) = Х1Х2 ф ... ф Х2к—1Х2к Ф 1;

^(Х1, . . . ,Хп) = Х1Х2 ф ... ф Х2к—1Х2к ф Х2к+1.

Число к называется рангом квадратичной формы и может изменяться в интервале от 1 до [п/2]. Канонические формы ^^^ имеют вес 2п—*—1 — 2п—*—к—1, 2п—*—1 + +2п—*—к—1, 2п—*—1 соответственно и лежат на разных орбитах.

Обозначим О,.(к), і =1, 2, 3, мощность орбиты, на которой лежит і-я каноническая форма ранга к. Аффинные функции в этом смысле могут трактоваться как квадратичные формы ранга 0. Тогда всё множество аффинных функций от п переменных разбивается на три орбиты:

о,, (0) = |{0}| = 1,

О,2 (0)= |{1}| = 1,

О,3(0) = 110ЯХ1 ф ... ф ЯпХп ф є, аі, є Є Е2, і = 1,..., п, (а1,..., йп) = 0} | = 2п+1 — 2.

Совершенно иначе обстоит дело с описанием весового спектра кода ИМ(г, п) при

г ^ 3. Уже при г = 3 его весовой спектр не известен для произвольного п. На данный

момент наиболее исчерпывающий ответ на этот вопрос даёт формула Касами — Току-ры, которая позволяет подсчитать количество слов, вес которых лежит в диапазоне 2п—г ^ wt(f) < 2п—г+1, ^ Є ИМ(г, п). Позже эта формула была обобщена на случай 2п—г ^ wt(f) ^ 2,5 ■ 2п—г.

2. Весовой спектр одного подкода кода Рида—Маллера

Рассмотрим множество С* С Ь = 1,..., п — 1, определяемое следующим образом:

С* = \ д(ж„-*+ь..., жга) 0 0 0 0 Жк/к(жь..., жга-*)0

^ 1^г<^'^га-* &=«,-*+1

0/(ж1,... ,Хп-*) 0 е, где д е Л, а*^, е е {0,1},

/(ж1,. . . , Хп-*), /к (ж1,... , жп-*)—линейные функции|.

Очевидно следующее утверждение.

Утверждение 1. Множество векторов значений П/, f е С*, является подкодом кода И,М(шах{Ь, 2}, п) размерности 2* + ^ ^ + (п — Ь)(Ь +1).

Наиболее интересен этот код при Ь ^ 3, так как при этих значениях параметра получаем подкод кода Рида — Маллера третьего или более высокого порядка. В случае Ь = 3 это подкод кода ИМ(3,п), включающий в себя функции третьей степени нелинейности, содержащие лишь один кубический моном. Весовой спектр этого кода рассчитан в [5]. В данной работе предлагается обобщение этого результата для произвольного значения Ь из указанного интервала.

Имеет место следующая теорема.

Теорема 2. Весовой спектр кода С* в случае нечётного (п — Ь) представлен в табл. 1, где г = 0,... , 2*-г; г = 0,... , шт{£, п — Ь — 2к}; к = 0,... , [(п — Ь)/2]; в случае чётного (п — Ь) — в табл. 2, где г = 0,... , 2*-г; ^ = 0,... , 2*; г = 0,... , шт{£, п — Ь — 2к}; к = 0,..., (п — Ь)/2 — 1;

N(і, п — і — 2к, г) = <

0,

1,

(2

если г > тіп{і, п — і — 2к},

п—і—2к\(пі

)(24 — 1),

если г

если г

0,

1,

М(і, п — і — 2к, г) = <

N (і — 1, п — і — 2к, г — 1)х

х(2п—і—2к — 2Г—1) +

ll+N(і — 1, п — і — 2к, г)2г, если 2 ^ г ^ тіп{і, п — і — 2к};

0, если г > тіп{і, п — і — 2к} или г = 0,

2і — 1, если г =1,

N (і, п — і — 2к, г) —

„—N (і, п — і — 2к — 1, г)2г, если 2 ^ г ^ тіп{і, п — і — 2к}.

Таблица 1 Весовой спектр кода С* в случае нечётного (п — г)

Количество функций Вес

у тт{£,п — £—2к} ч Одз(к)22‘+2кЧ 2*("-4-2к) — £ М(г,п — 4 — 2к,г)) V Г=1 У 2”-1

^2 . ^Од3 (к)м(г,п — г — 2к,г)22‘-2‘-г+2к4 г wt(qk) + (24-г — г) wt(qk)+ + (2‘ — 2*-г ^(^)

^2 . ^ о91 (к)ж(г, п — г — 2к, г)22‘-2‘ - г+2Ы г wt(qk) + (24-г — г) wt(qk)+ + (2‘ — 2*-г ^(^)

^2 . ^ Од2 (к)ж(г,п — г — 2к, г)22*-2*- г+2Ы г wt(q|) + (24-г — г) wt(qk)+ + (2‘ — 2*-г ^(я|)

Таблица 2

Весовой спектр кода С* в случае чётного (п — г)

Количество функций Вес

у т1п{£,п-£—2к} ч Одз (к)22‘+2Ы( 2*("-4-2к) — £ М (г,п — г — 2к,г)) V г = 1 ' 2”.1

^2 . ^Одз(к)М(г,п — г — 2к, г)22*-2‘-г+2к 4 г wt(qk) + (2*. — г) wt(qk)+ + (24 — 2^г ^(д|)

^2 . ^ 091 (к)ж(г, п — г — 2к, Г)22‘-2‘-г+2к 4 г wt(qk) + (2*. — г) wt(qk)+ + (24 — 2^г ^(^)

^2 . ^ Од2 (к)ж(г,п — г — 2к, г^24.2*-^2*4 г wt(q|) + (2*. — г) wt(qk)+ + (24 — 2*. ^(^)

0 1 2 4 2 3 wt *)/2^ +(24 — 3^ *)/2^

о >£5 (О 2 4 24 3 wt (4”.)/2) +(24 — 3) wt У^”-^2)

Доказательство. Для фиксированной функции из С* возможен лишь один из трёх случаев:

0 а*,ж*ж, 0 I (ж!,..., жга_*) А^ь ^ (XI,..., жга_*);

1^г<,Хп_£

0 а*,ж*ж, 0 I (ж 1,... , ж„_*) а£ь ^ (ж,..., жп_*);

1^г<,Хп_£

0 а*.,-ж*ж, 0 I (ж!,..., ж„_*) а£ь (ж!,..., хп_*).

1^г<,Хп_£

Пусть (А, 7) Е АОЬ — преобразование, приводящее квадратичную форму

0 а*, ЖгЖ, 0 I (ж 1,..., ж„_*)

1^г<,Хп_£

к одному из канонических видов. Применим это преобразование к произвольной функции f Е С* и будем рассматривать вес функции f (жА 0 7) = /(ж). Функция f может

быть лишь одного из трёх видов:

g(xn-t+1 , g(xn-1+1 , g(xn-1+1 ,

>x„) 0 qk (xi,. ,xn) 0 (xi,.

,xn) 0 (xi,.

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

.,Xn-t) 0 ф Xi/(i)(Xi,

i=n-1+1 n

.,xn-t) 0 ф xi/(i)(x1,

i=n-1+1

n

.,Xn-t) 0 ф Xi/(i)(x1,

i=n-1+1

.j xn-t) 0 ., Xn-t) 0 ., Xn-t) 0 є;.

Вес функции / равен ^^(У) = Е wt(fn-í+t.’.')'n¿n), где Уп_п*4‘11.’.^гп — подфунк-

(¿п-4+1,...,гп )€^4

ция функции f, полученная фиксацией переменных с номерами п — £ + 1,... , п константами гп_*+1 ,... ,гп соответственно.

Рассмотрим ¿х (п—¿)-матрицу £, состоящую из коэффициентов линейных функций /(г)(ж1,... , жп_*), г = п — £ + 1,... , п:

£

/г(1) ...

;(2) 7(2)

71 • • • 7n—t

7 (t) 7n t

Разобьём матрицу L на две подматрицы

L = (Ltx2fc|L:

ix (n—i—2k)

и пусть rang(L") = r, r = 0,... , min {t, n — t — 2k}. Для сокращения записи обозначим число t х (n — t — 2к)-матриц ранга r через N(t, n — t — 2k, r):

N(t, n — t — 2k, r) = <

0,

1,

(2

in—t—2k

— 1)(2‘ — 1),

если r > min{t, n — t — 2k}, если r = 0, если r = 1,

N(t — 1, n — t — 2k, r — 1)x

x (2

,n-t-2fc

— 2r—1) +

Пусть

k+N(t — 1, n — t — 2k, r)2r, если 2 ^ r ^ min{t, n — t — 2k}.

0 ßijXiXj 0 7(X1, . . . , Xn-t) AGL qk(X1, . . . , Xn-t)

1^i<jXn—t

и rang(L") = r. Тогда система

(xn-t+1,... ,Xn)L" = 0

имеет 2* г решений. Если (жга_4+1 ,...,жп) Е Fí является решением системы, то wt(fra-n+l+1,.x.nГn) равен wt(qk), если #(жп_*+1,... , жп) 0 е' = 0, и равен '^(^), если д(жга_4+1 ,...,жп) 0 е' = 1. Поскольку д(жп_*+1,... , жп), а следовательно и д(жп_*+1, ...,жп) 0 е', пробегает всё множество ^¿, то при любой фиксации переменных жп_*+1,... , жп значение функции д(жга_*+1,... , жп) 0 е' может быть произвольным.

В противном случае (когда (жга_*+1,... , жп) не является решением системы (1)) выполняется равенство wt(fra-"í+l+.1;,n.:E") = wt(qk).

Далее рассмотрим два случая:

1) (п — ¿) нечётно и 0 ^ к ^ [(п — ¿)/2] или (п — ¿) чётно и 0 ^ к ^ (п — ¿)/2 — 1;

2) (п — ¿) чётно и к = (п — ¿)/2.

Из сказанного выше следует, что в первом случае ровно

2*_г\

N(¿, п — * — 2к, г)091 (к)22‘_2‘-г+2к*

г

функций имеют вес

i wt(qf) + (2i—r — i) wt(qf) + (2i — 2i—r)wt(qf),

где r = 0,..., min {n — t — 2k, t}, i = 0,..., 2i—r.

Для случая

0 OijXjXj 0 /(xb . . . ,Жга—t) aGlqf (Xi, . . . ,Xn—i)

1^i<jXn—i

рассуждения проводятся аналогичным образом, заменяя qf на и наоборот. Получим, что

^ ^ N(t, n — t — 2k, r)Oq2 (k)22t—2t-r+2ki

функций имеют вес

i wt(qf) + (2i—r — i) wt(qf) + (2i — 2i—r)wt(qf),

где r = 0,... , min {n — t — 2k, t}; i = 0,... , 2i—r.

Теперь рассмотрим случай, когда (n — t) чётно и k = (n — t)/2 при условии, что

0 ßijXiXj 0 / (xi,... , ж„—t) aGl qk (xi,..., xra—t).

1^i<jXn—i

В этом случае L = L/, и при любой фиксации xn—i+1,...,xn прибавление к qf линейной

n

комбинации 0 xi/(i)(x1,... ,xt) либо оставляет её на орбите, содержащей qf, либо

i=n—i+1

переводит на орбиту, содержащую qf. В конечном итоге вес « будет опре-

деляться лишь значением функции g(xn—i+1,... ,xn) 0 е/, которое может быть произвольным.

Зафиксируем в Fi j векторов, на которых функция g(xn—i+1,... , xn) 0е' принимает такие значения, что выполняется условие wt(/n‘ —i+t1+.1..'nXn) = wt(qf), а на оставшихся (2i — j) векторах wt(/«—*+*]+.3..’.Пг.Ж") = wt(qf). Тогда вес функции wt(/) равен

j wt (q(n—i)/2) + (2i — j) wt (q2n—i)/2) .

Поскольку при указанных условиях g(xn—i+1,... , xn) 0 e' однозначно определяется, то функций указанного веса будет ровно

o„i( +)(j) 2‘(“",)' j=0'...-2‘.

Случай, когда (n — t) чётно и k = (n — t)/2 при условии, что

0 ßijXiXj 0 / (x1,... , Xn—i) aGl qk (X1,..., Xn—i) ,

1^i<jXn—i

рассматривается аналогично предыдущему.

Опишем теперь последний из возможных случаев, когда

0 а,ЖіХ 0 I (х,... , ж„_*) а£ь ?з (х,..., ж„_*).

Рассмотрим систему

(жга_і+і,...,жга)£'' = (1, 0,..., 0). (2)

Если вектор (хп_і+і,... , хп) Є Fí является её решением, то ^(хі,..., хп-і) 0

п \

0 0 Жі/(г)(жі,..., я™-*)) равен ), если д(ж„_і+і,..., ж„) 0є' = 0, и ) в про-

г=га_і+і '

тивном случае.

Для всех остальных векторов а, для которых система

(хп_t+1, . . . , хп)^ а

совместна и вектор (жп_і+і,..., хп) лежит в множестве её решений, выполняется равенство

П—І

-Ц ^(хі,... ,хп_*) 0 0 ж/г)(жь... ,ж„_*) ) = 2п * і. і=і

Число * х (п — * — 2к)-матриц ранга г, для которых система (2) совместна, обозначим М(¿, п—*—2к, г). Поскольку система совместна тогда и только тогда, когда га^(£'')т = = га^((£'')т|вт), где в = (1, 0,... , 0), то имеет место рекуррентная формула

М(і, п—і — 2к, г) = <

'0, если г > тіп{і, п — і — 2к} или г = 0,

2* — 1, если г =1,

N (і, п — і — 2к, г) —

к — N (і, п — і — 2к — 1,г)2г, если 2 ^ г ^ тіп{і, п — і — 2к}.

Из этого следует, что * х (п — * — 2к)-матриц ранга г, для которых система (2) несовместна, ровно

шт{*,п_*_2к}

2*(п_*_2к) — Е М(*,п — * — 2к, г).

Г=1

Поэтому в исследуемом коде содержится

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

тіп{і,п_і_2к}

Е

г=і

Одз (к) ( 2*(п_*_2к) — Е М(і, п — і — 2к, г) 22Ч2Н

функций веса

-і(^ )2* = 2*2п_*_і = 2п_і

и

І —Г

Одз (к)М(і, п — і — 2к, г)2

2‘_2‘-г +2к*

функций веса

і —і(^к) + (2і г — і)-^^) + 22* 2* г —і(^к), где і = 0,..., 2*_ г, г = 1,..., тіп{і, п — і — 2к}, к = 1,..., [(п — і)/2].

ЛИТЕРАТУРА

1. Логачев О. А., Сальников А. А., Ященко В. В. Булевы функции в теории кодирования и криптологии. М.: МЦНМО, 2004. 469 с.

2. Мак-Вильямс Ф.Дж., Слоэн Н.Дж. А. Теория кодов, исправляющих ошибки. М.: Связь, 1979. 744 с.

3. Черемушкин А. В. Методы аффинной и линейной классификации булевых функций // Труды по дискретной математике. 2001. Т. 4. С. 273-314.

4. Блейхут Р. Теория и практика кодов, контролирующих ошибки. М.: Мир, 1986. 576 с.

5. Покровский А. В., Никифоров М. С. Весовой спектр одного подкода кода КМ(3,п) // XIV Междунар. конф. «Проблемы теоретической кибернетики». Пенза: ПГУ, 2006. Ч.2. С. 68-70.

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