- •Алгоритмы и сложность вычислений. Введение
- •49. Определение нормальных алгоритмов Маркова.
- •§ 1. Нормальные алгоритмы
- •50. Определение Машины Тьюринга.
- •§ 2. Машины тьюринга
- •51. Определение частично рекурсивных функций. Основные функции.
- •1. Матрицы Адамара и их свойства.
- •2. Матрицы Силъвестра-Адамара их свойства.
- •3. Преобразования Уолша-Адамара булевых функций.
- •4. Преобразование Фурье булевой функции.
- •5. Схема Грина быстрых преобразований Уолша и Фурье.
- •6. Критерий нелинейности булевых функций.
- •7. Расстояние до линейных структур.
- •8. Порядок нелинейности.
- •9. Совершенно нелинейные функции.
- •10. Расстояние до аффинных функций и корреляция.
- •11. Булевы функции от нечетного числа аргументов.
7. Расстояние до линейных структур.
Линейная
структура булевой функции
определяется существованием такого
вектора
,
что выражение f(x+a)+f(x) принимает для всех
одно и то же значение, равное 0 или 1.
Обозначим через LS(n) множество булевых
функций, имеющих линейные структуры.
Заметим, что LS(n)содержит в себе множество
A(n) всех аффинных функций. Для булевой
функции f определимрасстояние до
линейной структуры как расстояние f
до множества LS(n):
.
Расстояние до линейной структуры может быть одним из критериев нелинейности булевой функции. Это вытекает, в частности, из следствия из теоремы 1.
Следствие
2.Для группы J(симметрий расстояния до линейной
структурыимеет
место включение
.
Применим
теорему 1 и покажем, что
.Пусть
и пусть
есть линейная структура f, т.е. для всех
выполнено равенство f(x+a)=f(x)=C, где
постоянная
.
Тогда для
равенство
![]()
выполняется
для всех
.
Это означает, что-1(a)
есть линейная структураf.
Отсюда следует, что
.
8. Порядок нелинейности.
Для
булевой функции
обозначим через O(f)— степень члена в
алгебраической нормальной форме,
имеющего наивысший порядок. Величину
O(f) будем называтьпорядком нелинейности
булевой функции.Порядок нелинейности,
определяемый функцией
удовлетворяет требованиям критерия
нелинейности в силу следующей теоремы.
Теорема 2.Группа симметрий
функции 0 совпадает с аффинной группой.
AGL(n).
ДОКАЗАТЕЛЬСТВО содержит два пункта.
а) Покажем, что
.
Пусть
и выбрана произвольная функция
.
Вычислим алгебраическую нормальную
форму для
,
используя ее связь с
.
B
некоторые нелинейные члены
могут исчезать, а некоторые появляться
как новые. Однако, члены некоторой
степени
в
не могут в
порождать члены степени выше, чем
.
Отсюда следует, что
.
Эту формулу
применим к случаю, когда действие
определяется
.
Имеем
.
Из приведенных формул следует, что
.
Следовательно,
.
б) Покажем теперь,
что
.
Пусть
.
Тогда при действии
на
имеем нелинейную компоненту
и из
следует, что
.
Стало быть
,
в то время как 0(f)=1. Отсюда вытекает, что
.
Из теоремы 2 следует,
что другие критерии нелинейности для
случая, когда расстояние
до функций с порядком нелинейности, не
превосходящим k , также остаются
инвариантными при действии элементов
из AGL(n).
9. Совершенно нелинейные функции.
Булева функция
называетсясовершенно нелинейной
функцией,если для каждого ненулевого
вектора
значения функции f(x+a) и f(x) совпадают
точно для половины векторов
.
Обозначим через
множество всех совершенно нелинейных
функций и покажем, что для этих функций
достигается оптимум расстояния до
линейных структур.
Для произвольной
функции
расстояние до линейных структур можно
вычислить следующим образом. Пусть
- ненулевой вектор. Тогда пространство
можно разбить на
неупорядоченных пар вида (x, x+a). Обозначим
через
число элементов множества
пар вида (x, x+a), для которых f(x)=f(x+a), а через
- число таких пар множества
,
что
.
Любая булева
функция может быть получена из функции
f путем изменения соответствующего
множества f – значений. Таким способом
функцию f можно преобразовать в функцию
с линейной структурой a путем изменения
f - значений либо для x либо для x+а для
пары (x, x+a)
,
или путем изменения f - значений, либо
x, либо x+a для пары (x, x+a)
.
Таким образом,
значений можно изменить так, чтобы
получить функциюgс
линейной структурой такой, что
для всех x, а
значений изменить так, что получить
функциюgс линейной
структурой такой, что
для всех x.Для того чтобы получить любую другую
функцию с такой же линейной структурой
необходимо изменить по крайней мере
значений. Следовательно,
есть расстояние функции fдо ближайшей функции с линейной
структурой
.Заметим, чтоn зависит
от вектора
,
то есть
.
Отсюда
расстояние до линейных структур
определяется формулой
.
Так как
,
то из этой формулы следует, что
для всех
.
Максимум расстояния достигается для
совершенно нелинейной функции и в этом
случае
для
или, что эквивалентно,
.
Таким образом доказана следующая
Теорема 3. Класс
совершенно нелинейных функций совпадает
с классом функций, имеющих максимальное
расстояние до линейных структур равное
2n-2.
Если
- совершенно нелинейная функция и
,
то из определения совершенной нелинейности
следует, что для любого ненулевого
вектора
имеет место равенство
![]()
Рассмотрим
преобразование Уолша-Адамара для
совершенно нелинейной функции
.
По определению имеем:
.
Из этого равенства следует, что
.
Пользуясь этими
равенствами, с учетом соотношения
![]()
находим, что
.
( * )
Теорема
4.Булева функция
является совершенно нелинейной тогда
и только тогда, когда матрица
,
строки и столбцы которой помечены
векторами пространства
и элементы имеют вид

является матрицей Адамара.
Из равенства
(*)следует, что
.
Кроме того, скалярное
произведение
-й
и
-й
строк удовлетворяет равенствам
![]()
в силу соотношения ортогональности для преобразований Уолша-Адамара. Так как ортогональность строк, выраженная предыдущим равенством, является характеристическим свойством для матриц Адамара, то достаточность теоремы 4доказана.
Обратно, если
,то
т.е. функция
является совершенно нелинейной.
Ортогональность строк матрицы Адамара
сводится к соотношению ортогональности
для преобразований Уолша-Адамара.
Функция
,для которой преобразование Уолша-Адамара
удовлетворяет условию (*),называетсябент-функцией.Таким
образом, справедлива следующая
Теорема 5.Класс совершенно нелинейных функций совпадает с классом бент-функций.
Из равенства (*)следует, что бент-функции могут существовать только для четныхn.Из свойств совершенно нелинейных функций следует, что порядок нелинейности бент-функции не превосходитn/2.
