Кіріспе

Функция тек екі мәннің біреуін қайтарады. Математикада Буль функциясы – аргументтері мен нәтижесі екі элементтік жиыннан (әдетте {true, false}, {0,1} немесе {1,1}) мәндерді қабылдайтын функция. Басқа атаулары – әсіресе ескі компьютерлік әдебиеттерде қолданылатын коммутациялық функция және логикада қолданылатын шындық функциясы (немесе логикалық функция). Буль функциялары Буль алгебрасы және коммутациялық теорияның пәні болып табылады. Буль функциясы түрінде келеді, мұнда – Буль домені деп аталады, ал – функцияның арлық саны деп аталатын теріс емес бүтін сан. Егер болса, функция A жиымының тұрақты элементі болады. Бірнеше шығыстары бар Буль функциясы, симметриялық криптографиядағы S-қорапшасы болып табылатын векторлық немесе векторлық Буль функциясы болып табылады. Тұрақты: аргументтеріне қарамастан, әрқашан дұрыс немесе әрқашан жалған. Монотонды: аргумент мәндерінің кез келген комбинациясы үшін аргументті жалғаннан шынға өзгерту тек шығысты жалғаннан шынға өзгертуі мүмкін, бірақ шыннан жалғанға емес. Егер функция осы айнымалыдағы өзгерістерге қатысты монотонды болса, онда ол белгілі бір айнымалыдағы унитатты функция деп аталады. Сызықтық: әр айнымалы үшін айнымалының мәнін өзгерту шындық мәнінде әрқашан өзгеріс тудырады немесе ешқашан тудырмайды (паритет функциясы). Симметриялы: мәні аргументтерінің ретіне тәуелді емес. Бір рет оқылатын: әр айнымалының бір ғана мысалы бар конъюнкция, дизъюнкция және жорамал арқылы өрнектеледі. Теңгерімді: егер оның шындық кестесінде нөлдер мен бірліктер саны тең болса. Функцияның Хамминг салмағы – шындық кестедегі бірліктердің саны. Иісті: оның туындыларының барлығы теңгерімді (автокорреляция спектрі нөлге тең). m-ретті корреляцияға иммунды: егер шығыс ең көп дегенде m аргументтердің барлық (сызықтық) комбинацияларымен корреляцияланбаса. Қашқыш: егер функцияны бағалау үшін барлық аргументтердің мәні әрқашан қажет болса. Буль функциясы Шеффер функциясы болып табылады, егер оны кез келген Буль функциясын құру үшін (композиция арқылы) пайдалануға болады (функционалдық толықтыққа қараңыз). Функцияның алгебралық дәрежесі – оның алгебралық нормалық түріндегі ең жоғары дәрежелі мономиалдың дәрежесі. Тізбек күрделігі Буль функцияларын оларды есептей алатын тізбектердің өлшемі немесе тереңдігі бойынша жіктеуге тырысады.

Табылған функциялар

Бульдік функция Бульдің кеңейту теоремасын оң және теріс Шаннон кофакторларын (Шаннон кеңейтуі) пайдаланып жіктеуге болады, олар аргументтердің біреуін (нөлге немесе бірге) бекіту нәтижесінде туындайтын (k-1) ary функциялары. Кірістер жиынтығына (сызықтық подпространствоға) сызықтық шектеу қою арқылы алынатын жалпы (k-ary) функциялар субфункциялар деп аталады. Функцияның бір аргументіне қатысты Бульдік туындысы – бұл функцияның шығысы таңдалған кіріс айнымалысына сезімтал болғанда ғана дұрыс болатын (k-1) ary функциясы; ол екі сәйкес кофактордың XOR-ы болып табылады. Туынды мен кофактор Рид-Мюллер кеңейтуінде қолданылады. Бұл ұғымды dx бағытындағы k-ary туындысы ретінде кеңейтуге болады, ол функцияның x және x + dx нүктелеріндегі айырмасы (XOR) арқылы есептеледі. Сәйкес Бульдік функциялар өздерінің Мёбиус түрлендіруіне тең, яғни олардың шындық кестесіндегі (минимальды мүшелердегі) мәндері алгебралық (мономиалдық) коэффициенттерімен сәйкес келеді. k аргументі бар 2^2^(k-1) сәйкес функция бар.

Криптографиялық талдау

