Научная статья на тему 'Свойства бент-функций, находящихся на минимальном расстоянии друг от друга'

Свойства бент-функций, находящихся на минимальном расстоянии друг от друга Текст научной статьи по специальности «Математика»

CC BY
406
52
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
БЕНТ-ФУНКЦИЯ / CDMA / OFDM / BENT FUNCTION

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

В работе получено минимальное расстояние Хэмминга в классе бент-функций от п переменных, равное 2n/2. Доказано, что бент-функции находятся на минимальном расстоянии тогда и только тогда, когда они различаются на линейном многообразии и обе функции на нем аффинны. Описан алгоритм построения всех бент-функций на минимальном расстоянии от заданной бент-функции. Приведены экспериментальные данные для бент-функций от малого числа переменных.

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

The minimal Hamming distance 2n/2 between distinct bent functions of n variables is obtained. We prove that two bent functions are at the minimal distance if and only if the set of vectors for which they differ is a linear manifold and both functions are affine ones on it. We give an algorithm for constructing all the bent functions being at the minimal distance from the given bent function. Some experimental data are presented for bent functions of the small number of variables

Текст научной работы на тему «Свойства бент-функций, находящихся на минимальном расстоянии друг от друга»

2009 Теоретические основы прикладной дискретной математики №4(6)

ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ПРИКЛАДНОЙ ДИСКРЕТНОЙ МАТЕМАТИКИ

УДК 519.7

СВОЙСТВА БЕНТ-ФУНКЦИЙ, НАХОДЯЩИХСЯ НА МИНИМАЛЬНОМ РАССТОЯНИИ ДРУГ ОТ ДРУГА1

Н. А. Коломеец, А. В. Павлов Новосибирский государственный университет, г. Новосибирск, Россия E-mail: [email protected], [email protected]

В работе получено минимальное расстояние Хэмминга в классе бент-функций от n переменных, равное 2n/2. Доказано, что бент-функции находятся на минимальном расстоянии тогда и только тогда, когда они различаются на линейном многообразии и обе функции на нем аффинны. Описан алгоритм построения всех бент-функций на минимальном расстоянии от заданной бент-функции. Приведены экспериментальные данные для бент-функций от малого числа переменных.

Ключевые слова: бент-функция, CDMA, OFDM.

Введение

Данная работа посвящена исследованию метрических характеристик класса бент-функций. Бент-функции — это булевы функции от четного числа переменных, максимально удаленные от класса аффинных функций. Впервые бент-функции были введены еще в 60-х годах XX века О. Ротхаузом, и до сих пор интерес к ним не ослабевает. Причиной этого служат как многочисленные теоретические и практические приложения, так и множество открытых вопросов, с ними связанных (см. подробнее в [1]).

Задача исследования метрических свойств бент-функций возникает в теории кодирования и находит свое применение в системах коллективного доступа [2], таких, как стандарты CDMA — Code Division Multiple Access (множественный доступ с кодовым разделением каналов) и OFDM — Orthogonal Frequency Division Multiplexing (ортогональное частотное мультиплексирование). Данные стандарты используют бент-функции для построения кодов постоянной амплитуды (constant-amplitude codes), что позволяет предельно снизить коэффициент отношения пиковой и средней мощностей сигнала (PARP — peak-to-average power ratio). Такие коды состоят из векторов значений бент-функций. Таким образом, являются актуальными задачи построения таких кодов с различными кодовыми расстояниями, что непосредственно связано с исследованием метрической структуры класса бент-функций.

Данная работа имеет следующую структуру. В п. 1 показывается, что минимальное расстояние в классе бент-функций равно 2n/2, и бент-функции, находящиеся на этом расстоянии друг от друга, должны отличаться на линейном многообразии, причем обе функции должны быть на нем аффинны. Заметим, что этим результатам

1 Работа выполнена при финансовой поддержке гранта Президента РФ для молодых российских ученых (грант МК-1250.2009.1) и РФФИ (проект № 08-01-00671).

предшествовали исследования В. В. Ященко [3] и К. Карле [4] построения различных бент-функций по заданной бент-функции. В п. 2 предлагаются простые способы построения бент-функций на минимальном расстоянии от заданной бент-функции. В п. З приводятся примеры бент-функций, для которых существуют бент-функции на минимальном расстоянии. В п. 4 используется аффинная классификация бент-функций для исследования существования бент-функций на минимальном расстоянии для бент-функций от малого количества переменных. В п. 5 приводятся алгоритм построения всех бент-функций на минимальном расстоянии от заданной бент-функции, а также экспериментальные данные для бент-функций от малого числа переменных.

Приведем известные определения и факты, имеющие отношения к бент-функциям.

Под расстоянием между булевыми функциями f и g мы подразумеваем расстояние Хэмминга, обозначим его как dist(f,g). Через En будем обозначать n-мерный куб, через Fn — множество булевых функций от n переменных.

Определение 1. Множество L С En называется линейным многообразием в En, если L = Хо Ф U, где Хо —элемент из En, а U — подпространство в En.

Определение 2. Преобразование Wf : En ^ Z следующего вида называется преобразованием Уолша — Адамара функции f :

Wf(w) = E (-i)f(x)e<w’x).

x€En

Число Wf (w) называется коэффициентом Уолша — Адамара в точке w (или просто коэффициентом Уолша).

Известно, что две различные функции не могут иметь одинаковые коэффициенты Уолша. Также справедливо равенство Парсеваля: пусть f Є Fn. Тогда имеет место следующее равенство:

£ Wf2(w) = 22n

w€En

Имеет место формула свертки: пусть f, g Є Fn, тогда

Wfeg(w) = ¿ E Wf (x)Wg(x Ф w).

2 x€En

Определение 3 (альтернативное определение бент-функций). Булева функция f от четного числа переменных называется бент-функцией, если все ее коэффициенты Уолша равны ±2n/2.

