Помощь в написании студенческих работ
Антистрессовый сервис

Понятие о классификации двоичных функций

РефератПомощь в написанииУзнать стоимостьмоей работы

Для вычисления групп инерции часто используется класс эвристических методов. Они выполняются в два этапа. Сначала выбирается набор каких-либо достаточно просто вычисляемых параметров (называемых «эвристиками»), по значениям которых можно либо сделать вывод «функции не эквивалентны» или «группа инерции тривиальна» и др., либо уменьшить число вариантов, подлежащих перебору для получения… Читать ещё >

Понятие о классификации двоичных функций (реферат, курсовая, диплом, контрольная)

При анализе полное перечисление всех б.ф. и их свойств не под силу современным электронно-вычислительным машинам (ЭВМ) уже при числе переменных п > 5. В связи с этим используется разбиение функций на классы, где внутри классов функции обладают близкими свойствами. Если число классов невелико, то анализ облегчается, ведь по свойствам представителей классов можно судить о свойствах остальных функций. Подход к исследованию множеств, заключающийся в разбиении их на классы, называют классификацией. Булевы функции можно классифицировать по различным характеристикам: весам, степеням нелинейности и т. д. Важным с точки зрения приложений в криптологии является подход, основанный на применении групп преобразований.

Пусть G — некоторая группа преобразований множества Vn, порядок группы G удовлетворяет неравенствам: 1 < G < (2″)!. Булевы функции f (pc^…, хп) и |/(xj,…, хп) называют эквивалентными относительно группы G, или G-эквивалентными, если в G найдется подстановка g, при которой |/(х) = f (g (x)). Обозначим это отношение f =Gi или/= |/, если в контексте группа G определена однозначно. Данное бинарное отношение на множестве Р2(п) при любой группе G является отношением эквивалентности, так как выполнены свойства:

  • а) рефлексивность —/=с/(в этом случае g = е);
  • б) симметричность — f =G |/, тогда |/ =Gf
  • в) транзитивность — / =G |/, |/ =G zy тогда f =G z.

Итак, множество Р2(п) разбивается на классы в связи с эквивалеицией =с. Обозначим класс эквивалентности, содержащий функцию /, через [;f]G, заметим, что 1 < IL/lcl — IС|. Ес ЛИ IIЛс I = 1, го / неизменна при всех преобразованиях g е G, т. е. функция / инвариантна относительно группы G, или G-инвариантна. Степень инвариантности / относительно преобразований группы G отражает понятие группы инерции. Группа инерции функции / в группе G есть множество преобразований из G (обозначаемое JG(J)), не меняющих /:

Понятие о классификации двоичных функций.

МиожествоУ^^ — подгруппа группы G. Если jc (f) 1=1, то говорят, что функция / имеет тривиальную группу инерции в группе G.

Теорема 6.11. Для всякой функции/е Р2 справедливо: {/]q = G / /L/c (/)l•.

А Класс fG есть множество функций (|/(х): |/(х) = f{g{x)), ge G}. Пусть g е G. Определим, сколько преобразований g' из G дают ту же функцию, что и g, т. е. f (g (x)) =f (g'(x)).

Сделаем замену переменной у = g{x). Тогда х = g~l{y) и из последнего равенства имеем.

Понятие о классификации двоичных функций.