Бульдік функцияның Уолш түрлендіруі – нақты сандық функциялардың Фурье түрлендіруі арқылы гармонияларға жіктелуімен салмақтас, сызықтық функцияларға жіктелу коэффициенттерін беретін k-арлық бүтін сандық функция. Оның квадраты – қуат спектрі немесе Уолш спектрі. Жеке бит вектордың Уолш коэффициенті – сол бит пен Бульдік функцияның нәтижесі арасындағы корреляцияның өлшемі. Функцияның сызықтығы деп максималды (абсолюттік мәні бойынша) Уолш коэффициенті белгілі. Автокорреляция коэффициенттері дифференциалдық криптоанализде маңызды рөл атқарады. Бульдік функцияның Уолш коэффициенттері мен оның автокорреляция коэффициенттері Винер-Хинчин теоремасының баламасымен байланысты, онда автокорреляция және қуат спектрі Уолш түрлендіруінің жұбы екені айтылады. Компоненттердің Уолш түрлендірулерінің жиынтығы – Сызықтық жуықтау кестесі (LAT) немесе корреляциялық матрица; ол кіріс және шығыс биттерінің әртүрлі сызықтық комбинациялары арасындағы корреляцияны сипаттайды. Компоненттердің автокорреляция коэффициенттерінің жиынтығы – автокорреляция кестесі, ал кіріс және шығыс биттерінің айырмашылықтары арасындағы корреляцияны тізімдейтін, кеңінен қолданылатын Айырмашылықтар тарату кестесіне (DDT) (сонымен қатар қараңыз: S-қорап).

Гиперкубтың бірлігі

Кез келген Буль функциясы нақты доменге , шындық кестесі мәндерін индикатор полиномиалдармен көбейту арқылы құрастырылған көп сызықты полиномиал арқылы бірегей түрде кеңейтілуі (интерполяциялануы) мүмкін: мысалы, екілік XOR функциясының кеңейтілуі тең. Басқа мысалдар – жосықтау, ЖӘНЕ және ИЛИ. Барлық операндар тәуелсіз болған кезде (ортақ айнымалылары жоқ болса), функцияның полиномиялық түрін Буль формуласындағы операторлардың полиномиалдарын қайта-қайта қолдану арқылы табуға болады. Коэффициенттер 2 модулі бойынша есептелгенде алгебралық қалыпты форма (Жегалькин полиномы) алынады. Полиномиалдың коэффициенттерінің тікелей формулаларын тиісті туындыны есептеу арқылы алуға болады: бұл біттік векторлардың ішінара реттелген жиынының Мёбиус инверсиясы ретінде жалпыланады: мұнда біттік вектордың салмағын білдіреді. 2 модулі бойынша алынғанда, бұл Бульдік Мёбиус түрлендіруі, алгебралық қалыпты форманың коэффициенттерін береді: Екі жағдайда да сома m-мен жабылатын барлық біттік векторлар бойынша алынады, яғни a-ның "бірлік" біттері m-ның "бірлік" біттерінің ішкі жиынын құрайды. Домен n өлшемді гиперкубпен шектелгенде, полиномиал Бульдік функция f-тің жеке ықтималдықтары бар n тәуелсіз кездейсоқ (Бернулли) айнымалыларына қолданғанда оң нәтиже ықтималдығын береді. Бұл фактінің ерекше жағдайы – паритет функциялары үшін жинақталу леммасы. Буль функциясының полиномиялық түрін оның тұманды логикаға табиғи кеңейтілуі ретінде де пайдалануға болады.

Симметриялық гиперкубта

Көбінесе Бульдік домен , жалған ("0") 1-ге, ал дұрыс ("1") 1-ге сәйкес келеді (Бул функцияларының талдауын қараңыз). Одан кейін сәйкес келетін көпмүше мына түрде беріледі: Симметриялық Бульдік доменді пайдалану талдаудың кейбір аспектілерін жеңілдетеді, себебі жоққа шығару 1-ге көбейтуге сәйкес келеді, ал сызықтық функциялар мономиалдар болып табылады (XOR – көбейту). Осы көпмүшелік форма функцияның Уолш түрлендіруіне (осы контексте Фурье түрлендіруі деп те аталады) сәйкес келеді (жоғарыда қараңыз). Бұл көпмүше стандартты Бульдік домендегідей статистикалық интерпретацияға ие, бірақ қазір ол күтілетін мәндермен жұмыс істейді (мысалы, жинақтау леммасын қараңыз).

Қолданбалар

Буль функциялары күрделілік теориясы мәселелерінде және цифрлық компьютерлерге арналған процессорларды жобалауда маңызды рөл атқарады, олар логикалық қақпаларды қолдана отырып электрондық тізбектерде іске асырылады. Буль функцияларының қасиеттері криптографияда, әсіресе симметриялық кілт алгоритмдерін жобалауда өте маңызды (қолдану қойындысын қараңыз). Ынтымақтастық ойын теориясында монотонды Буль функциялары қарапайым ойындар (дауыс беру ойындары) деп аталады; бұл түсінік әлеуметтік таңдау теориясының мәселелерін шешуге қолданылады.