Класс бент-функций от n переменных будем обозначать как Bn, а минимальное расстояние между функциями из него — как d(Bn).

Определение 4. Пусть f — бент-функция от n переменных. Определим дуальную функцию f(w), исходя из равенства

(-1)/(w) . 2n/2 = Wf (w).

Стоит заметить, что дуальная к бент-функции функция также является бент-функцией.

Так как расстояние Хэмминга берется между бент-функциями, то здесь и далее будем считать, что n (так будет обозначаться количество переменных функции) является четным натуральным числом.

1. Критерий расположения бент-функций на минимальном расстоянии

Получим минимальное расстояние между бент-функциями и описание всех бент-функций на минимальном расстоянии от заданной бент-функции.

Обозначим через D(f, g) множество значений аргументов, на которых функции f и g от n переменных отличаются. Будем говорить, что D(f, g) —это множество 'разногласий функций f и g. Заметим, что |D(f,g)| = dist(f,g). Через (x) мы будем обозначать индикатор множества D, то есть булеву функцию, которая принимает значение 1 на всех элементах из D, и только на них. Через rank D обозначим размерность линейной оболочки векторов из D.

Определение 5. Булева функция f от n переменных аффинна на множестве D С En, если для некоторых w0 Е En, c Е E и для любого x Е D выполняется тождество f (x) = (w0,x) ф c.

Для удобства введем следующее обозначение:

f (w) = Е (—1)/(x)®<w,x>.

x€D(/,g)

Утверждение 1. Для любого w Е En справедливо |a/,g(w)| ^ |D(f, g)|, причем равенство достигается тогда и только тогда, когда функция f (x) ф (w,x) является константой на D(f, g).

Утверждение 2. Пусть f, g Е Fn. Тогда для любого w из En выполняется

W/(w) - Wg(w) = 2a/,g(w).

Доказательство. Запишем коэффициенты Уолша функций f и g следующим образом:

W/ (w) = Е (-1)/(x)®<w>x) + ^ (-1)/(*)ек*>,

x€D(/,g) ®een\D(/,g)

Wg (w) = E (—1)fl(x)®<w,x> + E (—i)g(x)®<w>x>.

x€D(/,g) ®een\D(/,g)

Отсюда разность этих коэффициентов равна

W/(w) - W,(w) = Ex6D(/,g) (-1)/(x)®<w'x> - <-1)g(x)®<w,x> = 2a/,g(w). ■

Имеет место следующая нижняя оценка минимального расстояния.

Лемма 1 (о расстоянии). Для всех четных n выполняется неравенство

d(Bn) ^ 2n/2.

Доказательство. Предположим, что существуют различные f, g Е Bn, такие, что dist(f, g) < 2n/2. Из предыдущего утверждения имеем: W/(w) — W,(w) = 2a/,g(w) для любого w из En. Так как f и g — бент-функции, то все их коэффициенты Уолша — Адамара по модулю равны 2n/2, следовательно,

a/,,(w) Е {0, 2n/2, —2n/2}.

По утверждению 1 |a/,,(w)| ^ |D(f, g)| < 2n/2 для всех w Е En. Получается, что a/,g(w) = 0, следовательно, W/(w) = W,(w) для любого w.

Но коэффициенты Уолша однозначно определяют функцию, поэтому f = g. Получаем противоречие с тем, что f и g различны. ■

Следующие леммы потребуются для доказательства основной теоремы, следствием которой будет описание всех бент-функций на минимальном расстоянии от заданной бент-функции.

Лемма 2. Пусть f,g Є Bra. Тогда |D(f,g)| = |D(f ,g)|.

Доказательство. Воспользуемся формулой свертки:

W/®g(w) = 2П £ W/ (x)Wg(x 0 w)

2 жЄЕ"

отсюда

/(0) = 2n E W/(x)w(x) = E (-i)/w®gix> = /(0).

2 жЄЕп жЄЕ"

Осталось заметить, что

W/«(0) = 2" - 2|D(f,g)|,

откуда и следует утверждение леммы. ■

Следствие 1. Пусть f, g Є Bn. Тогда dist(f, g) = d, если и только если существует ровно d векторов w Є En, таких, что W/(w) = Wg(w).

Лемма 3. Пусть D С En, |D| = 2k, rankD = k + 1 и для любых x,y Є D выполняется x ® y Є D. Тогда D — линейное многообразие.

Доказательство. Пусть (D) —линейная оболочка D, U = (D)\D, Хо Є D. Покажем, что U = x0 ® D. Очевидно включение x0 ® D С U. Также верно

|U| = |(D)| - |D| = 2fc+1 - 2k = 2k = |D| = |xo 0 D|.

Следовательно, U = x0 0 D.

Теперь покажем, что U — подпространство En. Множество U непусто, следовательно, достаточно показать только его замкнутость относительно 0.

Пусть x, у Є U, тогда x = x0 0 x', y = x0 0 y', x', y' Є D. Имеем

x 0 y = (x0 0 x') 0 (x0 0 y') = x' 0 y' Є U,

так как по условию леммы для любых x', y' Є D справедливо x' 0 y' Є U.

Таким образом, U — подпространство En. И следовательно, D — линейное многообразие. ■

Лемма 4. Любая аффинная функция, заданная на линейном многообразии и не являющаяся константой, уравновешена (принимает значения 1 и 0 одинаковое количество раз).

Доказательство. Пусть f — аффинная функция, заданная на линейном многообразии U, и f — не константа. По определению линейного многообразия U = x00L для некоторого подпространства L и вектора x0. Рассмотрим функцию f'(x) = f (x 0 x0) 0 0f (x0), определенную на подпространстве L. Очевидно, что f' линейна на L. Также легко понять, что f уравновешена на U тогда и только тогда, когда f' уравновешена на L (сдвиг множества является взаимнооднозначным отображением, а прибавление к функции константы сохраняет свойство уравновешенности), поэтому нам достаточно доказать утверждение леммы для функции f'.

