Коефіцієнт Уолша

Матеріал з testwiki
Версія від 14:01, 15 червня 2017, створена imported>SOMBot (більше не розпізнається як ізольована)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Коефіцієнт Уолша Wf(u) булевої функції f — це величина xF2n(1)f(x)+u,x, де a,b=i=1naibi. Коефіцієнти Уолша є спектральною характеристикою булевої функції, тобто є аналогом коефіцієнтів Фур'є.

Обчислення коефіцієнтів Уолша

Коефіцієнти Уолша можуть бути обчислені за O(n2n) дій. Для цього потрібно на початку проініціалізувати масив a: a[x]=(1)f(x). Після чого для кожної координати a: a[x]=(1)f(x) і для кожної пари точок x і y, що відрізняються за i-тій координаті, потрібно замінити значення a[x] і a[y] на a[x]+a[y] і a[x]a[y] (вважаємо, що у xi-тий біт скинуто, а у y встановлений). Остаточний стан масиву a і буде коефіцієнтами Уолша.

Властивості коефіцієнтів Уолша

  1. Формула звернення: (1)f(x)=2nuF2nWf(u)(1)<u,x>.
  2. Рівність Парсеваля: uF2nWf2(u)=22n.
  3. Формула для автокореляційних коефіцієнтів (Δf(u)=xF2n(1)f(x)+f(x+u)): Δf(u)=2n+21nxF2n,2|<x,u>Wf2(x).
  4. Вираз коефіцієнтів Уолша через автокореляційні коефіцієнти: Wf2(x)=uF2n(1)<x,u>Δf(u).
  5. Формула для нелінійності булевої функції: nl(f)=2n112maxuF2n|Wf(u)|.
  6. Теорема Титсворта: uF2nWf(u)Wf(u+s)=0. Разом з рівністю Парсеваля ця тотожність є необхідною і достатньою умовою того, що набір коефіцієта Уолша задає якусь бульову функцію.
  7. Тотожність Саркара: uF2n,uwWf(u)=2n2|w|+1wt(fw), де uw означає домінування, тобто те, що всі одиничні біти u містяться серед одиничних бітів w, wt(f) означає вагу функції (кількість наборів, на яких функція дорівнює 1), fw означає функцію отриману підстановкою замість xi нуля для всіх i при яких wi=1.

Див. також

Шаблон:Math-stub