Данное равенство выполнено «g» = g’g~{ е Jc,(D- Следовательно, g' имеет вид: g'=g" g, и всего таких преобразований jc (f)> где данное число не зависит от выбора g. ?

Заметим, что теорема 6.11 — частный случай леммы Бернсайда (теоремы 4.23).

Укажем основные пять групп подстановок Vn, используемых для классификации б.ф.

1. Группа Sn перестановок переменных состоит из п подстановок вида.

Понятие о классификации двоичных функций.

где (jpj2, — перестановка чисел (1,2,…, п).

Функция f{x) называется симметрической, если она инвариантна относительно группы Sn, т. е. Js {f) = Sn. Симметрической б.ф. является, например, сумма всех конъюнкций ранга k от п переменных, 0 < k < п.

2. Группа Zw инвертирований переменных (группа сдвигов) состоит из подстановок.

Понятие о классификации двоичных функций.

где (at, аъ ап) е V", 11"| = 2″ .

3. Группа Джевонса Qn {группа однотипности, геометрической эквивалентности) есть произведение групп Sn и Хп. Группа Q" состоит из подстановок вида.

Понятие о классификации двоичных функций.

где (jlf …Jn) — перестановка (1,…, п), (av …, а") е Vn.

Подстановка g переставляет переменные и инвертирует некоторые из них, iQj =п2″.

4. Группа GLtl(2) линейных подстановок {полная линейная группа). Подстановки задаются обратимой двоичной матрицей А порядка п: g (x) = хА,

GL"(2) = П (2″ -2');

/=0.

5. Группа AGLn{2) аффинных подстановок {полная аффинная группа) — произведение групп GLn и Она состоит из подстановок g{x) = хА ® /;,.

где А = (ciy) — обратимая двоичная матрица порядка вектор b = (bv …,.

Ь")е AGLn{2) = 2"п'(2″ -2');

1=0.

Каждая из групп Sn, Q", GLn{2) является подгруппой группы AGLn{2).

Отметим аналитические свойства эквивалентных функций. Утверждение 6.3. Пусть / =с|/, тогда:

  • 1) II/NMI;
  • 2) если G < AGLn(2), то deg/ = deg|/;
  • 3) если G е {SIV Ъп> Q,?}, то числа существенных переменных/ и |/ равны.

Л Свойство 1 следует из неизменности веса функции при любой подстановке g.

При любой аффинной подстановке g степень нелинейности функции f (g (x)) не возрастает, поэтому второе свойство следует из цепи соотношений.

Понятие о классификации двоичных функций.

Третье свойство следует из того, что любая подстановка g из G преобразует пару соседних векторов множества Vn в пару также соседних векторов. ?

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

  • 1. Сначала выбирается какой-либо способ перечисления всех функций из р2(^)> т-е— генерируется последовательность {/ц./ъ/з, •••}• Способы построения этой последовательности могут быть различными, например, перебор всех функций, начиная с функции малого веса или с функции малой степени нелинейности и т. д. Возможно, сразу не удается обеспечить, чтобы все эти функции лежали в разных классах эквивалентности, поэтому выполняем п. 2.
  • 2. Полагаем /П) = f{ и подсчитываем [/с (/(1))|. Далее берем /2 и проверяем, выполнено ли отношение /2 = GfG). Если выполнено, то переходим к /3. Если не выполнено, то полагаем /<2> = /2 и подсчитываем 1/г;(У(2)) I и т. д.

Взяв очередную функцию fi из исходной последовательности, проверяем, эквивалентна ли она одной из отобранных ранее функций /О, Если эквивалентна, то переходим к fM. Если не эквивалентна, то полагаем f (m+1) = f. и вычисляем jc (f (m+^) (способы вычисления jc (f)I для б.ф./ рассмотрены ниже), после чего проверяем равенство.

Понятие о классификации двоичных функций.

Если (6.17) выполнено, то классификация закончена.

Алгоритм классификации упрощается, если известно число т классов эквивалентности: не требуется вычислять порядки групп инерции и проверять равенство (6.17). В этом случае классификация завершена, если построена последовательность /(В,/(2), 0.

Таблица 63

Число классов эквивалентности б.ф. относительно групп.

G

s"

&,

GL"(2)

AGLn( 2).

п= 1.

п = 2.

п = 3.

п = 4.

п = 5.

37 333 284.

134 281 216.

1 228 158.

п = 6

>25- 10! б.

>29- 1017

>4 • 10″.

950 998 216.

15 768 919.

Определенное неудобство такой классификации заключается в том, что мощности классов эквивалентности могут заметно различаться (см. теорему 6.11).

В табл. 6.3 даны результаты подсчета числа классов эквивалентности для пяти указанных групп при п < 6. Из таблицы видно, что для классификации б.ф. от п > 6 переменных этот подход оказывается неэффективным. Вместе с тем подход к классификации функций, основанный на G-эквивалентности, представляет интерес для оценки числа неэквивалентных ключей некоторых криптографических схем.

С целью укрупнения классов эквивалентных функций рассматриваются и другие отношения эквивалентности. Булевы функции f (xx, …, хп) и |/(х1?…, хп) называют (G, Н)-эквивалентными, где Gи Я-группы подстановок множеств V" и Vx соответственно, если найдутся подстановки ge G и h е Я, при которых |/(х) = h (f (g (x))), обозначается /=(СЯ) |/.

В случае булевых функций |я| делит 2. Если группа Я тривиальна, то (G, Я)-эквивалентность и G-эквивалентность совпадают, если IЯ | = 2, то содержащий f (xx,…, хп) класс (С, Я)-эквивалентности состоит из всех б.ф., G-эквивалентных либо /, либо / © 1.

Для вычисления групп инерции часто используется класс эвристических методов. Они выполняются в два этапа. Сначала выбирается набор каких-либо достаточно просто вычисляемых параметров (называемых «эвристиками»), по значениям которых можно либо сделать вывод «функции не эквивалентны» или «группа инерции тривиальна» и др., либо уменьшить число вариантов, подлежащих перебору для получения окончательного ответа.

Пример 6.2. Определение | /S i(/)| для б.ф. /.

Представим/(.хх,…, х6) в виде суммы однородных многочленов: f (xx,…, х6) = 1 ® (r) (Xj ® хг3 ® х4) ® {х2 © Х Ъ © Х4Хб) © Х2Х3Х4 © ГДе fi ~ ОДНОРОДНЫЙ многочлен степени i, i = 1, 2, 3, 4: /, = х{ © х3 © х4; /2 = ххх2 © х^съ © х4х5; /3 = х^х3х4; /4 = хэXjpcsfiQ. Составим матрицу M (f) частот встречаемости переменных хх, …, х6 в однородных многочленах.

xt

*2.

*3.

*4.

х5

*6.

А

/2

/з.

/4.

Если подстановкаg Е Js (/), то применение ее к столбцам матрицы M (f) не изменит матрицу, т. е. g может переставить только одинаковые столбцы матрицы. В примере одинаковы лишь столбцы, соответствующие х3 и х4. Следовательно, подстановки из /$ (/) оставляют на месте xv х2, х5, х6 и, быть может, переставляют х3 и х4. Применяя к многочлену f (x{,…, Л'6) транспозицию (х3, х4), получаем, что изменяется /2(.г" …, rs), значит, |Д.(/)| = 1.0.

Для определения групп инерции функций в разных группах могут использоваться веса, степени нелинейности подфункций, число существенных переменных, число вхождений в члены фиксированной степени в полиноме и другие инварианты. Группу Jz (/) для б.ф. / можно найти из решения относительно а{1…, ап системы уравнений, составленной в виде равенств коэффициентов АНФ функций /(xj,…, хп) и f (xx © ах,…, х"© ап) при одинаковых мономах.

Показать весь текст
Заполнить форму текущей работой