Рассмотрим множества L0 = {x Є L | f'(x) = 0} и L1 = {x Є L | f'(x) = 1}. Покажем, что множества L0 и L1 равномощны.

Функция f' — не константа на L, так как f — не константа на U. Поэтому выберем элемент y0 из L1. Тогда для любого x Є L0

f'(x 0 y0) = f'(x) 0 f'(y0) = 0 0 1 = 1

Значит, y0 0 L0 С L1. Отсюда |L0| ^ |L1| в силу взаимнооднозначности сдвига множества на y0. Но для любого y Є L1

f'(y 0 y0) = f'(y) 0 f'(y0) = 1 0 1 = 0.

Следовательно, y0 0 L1 С L0 и |L1| ^ |L01. Таким образом, |L0| = |L1|. А это и означает уравновешенность функции f'. ■

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

Теорема 1 (критерий расположения бент-функций на минимальном расстоянии). Пусть f, g Є Fn, f Є Bn, dist(f, g) = 2n/2. Тогда g Є Bn, если и только если D(f, g) —

линейное многообразие и функция f аффинна на D(f, g).

Доказательство. Необходимость. Пусть f, g Є Bn, |D(f, g)| = 2n/2. Покажем, что D(f, g) —линейное многообразие и f аффинна на D(f, g). Введем обозначения для следующих множеств:

W=0 = {w Є En| aftg (w) = 0},

W=0 = {w Є En| a/,g(w) = 0}.

По утверждению 2

Wf(w) - Wg(w) = 2a/,g(w).

Так как f, g Є Bn, то a/,g(w) Є {0, 2n/2, —2n/2}. Согласно следствию 1, |W=0| = |D(f, g)|.

По утверждению 1 |a/,g(w0)| = |D(f, g)| = 2n/2 Vx Є D(f, g) f(x) = (w0,x) 0 c

для подходящей константы c. То есть аффинность мы доказали.

Таким образом, все w Є W=0 являются решениями одной из следующих систем:

(b,w) = (b> w0) , b Є D(f,g),

(b,w) = (b,w0) 0 1, b Є D(f,g).

Обозначив w 0 w0 за x, получаем равносильные системы уравнений:

(b,x) =0, b Є D(f,g), (1)

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

(b,x) = 1, b Є D(f,g). (2)

Видно, что решения систем не пересекаются.

Теперь оценим |W=01, исходя из того, что обе системы разрешимы:

2^/2 = |W^01 ^ 2 • 2™-rank D(/>g> = 2™-гапк D(/,g>+1

(первая система всегда имеет 2n-rankD(/>g> решений, а вторая либо имеет столько же решений, либо вообще не имеет). Отсюда

rankD(f, g) ^ n/2 + 1.

Но, исходя из мощности множества D(f, g), получаем

rank D(f, g) Є {n/2, n/2 + 1}.

Рассмотрим два случая.

Случай 1: rankD(f, g) = n/2. Очевидно, в этом случае D(f, g) является подпространством.

Случай 2: rankD(f, g) = n/2 + 1. В этом случае обе системы должны иметь решение, поэтому у второй системы должно существовать частное решение, т. е. существует to G En, такое, что (¿о, b) = 1 для всех b G D(f, g).

Если существуют x,y G D(f, g), такие, что x Ф y G D(f, g), то вторая система будет противоречива. Действительно, с одной стороны,

(to,x) = 1, (to, y) = 1 =^ (to, x 0 y) = 0,

с другой стороны, (to, x 0 y) = 1. Следовательно, выполняется условие леммы 3 для множества D(f,g). Таким образом, D(f,g) —линейное многообразие. Необходимость доказана.

Достаточность. Пусть D(f,g) —линейное многообразие и f аффинна на D(f,g). Для начала покажем, что

/(w) G {0, 2n/2, —2n/2}.

Так как f аффинна на D(f, g), то функция (x) = f (x)0(w, x) будет также аффинной на D(f, g). Если (x) не является константой на D(f,g), то по лемме 4 функция уравновешена на D(f, g). Поэтому

/ (w) = Е (—1)h”(x) = 0.

xeD(/,s)

Если же hw(x) —константа на D(f,g), то |a/,g(w)| = |D(f,g)| = 2n/2 по утверждению 1. Следовательно, a/,g(w) G {0, 2n/2, —2n/2}.

Осталось доказать, что g G Bn. Имеем

Wg(w) = W/(w) — 2a/,g(w).

Следовательно,

Wg(w) G {2n/2, —2n/2, 3 ■ 2n/2, —3 ■ 2n/2}.

Отсюда

mili |Wg (w)| > 2n/2,

поэтому из равенства Парсеваля следует, что |Wg(w)| = 2n/2 для любого w. Получаем, что g G Bn. Достаточность доказана. ■

Следствие 2 (минимальное расстояние в классе Bn). Справедливо d(Bn) = 2n/2.

Доказательство. Как известно, f (x) = xix2 0 ■ ■ ■ 0 xn-1xn является бент-функцией. Пусть

D = {(Уъ0,••• ,Уп/2,0)| y* G E};

очевидно, что

D с En,

|D| = 2n/2,

Vx G D f (x) = 0.

Пусть g(x) = f (x) ® (x). Понятно, что D(f, g) = D. Тогда по теореме 1 g G Bn, т. е.

f, g G Bn, dist(f, g) = 2n/2. А из леммы 1 мы знаем, что d(Bn) ^ 2n/2. Следовательно, d(B„) = 2n/2. ■

Пусть Laii(f) —всевозможные линейные многообразия размерности n/2, на которых f аффинна. Теперь можно более компактно описать бент-функции на минимальном расстоянии от заданной бент-функции.

Следствие 3 (общий вид функций на минимальном расстоянии). Пусть f G Bn. Тогда существует g G Bn на минимальном расстоянии от f, если и только если множество Lall(f) непусто, причем g(x) = f (x) ф 1L(x), где L G Lall(f).

Следствие 4. Бент-функция от n переменных не может быть аффинна на линейных многообразиях размерности больше чем n/2.

Доказательство. Предположим, что для бент-функции f и линейного многообразия L утверждение неверно. Введем g(x) = f (x^/L(x) и (x) = f (x^(w,x). Далее приводим рассуждения, аналогичные доказательству достаточности теоремы 1: так как f аффинна на L, то и аффинна на L. Если размерность D(f, g) больше чем n/2, то для всех элементов w, таких, что константа (т.е. aj,fl(w) = 0) |a/,g(w)| > 2n/2, а для w, при которых не константа, aj,fl(w) = 0 в силу уравновешенности функции на L (лемма 4). Тогда из Wg (w) = Wf (w) — 2a/,fl (w) следует

min |Wg (w)| ^ 2n/2,

но у различных функций все коэффициенты Уолша совпадать не могут. Таким образом, существует wo, для которого öf-,fl(wo) = 0 и, следовательно, |Wg(w0)| > 2n/2, что противоречит равенству Парсеваля. ■

Следствие 5. Пусть D(f, g) = x0 ф L, L — подпространство и f (x) = (w0,x) ф c для всех x G D(f, g) и некоторых w0 и c. Тогда коэффициенты Уолша функций f и g отличаются только на элементах множества w0 ф L^.

Доказательство. В доказательстве необходимости теоремы 1 показано, что W=0 = w0 ф U, где U — множество решений следующих систем уравнений:

(b,x) = 0, b G D(f,g^

(b,x) = ^ b G D(f,g).

Так как D(f, g) —линейное многообразие, то эти системы эквивалентны следующим системам:

( (b,x0) =0, Г (b,x0) = 1,

| (b,x) = 0, b G L и | (b,x) = 0, b G L.

А эти системы, в свою очередь, эквивалентны одной системе

(b, x) = 0, b G L.

Следовательно, U = Lx и W=0 = w0 ф Lx. ■

Замечание. Результатам, полученным в теореме 1 и следствиях, предшествовали следующие исследования: В. В. Ященко [3] и К. Карле [4] рассматривали задачу построения различных бент-функций по имеющейся бент-функции путем прибавления индикатора линейного многообразия. Как показывает следствие 3, эта задача тесно

связана с задачей построения бент-функций на минимальном расстоянии от заданной бент-функции. В работе В. В. Ященко предлагалось к бент-функции прибавлять индикатор линейного многообразия, на котором она аффинна. К. Карле рассматривал индикаторы линейных многообразий произвольной размерности. В своей работе он предложил необходимые и достаточные условия на бент-функцию, при которых прибавление индикатора линейного многообразия к ней дает в результате бент-функцию.

Таким образом, достаточность в теореме І следует из результатов В. В. Ященко и К. Карле.

2. Индикаторы линейных многообразий и координатные подпространства

В связи с полученным описанием бент-функций на минимальном расстоянии от заданной бент-функции интересно рассмотреть, что из себя представляют индикаторы линейных многообразий размерности n/2.

Рассмотрим /и(x), где U — подпространство.

Пусть а1, а2, ..., an/2 — базис U^. Исходя из U^ = U, имеем

x Є U V i Є {1,..., n/2} (a,, x) = 0.

Отсюда получаем формулу для индикатора:

/и(x) = ((а1,x) e 1) ■ ((а2,x) e 1) ■ ... ■ ((an/2,x) e 1).

Таким образом, индикатор подпространства размерности n/2 является конъюнкцией n/2 сомножителей, каждый из которых — отрицание скалярного произведения вектора переменных и базисного вектора U^.

Рассмотрим /¿(x), где L — линейное многообразие.

Пусть x0 Є L, U = x0 e L. Очевидно, что U — подпространство. Тогда

/l(x) = /и(x0 e x).

Утверждение 3. Пусть U — линейное многообразие размерности n/2. Тогда deg(/u ) = n/2.

Следствие б. Если бент-функции находятся на минимальном расстоянии друг от друга, то хотя бы одна из них имеет алгебраическую степень n/2.

В общем случае задача нахождения подпространств, на которых f аффинна, достаточно сложна и не решается методом «пристального взгляда». Но если полином Жегалкина функции f содержит мало слагаемых, то часто существуют координатные подпространства (подпространства, базисом которых являются векторы веса 1 из En), на которых f аффинна. Рассмотрим алгоритм построения бент-функции, находящейся на минимальном расстоянии от данной, с использованием координатных подпространств.

Алгоритм І

Вход: f (x) —исходная бент-функция.

Выход: g(x) —бент-функция на минимальном расстоянии от функции f (x).

1) Фиксируем значения любых n/2 переменных так, чтобы функция от оставшихся n/2 переменных стала аффинной.

2) Если первый шаг завершился успешно, то получаем индикатор многообразия в следующем виде:

/l(x) = (x,, e x? e 1) ■ (x,2 e x02 e 1)

(xin/2 e x0n/2 e 1),

где —переменные, которые мы зафиксировали на первом шаге алгоритма;

ж0 — значения зафиксированных переменных.

Таким образом, если мы фиксировали переменную ж значением 0, то в индикатор многообразия войдет отрицание этой переменной, если же мы фиксировали значением 1, то в индикатор войдет сама переменная.

3) Получаем

#(ж) = /(ж) Ф ^(ж).

Пример 1. Пусть

/(ж) = Ж1Ж2 Ф Ж3Ж4 Ф ... Ф

1) Фиксируем все переменные с чётными номерами значением 1. Получаем следующую функцию:

/(ж1, 1,Жз, 1, . . . ,ж„_1, 1) = Ж1 Ф Жз Ф ... Ф Жп-1.

Видно, что получилась аффинная функция.

2) Индикатор будет выглядеть следующим образом:

/¿(ж) = Ж2Ж4 ... ж„.

3) Получаем следующую выходную функцию:

д(ж) = Ж1Ж2 Ф Ж3Ж4 Ф ... Ф Ж„_1Ж„ Ф Ж2Ж4 ... ж„.

3. Известные подклассы бент-функций с точки зрения существования

функций на минимальном расстоянии

Рассматривается существование бент-функций на минимальном расстоянии для бент-функций из известных подклассов класса Вп.

3.1. Класс Мэйорана - Мак-Фарланда Класс Мэйорана — Мак-Фарланда обозначается как М. В этом классе содержатся бент-функции следующего вида:

/(ж,у) = (ж,п(у))Ф (3)

где ж, у € Еп/2, ф € ^п/2, п — подстановка на Еп/2.

Более подробно об этой конструкции можно узнать в [5].

Покажем, что для любой функции из класса М существует бент-функция на минимальном расстоянии: достаточно воспользоваться алгоритмом 1.

1) Фиксируем значение у: пусть у = уо. Тогда

/(ж,уо) = (ж,п(уо)) Ф ф(уо).

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

Понятно, что это аффинная функция.

2) Получаем индикатор, в который входят только переменные из у.

3) Получаем бент-функцию в классе М на минимальном расстоянии от исходной. Класс М является простым и достаточно богатым.

|Мп| = 2п/2! ■ 22П/2.

(4)

Известно (см. описание бент-функций в виде линейного разветвления в [6]), что если бент-функция имеет вид f(x,y) = (x,n(y)) ф ф(у), где x,y £ En/2, ф £ Fn/2, то отображение п взаимнооднозначно и, следовательно, функция f (x) принадлежит классу M„.

Мощность класса часто используется как нижняя оценка мощности класса Bn. Если рассматривать функции, аффинно эквивалентные функциям из Mn, то идею Мэйорана — Мак-Фарланда можно трактовать следующим образом:

1) Берем подпространство U размерности n/2 в En.

2) Разбиваем En на смежные классы относительно U.

3) На каждом смежном классе U строим аффинную функцию.

Также следует отметить, что бент-функции, аффинно эквивалентные функциям из класса Мэйорана — Мак-Фарланда, не являются всеми бент-функциями, имеющими непустое Laii. Пример такой бент-функции будет приведен в п. 4.

3.2. Partial Spreads Класс бент-функций Partial Spreads обозначается как PS. Он состоит из двух подклассов PS-, PS+ , определяемых следующим образом.

PS-. Пусть

1) Li — подпространства в En, i £ {1, 2,... , 2n/2-1};

2) размерность Li равна n/2;

3) Li П Lj = {0} Vi = j.

Тогда функции вида

2^/2-1

f (x) = ® (x) (5)

i=1

принадлежат PS-.

PS+. Пусть

1) Li — подпространства в En, i £ {1, 2,... , 2n/2-1 + 1};

2) размерность Li равна n/2;

3) Li П Lj = {0} Vi = j.

Тогда функции вида

2n/2-1+1

f (x) = ф (x) (6)

i=1

принадлежат PS+.

Класс PS впервые был описан Дж. Диллоном в [7].

С точки зрения существования бент-функций на минимальном расстоянии больший интерес представляет класс PS + (для функций из PS- это сложный вопрос). Нетрудно убедиться, что все функции из класса PS + имеют непустые множества Laii: для всех подпространств Li из определения функций в этом классе выполняется

Vx £ Li\{0} f (x) = 1,

потому что пространства пересекаются только по нулевому элементу. Кроме того,

f (0) = 1.

так как 0 лежит во всех пространствах, а количество пространств нечетно. Следовательно,

Vx £ Li f (x) = 1.

Таким образом, € Ьаи(/) для всех г, причем функции вида

д(ж) = /(ж) Ф ^ (ж)

будут принадлежать _, и порождающими пространствами для них будут все подпространства для /, кроме .

4. Аффинная эквивалентность бент-функций и минимальное расстояние

Рассмотрим известные факты об аффинной классификации бент-функций и взаимосвязь этих фактов с расстоянием между бент-функциями.

Определение 6. Булевы функции / и д от п переменных называются аффинно эквивалентными, если существует невырожденная матрица А размера п х п, вектор Ь длины п и аффинная функция / от п переменных, такие, что д(ж) = /(А ■ ж Ф Ь) Ф / (ж) для любого ж .

Рассмотрим известные факты об аффинной классификации бент-функций.

Утверждение 4 [8]. Все бент-функции степени 2 аффинно эквивалентны функции /(ж) = ж1ж2 Ф жзж4 Ф ... Ф жп_1жп.

Утверждение 5 [9] и др. Каждая бент-функция от 6 переменных аффинно эквивалентна одной из следующих функций:

1) /6 = ж1ж2 Ф жзж4 Ф ж5жв;

2) /I = ж1ж2жз Ф ж1ж4 Ф ж2ж5 Ф жзже;

3) /6 = ж1ж2жз Ф ж2ж4ж5 Ф ж1ж2 Ф ж^4 Ф ж2жб Ф жзж5 Ф ж4ж5;

4) /4 = ж1ж2жз Ф ж2ж4ж5 Ф жзж4жб Ф ж1ж4 Ф ж2же Ф жзж4 Ф жзж5 Ф жзжб Ф ж4ж5 Ф ж4жб.

Утверждение 6 [10]. Каждая бент-функция от 8 переменных степени не больше 3 аффинно эквивалентна одной из следующих функций:

1) /8 = ж1ж2 Ф жзж4 Ф ж5жб Ф ж/жз;

2) /| = ж1ж2жз Ф ж1ж4 Ф ж2ж5 Ф жзжб Ф ж/жз;

3) /з = ж1ж2жз Ф ж2ж4ж5 Ф жзж4 Ф ж2ж| Ф ж^7 Ф ж5жз;

4) /4 = ж1ж2жз Ф ж2ж4ж5 Ф ж1жз Ф ж^5 Ф ж2ж| Ф жзж4 Ф ж/жз;

5) /| = ж1ж2жз Ф ж2ж4ж5 Ф жзж4ж| Ф жзж5 Ф ж2ж| Ф ж2ж5 Ф ж^7 Ф ж4жз;

6) /б = ж1ж2жз Ф ж2ж4ж5 Ф жзж4ж| Ф жзж5 Ф ж1 жз Ф ж^4 Ф ж2ж/ Ф ж|жз;

7) /7 = ж1ж2жз Ф ж2ж4ж5 Ф жзж4ж| Ф жзж5 Ф ж2ж| Ф ж2ж5 Ф ж1ж2 Ф ж1жз Ф ж1 ж4 Ф ж/жз;

8) /з = ж1ж2жз Ф ж2ж4ж5 Ф жзж4ж| Ф жзж5 Ф ж1 ж| Ф ж2ж/ Ф ж4жз;

9) /9 = ж1ж2ж7 Ф жзж4ж7 Ф ж5ж|ж7 Ф ж^4 Ф жзж| Ф ж2ж5 Ф ж4ж5 Ф ж/жз;

10) /10 = ж1 ж2жз Ф ж2ж4ж5 Ф жзж4ж| Ф ж^4ж/ Ф жзж5 Ф ж2ж/ Ф ж1ж5 Ф ж1 ж| Ф ж4жз.

Рассмотрим связь расстояний между бент-функциями и аффинной эквивалентностью.

Так как класс Вп замкнут относительно отрицания функции, то из формулы ^Вп) = 2п/2 следует

Утверждение 7. Наибольшее расстояние в классе Вп, не равное 2п, равно 2п 2п/2 .

Определение 7 (спектр расстояний для функции). Пусть / € Вп. Тогда вектор г из Z2n называется спектром расстояний для бент-функции /, если г-я компонента вектора г равна количеству бент-функций на расстоянии г от функции /.

Утверждение 8. Спектры расстояний для аффинно эквивалентных бент-функций одинаковы.

Доказательство. Имеют место следующие равенства:

dist(f (x),g(x)) = dist(f (A ■ x ® b),g(A ■ x ® b)), det(A) = 0;

Vh efn dist(f,g) = dist(f ® h, g ® h).

Так как класс бент-функций замкнут относительно аффинного преобразования переменных и относительно прибавления любой аффинной функции, то из этих равенств очевидным образом следует утверждение. ■

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

Утверждение 9. Любая бент-функция степени 2 имеет непустое Laii(f).

Доказательство. Из утверждения 4 известно, что все бент-функции степени 2 аффинно эквивалентны функции f (x) = Xi ■ x2 Ф x3 ■ x4 ® ... ® xn-1 ■ xn. А для этой функции условие теоремы выполнено. ■

Утверждение 10. Все функции из класса В6 имеют непустое Laii.

Доказательство. Применяем алгоритм 1 к аффинно неэквивалентным бент-функциям от 6 переменных:

1) f16(xi, 0,x3, 0,x5,0) = 0;

2) f26(0,0, 0,x4,x5,x6) = 0;

3) f|(0,0,x3,x4, 0,x6) = 0;

4) f46(xi, 0, 0, 0,x5,x6) = 0,

то есть первый шаг алгоритма для каждой функции завершился успешно. Отсюда следует утверждение теоремы. ■

Утверждение 11. Все бент-функции от 8 переменных степени не больше 3 имеют непустое Laii.

Доказательство. Применяем алгоритм 1 к аффинно неэквивалентным бент-функциям от 8 переменных степени не больше 3:

1) fj(0,x2, 0,x4, 0,x6, 0,x8) = 0;

2) f28(0,0, 0,x4,x5,x6, 0,x8) = 0;

3) f38(0,0,x3, 0, 0, x6, x7, x8) = 0;

4) f48(0,0, 0,x4,x5,x6, 0,x8) = 0;

5) f5f (0, 0, 0, 0,x5, x6, x7, x8) = 0;

6) f|f (0, 0, 0,x4,x5, 0,x7,x8) = 0;

7) f8(0,0, 0,x4,x5,x6, 0,x8) = 0;

8) fj8(0, 0, 0, 0,x5, x6, x7, x8) = 0;

9) f98(x1, 0, 0, 0,x5,x6, 0,x8) = 0;

10) f8o(0, 0, 0, 0, x5, x6, x7, x8) = 0,

то есть первый шаг алгоритма для каждой функции завершился успешно. Отсюда следует утверждение теоремы. ■

Утверждение 12. Пусть f G Bn. Тогда f аффинно эквивалентна функции из класса Мэйорана — Мак-Фарланда тогда и только тогда, когда существует L G Laii(f), такое, что x0 Ф L G Laii(f) для всех x0 G En.

Доказательство. Необходимость. Пусть / представлена в виде

/(ж,у) = (ж,%)) Ф д(у^ ж,у € Еп/2.

Тогда зададим Ь следующим образом:

Ь = {(ж,0) | ж € Еп/2}.

Очевидно, что данное Ь удовлетворяет условию утверждения.

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

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

//(ж,у) = (ж,^(у)) Ф д(у), ж,у € Еп/2.

Из критерия Ященко о представлении бент-функции в виде линейного разветвления (см. [6]) следует, что Л.(у) взаимнооднозначно и /' принадлежит классу Мп. ■

Утверждение 13. В классе Вз существуют бент-функции с непустым Ьац, аф-финно неэквивалентные функциям из класса Мэйорана — Мак-Фарланда.

Пример 2. Бент-функция от 8 переменных с непустым Ьац, аффинно неэквивалентная функциям из класса Мэйорана — Мак-Фарланда:

/(ж) = ж1ж2ж5жз Ф ж1ж2жбжз Ф ж1ж4ж5жз Ф ж1ж4жбжз Ф ж1ж5жбжз Ф ж2ж4ж5жз Ф ж2ж4жбжз Ф жзж4ж5жз Ф ж4ж5жбжз Ф ж1ж2жз Ф ж1ж2ж5 Ф ж^жб Ф ж1ж2жз Ф ж1ж4ж5 Ф ж1ж4ж| Ф ж1ж4жз Ф ж1ж5жб Ф ж1 ж5жз Ф ж^бжз Ф ж2ж4ж5 Ф ж2ж4жб Ф ж2ж4жз Ф ж2ж5жз Ф ж2жбжз Ф жзж4ж5 Ф жзж4жз Ф жзж5жз Ф ж4ж5жб Ф ж4жбжз Ф ж5жбжз Ф ж1ж2 Ф ж1ж5 Ф ж1жб Ф ж1жз Ф ж2ж4 Ф ж2жб Ф ж2жз Ф жзж4 Ф жзж5 Ф жзжб Ф жзжз Ф ж4жб Ф ж5жб Ф жбжз Ф ж/жз Ф ж1 Ф ж2 Ф жз Ф ж|.

С помощью программы, реализующей алгоритм 2 из п. 5, было показано, что у данной функции имеются линейные многообразия размерности 4, на которых она аф-финна, но при этом ни для одного из них не выполняется условие утверждения 12.

5. Алгоритм перебора бент-функций, находящихся на минимальном расстоянии от заданной бент-функции

Из теоремы 1 следует, что для того чтобы перебрать все бент-функции, находящиеся на минимальном расстоянии от заданной бент-функции, достаточно перебрать все многообразия размерности п/2, на которых заданная бент-функция аффинна.

Базис подпространства размерности п/2 задаётся п/2 строками матрицы ступенчатого вида, состоящей из нулей и единиц, такой, что

1) каждая из последующих строк заканчивается меньшим количеством подряд идущих нулей, чем предыдущая строка;

2) под каждой ведущей единицей (первая единица в строке) в столбце стоят нули;

3) остальные элементы произвольны.

Приведём пример такой матрицы и бент-функций, находящихся на минимальном расстоянии друг от друга.

Пример 3. Пусть дана бент-функция от шести переменных:

/1(ж) = ж1ж2жз Ф ж1ж4 Ф ж2ж5 Ф жзж|.

Для построения бент-функции, находящейся на минимальном расстоянии от данной, нужно найти такое многообразие Ь = ж0 Ф и, что /1 будет аффинна на этом многообразии. На компьютере с помощью алгоритма, который приведен ниже, были построены

все базисы подпространств и и все ж0, такие, что / аффинна на Ь = ж0 Ф и. Приведем пример таких ж0 и и. Пусть

/1 0 1 0 0 0\

= 11 00 1 001 — базисная матрица подпространстваи;

\0 0 0 0 1 0/

ж0 = (0 1 0 0 0 0). Тогда базисная матрица ортогонального подпространства

/0 0 0 0 0 1\

А^± = (а„) = I 0 1 0 0 0 0 I .

101100

Теперь построим индикатор, являющийся конъюнкцией п/2 сомножителей, где г-й сомножитель получен из г-й строки матрицы Аи± таким образом:

(йгіЖі Ф ЙІ2Ж2 Ф ... Ф йтЖ„ Ф 1).

Отсюда следует /¿(ж) = /и (ж Ф Жо) = (жі, Ж2 Ф 1, Жз, Ж4, Ж5, Жб ) = (Жб Ф 1)(Ж2 Ф1Ф 1)(жі Ф

Жз Ф ж4 Ф1) = жіж2жб Ф Ж2Ж3Ж6 Ф Ж2Ж4Ж6 Ф Ж2Ж6 Ф жіж2 Ф Ж2Ж3 Ф ж2ж4 Ф ж2. Отсюда получаем

вторую бент-функцию /2(ж) = /і(ж) Ф /¿(ж) = ЖіЖ2Жз Ф ЖіЖ4 Ф Ж2Ж5 Ф ЖзЖб Ф ЖіЖ2Жб Ф Ж2Ж3Ж6 Ф ж2ж4ж6 Ф ж2жб Ф жіж2 Ф Ж2Ж3 Ф Ж2Ж4 Ф ж2, которая находится на минимальном расстоянии 2п/2 = 8 от функции /і.

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

Алгоритм 2 (поиск всех многообразий размерности п/2, на которых функция аффинна).

1) На вход алгоритма подается булева функция / (ж) (в нашем случае это бент-функция).

2) Далее для всех ж0 из получаем новую функцию: д(ж) = /Х0 (ж) = /(ж Ф Ж0).

3) После этого д(ж) нормируется: д(ж) = д(ж) Ф д(0).

Таким образом, мы перешли от поиска многообразий, на которых заданная функция аффинна, к поиску подпространств, на которых заданная функция линейна. Для каждой такой функции д(ж) будем рекуррентно строить все базисные матрицы размера п/2 х п.

4) Пусть Аі —матрица, содержащая одну строку.

5) Допустим, что построена матрица Аі-і размера в — 1 х п, где в — 1 < п/2, и нужно построить матрицу А размера в х п. Для этого добавим ещё один вектор в базис. Перебираем все векторы V в лексикографическом порядке2 и приписываем их к матрице Аі-і, так, чтобы получившаяся матрица А удовлетворяла условиям 1 - 3 на с. 17. Для каждого вектора V, претендующего стать базисным, проверяются два условия:

а) д(ж Ф V) = д(ж) Ф #^);

б) вектор ж0 лексикографически предшествует вектору V Ф Ж Ф Ж0, где Ж пробегает множество всех ранее добавленных в подпространство векторов.

Если хотя бы одно условие не выполняется, вектор V отбрасывается. Таким образом, сразу отсекается большое количество ненужных векторов. Если ни один из векторов не подошел, значит, это тупиковая ветка рекурсии.

2Заметим, что в реализации удобнее нумеровать компоненты векторов справа налево.

Трудоёмкость данного алгоритма в самом худшем случае (если на вход алгоритма подать линейную функцию) не превышает Т = 0(п/2 • Рп/2 • 2п/2), где п/2 — количество операций, необходимое для построения одного подпространства;

(2П - 1)(2П-1 - 1)...(2га/2+1 - 1)

Рп/2 = (2»/2 - 1)(2»/2-1 - 1)—(21 - 1) —количество подпространств размерности п/2;

2п/2 — количество операций, затрачиваемых на проверку условий. Но на практике данный алгоритм работает значительно быстрее.

Приведем экспериментальные данные. В таблице показаны бент-функции (по утверждению 8 достаточно рассматривать представителей различных классов аффинной эквивалентности), количество многообразий, на которых данная бент-функция аффинна, и время работы программы в секундах (на процессоре с тактовой частотой 2,4 ГГц).

n Бент-функция |Lall| Время

4 Ж1Ж2 Ф Ж3Ж4 60 0

6 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж3Ж4Ж6 Ф Ж1Ж4 Ф Ж2Ж6 Ф Ж3Ж4Ф ФЖ3Ж5 Ф Ж3Ж6 Ф Ж4Ж5 Ф Ж4Ж6 376 0,001

6 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж1Ж2 Ф Ж1Ж4 Ф Ж2Ж6 Ф Ж3Ж5 Ф Ж4Ж5 440 0,001

6 Ж1Ж2Ж3 Ф Ж1Ж4 Ф Ж2Ж5 Ф Ж3Ж6 568 0,001

6 Ж1Ж2 Ф Ж3Ж4 Ф Ж5Ж6 1080 0,002

8 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж3Ж4Ж6 Ф Ж1Ж4Ж7 Ф Ж3Ж5Ф ФЖ2Ж7 Ф Ж1Ж5 Ф Ж1X6 Ф Ж4Ж8 1392 0,035

8 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж3Ж4Ж6 Ф Ж3Ж5 Ф Ж2Ж6Ф ФЖ2Ж5 Ф Ж1Ж7 Ф Ж4X8 2928 0,035

8 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж3Ж4Ж6 Ф Ж3Ж5 Ф Ж1Ж3Ф ФЖ1Ж4 Ф Ж2Ж7 Ф X6X8 2928 0,035

8 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж3Ж4Ж6 Ф Ж3Ж5 Ф Ж2Ж6Ф ФЖ2Ж5 Ф Ж1Ж2 Ф Ж1Ж3 Ф Ж1Ж4 Ф Ж7Ж8 2928 0,036

8 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж3Ж4Ж6 Ф Ж3Ж5 Ф Ж1Ж6 Ф Ж2Ж7 Ф Ж4Ж8 2928 0,034

8 Ж1Ж2Ж7 Ф Ж3Ж4Ж7 Ф Ж5Ж6Ж7 Ф Ж1Ж4 Ф Ж3Ж6Ф ФЖ2Ж5 Ф Ж4Ж5 Ф Ж7X8 4464 0,036

8 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж3Ж4 Ф Ж2Ж6 Ф Ж1Ж7 Ф Ж5Ж8 6000 0,037

8 Ж1Ж2Ж3 Ф Ж2Ж4Ж5 Ф Ж1Ж3 Ф Ж1Ж5 Ф Ж2Ж6 Ф Ж3Ж4 Ф Ж7Ж8 6000 0,037

8 Ж1Ж2Ж3 Ф Ж1Ж4 Ф Ж2Ж5 Ф Ж3Ж6 Ф Ж7Ж8 12144 0,045

8 Ж1Ж2 Ф Ж3Ж4 Ф Ж5Ж6 Ф Ж7X8 36720 0,070

10 Ж1Ж2 Ф Ж3Ж4 Ф Ж5Ж6 Ф Ж7X8 Ф Ж9Ж10 2424520 8,543

ЛИТЕРАТУРА

1. Токарева Н. Н. Бент-функции: результаты и приложения. Обзор работ // Прикладная дискретная математика. 2009. №3. C. 15-37.

2. Paterson K. G. Sequences For OFDM and Multi-code CDMA: two problems in algebraic Coding Theory // Sequences and their applications. Seta 2001. Second Int. Conference (Bergen, Norway, May 13-17, 2001). Proc. Berlin: Springer, 2002. P. 46-71.

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

4. Carlet C. Boolean Functions for Cryptography and Error Correcting Codes // Chapter of the monograph «Boolean Methods and Models», Cambridge Univ.

Press / eds. P. Hammer, Y. Crama, to appear. Prelim. version is available at www-rocq.inria.fr/secret/Claude.Carlet/chap-fcts-Bool.pdf.

5. McFarland R. L. A family of difference sets in non-cyclic groups // J. Combin. Theory. Ser. A. 1973. V. 15. No. 1. P. 1-10.

6. Ященко В. В. О критерии распространения для булевых функций и о бент-функциях // Пробл. передачи информации. 1997. Т. 33. Вып. 1. С. 75-86.

7. Dillon J. F. Elementary Hadamard Difference sets // Ph. D. Thesis. Univ. of Maryland, 1974.

8. Dillon J. F. A survey of bent functions // The NSA Technical J. 1972. Special Issue. P. 191-215.

9. Rothaus O. On bent functions // J. Combin. Theory. Ser. A. 1976. V. 20. No. 3. P. 300-305. 10. Braeken A. Cryptographic properties of Boolean functions and S-boxes // Ph. D. Thesis,

Katholieke Univ. Leuven, 2006.

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