Бу́лева фу́нкція (функція алгебри логіки, логічна функція) — в дискретній математиці відображення Bn → B, де B = {0,1} — булева множина.
Bn — множина всіх можливих послідовностей з 0 та 1 довжини n.
Булева функція задається у вигляді таблиці, або графіка зі стандартним (лексикографічним) розташуванням наборів аргументів.
В стандартному розташуванні набори можна розглядати як двійкові записи цілих чисел від 0 до . Функцію, задану зі стандартним розташуванням наборів, можна ототожнити з набором довжини .
Очевидно, що множина всіх можливих наборів довжини , тобто множина n-арних булевих функцій, складається з елементів. При n=0 це 2, при n=1 — 4, при n=2 — 16, при n=3 — 256 тощо.
Нульарними булевими функціями є сталі 0 і 1.
Функції 0 і 1 називаються тотожними нулем і одиницею, функція x — тотожною, — запереченням. Замість виразу вживається ще вираз . Ці вирази читаються як «не x».
Подамо також деякі з 16 бінарних функцій разом із їх позначеннями: функція, позначена виразом , називається кон'юнкцією і позначається ще як x&y, або xy. Усі ці вирази читаються як «x і y».
Зауважимо, що інфіксні позначення наведених функцій вигляду x f y, де f — відповідний знак, склалися історично. Їх так само можна позначати й у вигляді f(x, y), наприклад, .
При роботі з булевими функціями відбувається повне абстрагування від сенсу, який мався на увазі в алгебрі висловлювань. Проте, між булевими функціями і формулами алгебри висловлювань можна встановити взаємно однозначну відповідність, якщо:
- Встановити взаємно однозначну відповідність між булевими змінними і пропозіціональними змінними.
- Встановити зв'язок між булевими функціями і логічними зв'язками.
- Залишити розстановку дужок без змін.
Основні відомості
Кожна булева функція арності n повністю визначається заданням своїх значень на своїй області визначення, тобто на всіх булевих векторах довжини n. Число таких векторів дорівнює 2 n. Оскільки на кожному векторі булева функція може приймати значення або 0, або 1, то кількість всіх n -арних булевих функцій дорівнює 2 (2 n) . Тому в цьому розділі розглядаються тільки найпростіші і найважливіші булеві функції.
Практично всі булеві функції малих арностей (0, 1, 2 і 3) склалися історично і мають конкретні імена. Якщо значення функції не залежить від однієї зі змінних (тобто для будь-яких двох булевих векторів, що відрізняються лише значенням цієї змінної, значення функції на них збігається), то ця змінна називається фіктивною.
Таблиці істинності
Булева функція задається кінцевим набором значень, що дозволяє представити її у вигляді таблиці істинності, наприклад:
x1 | x2 | … | xn-1 | xn | f(x1, x2,…,xn) |
---|---|---|---|---|---|
0 | 0 | … | 0 | 0 | 0 |
0 | 0 | … | 0 | 1 | 0 |
0 | 0 | … | 1 | 0 | 1 |
0 | 0 | … | 1 | 1 | 0 |
1 | 1 | … | 0 | 0 | 1 |
1 | 1 | … | 0 | 1 | 0 |
1 | 1 | … | 1 | 0 | 0 |
1 | 1 | … | 1 | 1 | 0 |
Нульарні функції
При n=0 кількість булевих функцій зводиться до двох 2 2 0 =21=2, перша з них тотожно дорівнює 0, а друга 1. Їх називають булевими константами — тотожний нуль і тотожна одиниця.
Таблиця значень і назв нульарних булевих функцій:
Значення | Позначення | Назва | |
---|---|---|---|
0 | F0, 0 = 0 | тотожний нуль | |
1 | F0,1 =1 | тотожна одиниця, тавтологія |
Унарні функції
При n=1 число булевих функцій дорівнює 2 21 =22=4. Визначення цих функцій міститься в наступній таблиці.
Таблиця значень і назв булевих функцій від однієї змінної:
x0=x | 1 | 0 | Позначення | Назва |
---|---|---|---|---|
0 | 0 | 0 | F1,0 =0 | тотожний нуль |
1 | 0 | 1 | F1,1=x= ¬ x = x '= NOT(x) | заперечення, логічне «НІ», «НЕ», інвертор, SWAP (обмін) |
2 | 1 | 0 | F1,2 =x | тотожна функція, логічне «ТАК», повторювач |
3 | 1 | 1 | F1,3=1 | тотожна одиниця, тавтологія |
Бінарні функції
При n=2 число булевих функцій дорівнює 222 =24=16.
Таблиця значень і назв булевих функцій від двох змінних:
x1=x | 1 | 1 | 0 | 0 | ||
---|---|---|---|---|---|---|
x0=y | 1 | 0 | 1 | 0 | Позначення | Назва |
0 | 0 | 0 | 0 | 0 | F2,0=0 | тотожний нуль, детектор 0 |
1 | 0 | 0 | 0 | 1 | F2,1=x↓y=xNORy=NOR(x,y)=xНЕ- АБОy= НЕ- АБО(x,y) | стрілка Пірса, НЕ-АБО, 2АБО-НЕ, антидиз'юнкція, функція Даггера, функція Вебба, детектор 1 |
2 | 0 | 0 | 1 | 0 | F2,2=x←y=x<y=xLTy=LT(x,y) | інверсія зворотньої імплікації, менше, детектор 2 |
3 | 0 | 0 | 1 | 1 | F2,3=x=x'=¬x=NOT1(x,y)=не1(x,y) | заперечення (негація, інверсія) першого операнда |
4 | 0 | 1 | 0 | 0 | F2,4=x→y=x>y=xGTy= GT(x,y) | інверсія прямої імплікації, більше, детектор 4 |
5 | 0 | 1 | 0 | 1 | F2,5=y=y'= ¬y=NOT2(x,y)=НЕ2(x,y) | заперечення (негація, інверсія) другого операнда |
6 | 0 | 1 | 1 | 0 | F2,6 =x⊕y=xXORy=XOR(x,y)=x><y=x<>y=xNEy= NE(x, y) | додавання по модулю 2, виключне «або», сума Жегалкіна, не дорівнює |
7 | 0 | 1 | 1 | 1 | F2,7=x|y=xNANDy=NAND(x,y)=xНЕ-Іy=НЕ-І(x,y) | штрих Шефера, НЕ-І, 2І-НЕ, антикон'юнкція, пунктир Чулкова |
8 | 1 | 0 | 0 | 0 | F2,8=x∧y=x·y=x'y=x&y=xANDy=AND(x,y)=xІy=І (x,y)=min(x,y) | кон'юнкція , 2І, мінімум, детектор 8 |
9 | 1 | 0 | 0 | 1 | F2,9=(x≡y)=x~y=x↔y=xEQVy=EQV(x,y) | еквівалентність, рівність |
10 | 1 | 0 | 1 | 0 | F2,10=YES2(x,y)=да2(x,y)=y | другий операнд |
11 | 1 | 0 | 1 | 1 | F2,11 = x→y=x⊃y=x≤y=xLEy=LE(x,y) | пряма (матеріальна) імплікація (від першого аргументу до другого), менше або дорівнює |
12 | 1 | 1 | 0 | 0 | F2,12=YES1(x,y)=ТАК1(x,y)=x | перший операнд |
13 | 1 | 1 | 0 | 1 | F2,13=x←y=x⊂y=x≥y=xGEy=GE(x,y) | зворотня імплікація (від другого аргументу до першого), більше або дорівнює |
14 | 1 | 1 | 1 | 0 | F2,14 =x∨y =x+y =xORy =OR(x,y) =xАБОy=АБО(x,y)=maxx,y) | диз'юнкція, 2АБО, максимум |
15 | 1 | 1 | 1 | 1 | F2,15 = 1 | тотожна одиниця, тавтологія |
При двох аргументах префіксний, інфіксний і постфіксний записи, за економічністю, майже однакові.
Тернарні функції
При n=3 число булевих функцій дорівнює 2(23)=28=256 (дужки потрібні, так як запис не має властивість асоціативності і (22)3=43). Деякі з них визначені в наступній таблиці:
Таблиця значень і назв деяких булевих функцій від трьох змінних, що мають власну назву:
x0 =z | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | ||
---|---|---|---|---|---|---|---|---|---|---|
x 1=y | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | ||
x2=x | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | Позначення | Назви |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | F3,1 = x↓y↓z = ↓(x,y,z) = Webb2(x,y,z) = NOR(x,y,z) | стрілка Пірса, НЕ-АБО, 2АБО-НЕ, антидиз'юнкція, функція Даггера, функція Вебба, детектор 1 |
23 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | F3,23==≥2(x,y,z) | Перемикач по більшості з інверсією, 3ППБ-НЕ, мажоритарний клапан з інверсією |
126 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | F3,126=(x≠y≠z)=[≠(x, y,z)]=NE(x, y,z) | Нерівність |
127 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | F3,127=x|y|z=|(x, y,z)=NAND(x, y,z) | 3І-НЕ, штрих Шефера |
128 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | F3,128 =x&y&z=&(x, y,z)=(x AND y AND z)=AND(x, y, z)=(x і y і z)=І(x, y, z)=min(x, y, z) | 3І, мінімум |
129 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | F3,129=(x=y=z)=[=(x, y,z)]=EQV(x, y, z) | Рівність |
150 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | F3,150=x⊕y⊕z=x⊕2y⊕2z=⊕2(x, y,z) | Тернарне додавання по модулю 2 |
216 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | F3,216=f1 | Розряд позики при тернарному відніманні |
232 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | F3,232=f2=[>=2(x, y, z)]=≥2(x, y, z)=(x і y) АБО (y і z) АБО (z і x) | Розряд переносу при тернарному додаванні, перемикач по більшості, 3ППБ, мажоритарний клапан |
254 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | F3,254=(x+y+z)=+(x,y,z)=(x OR y OR z)=OR(x, y, z)=(x АБО y АБО z)=АБО(x, y, z)=max(x, y, z) | АБО, максимум |
При трьох і більше аргументах префіксний (і постфіксний) запис економічніший ніж інфіксний запис.
Повні системи булевих функцій
Суперпозиція і замкнені класи функцій
Результат обчислення булевої функції може бути використаний як один з аргументів іншої функції. Результат такої операції суперпозиції можна розглядати як нову булеву функцію зі своєю таблицею істинності. Наприклад, функції (суперпозиція кон'юнкції, диз'юнкції і двох заперечень) відповідатиме наступна таблиця:
0 | 0 | 0 | 1 |
0 | 0 | 1 | 1 |
0 | 1 | 0 | 1 |
0 | 1 | 1 | 1 |
1 | 0 | 0 | 0 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 |
1 | 1 | 1 | 0 |
Кажуть, що множина функцій замкнена відносно операції суперпозиції, якщо будь-яка суперпозиція функцій з даної множини теж входить в цю ж множину. Замкнені множини функцій називають також замкненими класами.
Як найпростіші приклади замкнених класів булевих функцій можна назвати множину , що складається з однієї тотожної функції, або множину , всі функції якої тотожно рівні нулю незалежно від своїх аргументів. Замкнені також множини функцій і множина всіх унарних функцій. А ось об'єднання замкнених класів може таким вже не бути. Наприклад, об'єднавши класи і , ми за допомогою суперпозиції зможемо отримати константу 1, яка у вихідних класах була відсутня.
Зрозуміло, множина всіх можливих булевих функцій теж є замкненою.
Тотожність і двоїстість
Дві булеві функції тотожні одна одній, якщо на будь-яких однакових наборах аргументів вони приймають рівні значення. Тотожність функцій f і g можна записати, наприклад, так:
Переглянувши таблиці істинності булевих функцій, легко отримати такі тотожності:
А перевірка таблиць, побудованих для деяких суперпозицій, дасть такі результати:
(закони де Моргана) |
(дистрибутивність кон'юнкції і диз'юнкції)
Функція називається двоїстою до функції , якщо . Легко показати, що в цій рівності f і g можна поміняти місцями, тобто функції f і g двоїсті одна одній. З найпростіших функцій двоїсті одна одній константи 0 і 1, а із законів де Моргана випливає двоїстість кон'юнкції і диз'юнкції. Тотожна функція, як і функція заперечення, двоїста сама до себе.
Якщо в булевій тотожності замінити кожну функцію на двоїсту їй, знову вийде вірна тотожність. У наведених вище формулах легко знайти двоїсті одна одній пари.
Повнота системи, критерій Поста
Система булевих функцій називається повною, якщо можна побудувати їх суперпозицію, тотожну будь-якій заздалегідь заданій функції. Кажуть ще, що замикання даної системи збігається з множиною .
Американський математик Еміль Пост ввів у розгляд такі замкнені класи булевих функцій:
- Функції, що зберігають константу і ;
- Самодвоїсті функції ;
- Монотонні функції ;
- Лінійні функції .
Ним було доведено, що будь-який замкнутий клас булевих функцій, який не збігається з , цілком утримується в одному з цих п'яти так званих передповних класів, але при цьому жоден з п'яти не міститься цілком в об'єднанні чотирьох інших. Таким чином, критерій Поста для повноти системи зводиться до з'ясування, чи не міститься вся ця система цілком в одному з передповних класів. Якщо для кожного класу в системі знайдеться функція, що не входить до нього, то така система буде повною, і за допомогою вхідних у неї функцій можна буде отримати будь-яку іншу булеву функцію. Пост довів, що множина замкнених класів булевих функцій — зліченна множина.
Зауважимо, що існують функції, що не входять ні в один з класів Посту. Будь така функція сама по собі утворює повну систему. Як приклади можна назвати штрих Шефера або стрілку Пірса.
Подання булевих функцій
Теорема Поста відкриває шлях до подання булевих функцій синтаксичним способом, який у ряді випадків виявляється набагато зручнішим, ніж таблиці істинності. Відправною точкою тут служить знаходження деякої повної системи функцій . Тоді кожна булева функція може бути представлена деяким термом в сигнатурі , який в даному випадку називають також формулою. Щодо вибраної системи функцій корисно знати відповіді на такі питання:
- Як побудувати по даній функції формулу, що її представляє?
- Як перевірити, що дві різні формули еквівалентні, тобто задають одну і ту ж функцію?
- Зокрема: чи існує спосіб приведення довільної формули до еквівалентної їй канонічної форми такий, що дві формули еквівалентні тоді і тільки тоді, коли їх канонічні форми збігаються?
- Як з даної функції побудувати формулу, що її представляє, з тими чи іншими заданими властивостями (наприклад, найменшого розміру), і чи можливо це?
Позитивні відповіді на ці та інші питання суттєво збільшують прикладне значення обраної системи функцій.
Диз'юнктивна нормальна форма (ДНФ)
Простою кон'юнкцією або кон'юнктом називається кон'юнкція деякого кінцевого набору змінних або їх заперечень, причому кожна змінна зустрічається не більше одного разу. Диз'юнктивною нормальною формою або ДНФ називається диз'юнкція простих кон'юнкцій. Елементарна кон'юнкція:
- Правильна, якщо кожна змінна входить у неї не більше одного разу (включаючи заперечення) ;
- Повна, якщо кожна змінна (або її заперечення) входить до неї рівно 1 раз;
- Монотонна, якщо вона не містить заперечень змінних.
Наприклад — є ДНФ.
Досконалою диз'юнктивною нормальною формою або ДДНФ щодо деякого заданого кінцевого набору змінних називається така ДНФ, у якої в кожну кон'юнкцію входять всі змінні даного набору, причому в одному і тому ж порядку. Наприклад: .
Легко переконатися, що кожній булевій функції відповідає деяка ДНФ, а функції, відмінної від тотожного нуля — навіть ДДНФ. Для цього достатньо в таблиці істинності цієї функції знайти всі булеві вектори, на яких її значення дорівнює 1, і для кожного такого вектора побудувати кон'юнкцію , де . Диз'юнкція цих кон'юнкцій є ДДНФ вихідної функції, оскільки на всіх булевих векторах її значення збігаються зі значеннями вихідної функції. Наприклад, для імплікації результатом є , що можна спростити до .
Кон'юнктивна нормальна форма (КНФ)
Кон'юнктивна нормальна форма (КНФ) визначається подвійно до ДНФ. Простою диз'юнкцією або диз'юнктом називається диз'юнкція однієї або декількох змінних або їх заперечень, причому кожна змінна входить у неї не більше одного разу. КНФ — це кон'юнкція простих диз'юнкцій.
Досконалою кон'юнктивною нормальною формою (ДКНФ), щодо деякого заданого кінцевого набору змінних, називається така КНФ, у якої в кожну диз'юнкцію входять всі змінні даного набору, причому в одному і тому ж порядку. Оскільки (Д)КНФ і (Д)ДНФ взаємнодвоїсті, властивості (Д)КНФ повторюють всі властивості (Д)ДНФ «з точністю до навпаки».
КНФ може бути перетворена на еквівалентну їй ДНФ шляхом розкриття дужок за правилом:
яке виражає дистрибутивність кон'юнкції щодо диз'юнкції. Після цього необхідно в кожній кон'юнкції видалити повторювані змінні або їх заперечення, а також викинути з диз'юнкції всі кон'юнкції, в яких зустрічається змінна разом зі своїм запереченням. При цьому результатом не обов'язково буде СДНФ, навіть якщо вихідна КНФ була СКНФ. Так само можна завжди перейти від ДНФ до КНФ. Для цього слід використовувати правило,
яке виражає дистрибутивність диз'юнкції щодо кон'юнкції. Результат потрібно перетворити описаним вище способом, замінивши слово «кон'юнкція» на «диз'юнкція» і навпаки.
Алгебраїчна нормальна форма (АНФ або поліном Жегалкіна)
Алгебраїчна нормальна форма(загальноприйнята назва в зарубіжній літературі) або поліном Жегалкіна (назва, що використовується у вітчизняній літературі) — це форма подання логічної функції у вигляді поліному з коефіцієнтами виду 0 і 1, в якому як добуток використовується операція кон'юнкції ("І", AND), а як додавання — додавання по модулю 2 (що виключає «АБО», XOR).
Для отримання полінома Жегалкіна треба виконати такі дії:
- Отримати ДДНФ функції
- Усі «АБО» замінити на «Виключне АБО»
- У всіх термах замінити елементи з запереченням на конструкцію: («елемент» «виключне АБО» 1)
- Розкрити дужки за правилами алгебри Жегалкіна і привести попарно однакові терми
Класифікація булевих функцій
- За кількістю n вхідних операндів, від яких залежить значення на виході функції, розрізняють нульарні (n = 0), унарні (n = 1), бінарні (n = 2), тернарні (n = 3) булеві функції та функції від більшого числа операндів.
- За кількістю одиниць і нулів в таблиці істинності відрізняють вузький клас [en] (також званих врівноваженими або рівновірогідними, оскільки при рівноймовірно випадкових значеннях на вході або при переборі всіх комбінацій за таблицею істинності ймовірність отримання на виході значення '1 ' дорівнює 1/2) від більш широкого класу незбалансованих булевих функцій (так само званих неврівноваженими, оскільки ймовірність отримання на виході значення '1 ' відмінна від 1/2). Збалансовані булеві функції в основному використовуються в криптографії.
- За залежністю значення функції від перестановки її вхідних бітів розрізняють симетричні булеві функції (значення яких залежить тільки від кількості одиниць на вході) і несиметричні булеві функції (значення яких так само залежить від перестановки її вхідних біт).
- За значенням функції на протилежних один одному наборах значень аргументів відрізняють самодвоїсті функції (значення яких інвертується при інвертуванні значення всіх входів) від інших булевих функцій, що не володіють такою властивістю. Нижня частина таблиці істинності для самодвоїстих функцій є дзеркальним відображенням інвертованої верхньої частини (якщо розташувати вхідні комбінації в таблиці істинності в природному порядку).
- За алгебраїчним ступенем нелінійності відрізняють лінійні булеві функції (АНФ яких зводиться до лінійної суми за модулем 2 вхідних значень) і нелінійні булеві функції (АНФ яких містить хоча б одну нелінійну операцію кон'юнкції вхідних значень). Прикладами лінійних функцій є: додавання по модулю 2 (що виключає «АБО», XOR), еквівалентність, а також всі булеві функції, АНФ яких містить лише лінійні операції додавання за модулем 2 без кон'юнкцій. Прикладами нелінійних функцій є: кон'юнкція («І», AND), штрих Шефера («НІ-І», NAND), стрілка Пірса (« НІ-АБО», NOR), а також всі булеві функції, АНФ яких містить хоча б одну нелінійну операцію кон'юнкції.
Див. також
Література
- Гаврилов Г. П.,Сапоженко А. А. Збірник завдань з дискретної математики. — М. : Наука, 1969.
- Марченков С. С. Замкнуті класи булевих функцій. — М. : Фізматліт, 2000.
- Яблонський С. В. Введення в дискретну математику. — М. : Наука, 1986.
- Ігошин В. І. Математична логіка і теорія алгоритмів. — 2- е вид., Стереотип. — М., 2008. — 448 с. — .
- Самофалов К. Г., Романкевич А. М., Валуйський В. Н., Канівський Ю. С., Пиневич М. М. Прикладна теорія цифрових автоматів. — Київ : Вища Школа, 1987. — С. 183-189.
- Бикова С. В., Буркатовський Ю. Б. , Булеві функції, навчально — методичний комплекс, Томськ, 2006
Посилання
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
A displaystyle A B displaystyle B AND A B displaystyle A land B NAND A B displaystyle A uparrow B OR A B displaystyle A lor B NOR A B displaystyle A downarrow B XOR A B displaystyle A oplus B EQ A B displaystyle A leftrightarrow B IMPLY A B displaystyle A to B A B displaystyle A nrightarrow B A B displaystyle A leftarrow B A B displaystyle A nleftarrow B 000101011010010110101001100110100110111010011010 Bu leva fu nkciya funkciya algebri logiki logichna funkciya v diskretnij matematici vidobrazhennya Bn B de B 0 1 buleva mnozhina Bn mnozhina vsih mozhlivih poslidovnostej z 0 ta 1 dovzhini n Buleva funkciya zadayetsya u viglyadi tablici abo grafika zi standartnim leksikografichnim roztashuvannyam naboriv argumentiv V standartnomu roztashuvanni nabori mozhna rozglyadati yak dvijkovi zapisi cilih chisel vid 0 do 2 n 1 displaystyle 2 n 1 Funkciyu zadanu zi standartnim roztashuvannyam naboriv mozhna ototozhniti z naborom dovzhini 2 n displaystyle 2 n Ochevidno sho mnozhina vsih mozhlivih naboriv dovzhini 2 n displaystyle 2 n tobto mnozhina n arnih bulevih funkcij skladayetsya z 2 2 n displaystyle 2 2 n elementiv Pri n 0 ce 2 pri n 1 4 pri n 2 16 pri n 3 256 tosho Nularnimi bulevimi funkciyami ye stali 0 i 1 Funkciyi 0 i 1 nazivayutsya totozhnimi nulem i odiniceyu funkciya x totozhnoyu x displaystyle overline x zaperechennyam Zamist virazu x displaystyle overline x vzhivayetsya she viraz x displaystyle neg x Ci virazi chitayutsya yak ne x Podamo takozh deyaki z 16 binarnih funkcij razom iz yih poznachennyami funkciya poznachena virazom x y displaystyle x wedge y nazivayetsya kon yunkciyeyu i poznachayetsya she yak x amp y x y displaystyle x cdot y abo xy Usi ci virazi chitayutsya yak x i y Zauvazhimo sho infiksni poznachennya navedenih funkcij viglyadu x f y de f vidpovidnij znak sklalisya istorichno Yih tak samo mozhna poznachati j u viglyadi f x y napriklad x y displaystyle vee x y Pri roboti z bulevimi funkciyami vidbuvayetsya povne abstraguvannya vid sensu yakij mavsya na uvazi v algebri vislovlyuvan Prote mizh bulevimi funkciyami i formulami algebri vislovlyuvan mozhna vstanoviti vzayemno odnoznachnu vidpovidnist yaksho Vstanoviti vzayemno odnoznachnu vidpovidnist mizh bulevimi zminnimi i propozicionalnimi zminnimi Vstanoviti zv yazok mizh bulevimi funkciyami i logichnimi zv yazkami Zalishiti rozstanovku duzhok bez zmin Osnovni vidomostiKozhna buleva funkciya arnosti n povnistyu viznachayetsya zadannyam svoyih znachen na svoyij oblasti viznachennya tobto na vsih bulevih vektorah dovzhini n Chislo takih vektoriv dorivnyuye 2 n Oskilki na kozhnomu vektori buleva funkciya mozhe prijmati znachennya abo 0 abo 1 to kilkist vsih n arnih bulevih funkcij dorivnyuye 2 2 n Tomu v comu rozdili rozglyadayutsya tilki najprostishi i najvazhlivishi bulevi funkciyi Praktichno vsi bulevi funkciyi malih arnostej 0 1 2 i 3 sklalisya istorichno i mayut konkretni imena Yaksho znachennya funkciyi ne zalezhit vid odniyeyi zi zminnih tobto dlya bud yakih dvoh bulevih vektoriv sho vidriznyayutsya lishe znachennyam ciyeyi zminnoyi znachennya funkciyi na nih zbigayetsya to cya zminna nazivayetsya fiktivnoyu Tablici istinnosti Dokladnishe Tablicya istinnosti Buleva funkciya zadayetsya kincevim naborom znachen sho dozvolyaye predstaviti yiyi u viglyadi tablici istinnosti napriklad x1 x2 xn 1 xn f x1 x2 xn 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 1 1 0 displaystyle vdots displaystyle vdots displaystyle vdots displaystyle vdots displaystyle vdots displaystyle vdots 1 1 0 0 1 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 Nularni funkciyi Pri n 0 kilkist bulevih funkcij zvoditsya do dvoh 2 20 21 2 persha z nih totozhno dorivnyuye 0 a druga 1 Yih nazivayut bulevimi konstantami totozhnij nul i totozhna odinicya Tablicya znachen i nazv nularnih bulevih funkcij Znachennya Poznachennya Nazva 0 F0 0 0 totozhnij nul 1 F0 1 1 totozhna odinicya tavtologiya Unarni funkciyi Pri n 1 chislo bulevih funkcij dorivnyuye 2 21 22 4 Viznachennya cih funkcij mistitsya v nastupnij tablici Tablicya znachen i nazv bulevih funkcij vid odniyeyi zminnoyi x0 x 1 0 Poznachennya Nazva 0 0 0 F1 0 0 totozhnij nul 1 0 1 F1 1 x x x NOT x zaperechennya logichne NI NE invertor SWAP obmin 2 1 0 F1 2 x totozhna funkciya logichne TAK povtoryuvach 3 1 1 F1 3 1 totozhna odinicya tavtologiya Binarni funkciyi Pri n 2 chislo bulevih funkcij dorivnyuye 222 24 16 Tablicya znachen i nazv bulevih funkcij vid dvoh zminnih x1 x 1 1 0 0 x0 y 1 0 1 0 Poznachennya Nazva 0 0 0 0 0 F2 0 0 totozhnij nul detektor 0 1 0 0 0 1 F2 1 x y xNORy NOR x y xNE ABOy NE ABO x y strilka Pirsa NE ABO 2ABO NE antidiz yunkciya funkciya Daggera funkciya Vebba detektor 1 2 0 0 1 0 F2 2 x y x lt y xLTy LT x y inversiya zvorotnoyi implikaciyi menshe detektor 2 3 0 0 1 1 F2 3 x x x NOT1 x y ne1 x y zaperechennya negaciya inversiya pershogo operanda 4 0 1 0 0 F2 4 x y x gt y xGTy GT x y inversiya pryamoyi implikaciyi bilshe detektor 4 5 0 1 0 1 F2 5 y y y NOT2 x y NE2 x y zaperechennya negaciya inversiya drugogo operanda 6 0 1 1 0 F2 6 x y xXORy XOR x y x gt lt y x lt gt y xNEy NE x y dodavannya po modulyu 2 viklyuchne abo suma Zhegalkina ne dorivnyuye 7 0 1 1 1 F2 7 x y xNANDy NAND x y xNE Iy NE I x y shtrih Shefera NE I 2I NE antikon yunkciya punktir Chulkova 8 1 0 0 0 F2 8 x y x y x y x amp y xANDy AND x y xIy I x y min x y kon yunkciya 2I minimum detektor 8 9 1 0 0 1 F2 9 x y x y x y xEQVy EQV x y ekvivalentnist rivnist 10 1 0 1 0 F2 10 YES2 x y da2 x y y drugij operand 11 1 0 1 1 F2 11 x y x y x y xLEy LE x y pryama materialna implikaciya vid pershogo argumentu do drugogo menshe abo dorivnyuye 12 1 1 0 0 F2 12 YES1 x y TAK1 x y x pershij operand 13 1 1 0 1 F2 13 x y x y x y xGEy GE x y zvorotnya implikaciya vid drugogo argumentu do pershogo bilshe abo dorivnyuye 14 1 1 1 0 F2 14 x y x y xORy OR x y xABOy ABO x y maxx y diz yunkciya 2ABO maksimum 15 1 1 1 1 F2 15 1 totozhna odinicya tavtologiya Pri dvoh argumentah prefiksnij infiksnij i postfiksnij zapisi za ekonomichnistyu majzhe odnakovi Ternarni funkciyi Pri n 3 chislo bulevih funkcij dorivnyuye 2 23 28 256 duzhki potribni tak yak zapis a n m displaystyle a n m ne maye vlastivist asociativnosti i 22 3 43 Deyaki z nih viznacheni v nastupnij tablici Tablicya znachen i nazv deyakih bulevih funkcij vid troh zminnih sho mayut vlasnu nazvu x0 z 1 0 1 0 1 0 1 0 x 1 y 1 1 0 0 1 1 0 0 x2 x 1 1 1 1 0 0 0 0 Poznachennya Nazvi 1 0 0 0 0 0 0 0 1 F3 1 x y z x y z Webb2 x y z NOR x y z strilka Pirsa NE ABO 2ABO NE antidiz yunkciya funkciya Daggera funkciya Vebba detektor 1 23 0 0 0 1 0 1 1 1 F3 23 gt 2 x y z displaystyle neg gt 2 x y z 2 x y z Peremikach po bilshosti z inversiyeyu 3PPB NE mazhoritarnij klapan z inversiyeyu 126 0 1 1 1 1 1 1 0 F3 126 x y z x y z NE x y z Nerivnist 127 0 1 1 1 1 1 1 1 F3 127 x y z x y z NAND x y z 3I NE shtrih Shefera 128 1 0 0 0 0 0 0 0 F3 128 x amp y amp z amp x y z x AND y AND z AND x y z x i y i z I x y z min x y z 3I minimum 129 1 0 0 0 0 0 0 1 F3 129 x y z x y z EQV x y z Rivnist 150 1 0 0 1 0 1 1 0 F3 150 x y z x 2y 2z 2 x y z Ternarne dodavannya po modulyu 2 216 1 1 0 1 1 0 0 0 F3 216 f1 Rozryad poziki pri ternarnomu vidnimanni 232 1 1 1 0 1 0 0 0 F3 232 f2 gt 2 x y z 2 x y z x i y ABO y i z ABO z i x Rozryad perenosu pri ternarnomu dodavanni peremikach po bilshosti 3PPB mazhoritarnij klapan 254 1 1 1 1 1 1 1 0 F3 254 x y z x y z x OR y OR z OR x y z x ABO y ABO z ABO x y z max x y z ABO maksimum Pri troh i bilshe argumentah prefiksnij i postfiksnij zapis ekonomichnishij nizh infiksnij zapis Povni sistemi bulevih funkcijDokladnishe Zamknenij klas funkcij algebri logiki Superpoziciya i zamkneni klasi funkcij Rezultat obchislennya bulevoyi funkciyi mozhe buti vikoristanij yak odin z argumentiv inshoyi funkciyi Rezultat takoyi operaciyi superpoziciyi mozhna rozglyadati yak novu bulevu funkciyu zi svoyeyu tabliceyu istinnosti Napriklad funkciyi f x y z x y z displaystyle f x y z overline x overline y lor z superpoziciya kon yunkciyi diz yunkciyi i dvoh zaperechen vidpovidatime nastupna tablicya x 2 x displaystyle x 2 x x 1 y displaystyle x 1 y x 0 z displaystyle x 0 z f x y z displaystyle f x y z 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 0 Kazhut sho mnozhina funkcij zamknena vidnosno operaciyi superpoziciyi yaksho bud yaka superpoziciya funkcij z danoyi mnozhini tezh vhodit v cyu zh mnozhinu Zamkneni mnozhini funkcij nazivayut takozh zamknenimi klasami Yak najprostishi prikladi zamknenih klasiv bulevih funkcij mozhna nazvati mnozhinu x displaystyle x sho skladayetsya z odniyeyi totozhnoyi funkciyi abo mnozhinu 0 displaystyle 0 vsi funkciyi yakoyi totozhno rivni nulyu nezalezhno vid svoyih argumentiv Zamkneni takozh mnozhini funkcij x x displaystyle x overline x i mnozhina vsih unarnih funkcij A os ob yednannya zamknenih klasiv mozhe takim vzhe ne buti Napriklad ob yednavshi klasi 0 displaystyle 0 i x x displaystyle x overline x mi za dopomogoyu superpoziciyi 0 displaystyle overline 0 zmozhemo otrimati konstantu 1 yaka u vihidnih klasah bula vidsutnya Zrozumilo mnozhina P 2 displaystyle P 2 vsih mozhlivih bulevih funkcij tezh ye zamknenoyu Totozhnist i dvoyistist Dvi bulevi funkciyi totozhni odna odnij yaksho na bud yakih odnakovih naborah argumentiv voni prijmayut rivni znachennya Totozhnist funkcij f i g mozhna zapisati napriklad tak f x 1 x 2 x n g x 1 x 2 x n displaystyle f x 1 x 2 dots x n g x 1 x 2 dots x n Pereglyanuvshi tablici istinnosti bulevih funkcij legko otrimati taki totozhnosti 0 1 displaystyle overline 0 1 1 0 displaystyle overline 1 0 x x displaystyle overline overline x x x y y x displaystyle xy yx x y y x displaystyle x lor y y lor x 0 x 0 displaystyle 0x 0 1 x x displaystyle 1x x 0 x x displaystyle 0 lor x x 1 x 1 displaystyle 1 lor x 1 x x x x x displaystyle xx x lor x x A perevirka tablic pobudovanih dlya deyakih superpozicij dast taki rezultati x x 0 displaystyle x overline x 0 x x 1 displaystyle x lor overline x 1 x y x y displaystyle overline x cdot y overline x lor overline y x y x y displaystyle overline x cdot overline y overline x lor y zakoni de Morgana x y z x y x z displaystyle x y lor z xy lor xz x y z x y x z displaystyle x lor yz x lor y x lor z distributivnist kon yunkciyi i diz yunkciyi Funkciya g x 1 x 2 x n displaystyle g x 1 x 2 dots x n nazivayetsya dvoyistoyu do funkciyi f x 1 x 2 x n displaystyle f x 1 x 2 dots x n yaksho f x 1 x 2 x n g x 1 x 2 x n displaystyle f overline x 1 overline x 2 dots overline x n overline g x 1 x 2 dots x n Legko pokazati sho v cij rivnosti f i g mozhna pominyati miscyami tobto funkciyi f i g dvoyisti odna odnij Z najprostishih funkcij dvoyisti odna odnij konstanti 0 i 1 a iz zakoniv de Morgana viplivaye dvoyistist kon yunkciyi i diz yunkciyi Totozhna funkciya yak i funkciya zaperechennya dvoyista sama do sebe Yaksho v bulevij totozhnosti zaminiti kozhnu funkciyu na dvoyistu yij znovu vijde virna totozhnist U navedenih vishe formulah legko znajti dvoyisti odna odnij pari Povnota sistemi kriterij Posta Dokladnishe Kriterij Posta Sistema bulevih funkcij nazivayetsya povnoyu yaksho mozhna pobuduvati yih superpoziciyu totozhnu bud yakij zazdalegid zadanij funkciyi Kazhut she sho zamikannya danoyi sistemi zbigayetsya z mnozhinoyu P 2 displaystyle P 2 Amerikanskij matematik Emil Post vviv u rozglyad taki zamkneni klasi bulevih funkcij Funkciyi sho zberigayut konstantu P 0 displaystyle P 0 i P 1 displaystyle P 1 Samodvoyisti funkciyi S displaystyle S Monotonni funkciyi M displaystyle M Linijni funkciyi L displaystyle L Nim bulo dovedeno sho bud yakij zamknutij klas bulevih funkcij yakij ne zbigayetsya z P 2 displaystyle P 2 cilkom utrimuyetsya v odnomu z cih p yati tak zvanih peredpovnih klasiv ale pri comu zhoden z p yati ne mistitsya cilkom v ob yednanni chotiroh inshih Takim chinom kriterij Posta dlya povnoti sistemi zvoditsya do z yasuvannya chi ne mistitsya vsya cya sistema cilkom v odnomu z peredpovnih klasiv Yaksho dlya kozhnogo klasu v sistemi znajdetsya funkciya sho ne vhodit do nogo to taka sistema bude povnoyu i za dopomogoyu vhidnih u neyi funkcij mozhna bude otrimati bud yaku inshu bulevu funkciyu Post doviv sho mnozhina zamknenih klasiv bulevih funkcij zlichenna mnozhina Zauvazhimo sho isnuyut funkciyi sho ne vhodyat ni v odin z klasiv Postu Bud taka funkciya sama po sobi utvoryuye povnu sistemu Yak prikladi mozhna nazvati shtrih Shefera abo strilku Pirsa Podannya bulevih funkcijTeorema Posta vidkrivaye shlyah do podannya bulevih funkcij sintaksichnim sposobom yakij u ryadi vipadkiv viyavlyayetsya nabagato zruchnishim nizh tablici istinnosti Vidpravnoyu tochkoyu tut sluzhit znahodzhennya deyakoyi povnoyi sistemi funkcij S f 1 f n displaystyle Sigma f 1 ldots f n Todi kozhna buleva funkciya mozhe buti predstavlena deyakim termom v signaturi S displaystyle Sigma yakij v danomu vipadku nazivayut takozh formuloyu Shodo vibranoyi sistemi funkcij korisno znati vidpovidi na taki pitannya Yak pobuduvati po danij funkciyi formulu sho yiyi predstavlyaye Yak pereviriti sho dvi rizni formuli ekvivalentni tobto zadayut odnu i tu zh funkciyu Zokrema chi isnuye sposib privedennya dovilnoyi formuli do ekvivalentnoyi yij kanonichnoyi formi takij sho dvi formuli ekvivalentni todi i tilki todi koli yih kanonichni formi zbigayutsya Yak z danoyi funkciyi pobuduvati formulu sho yiyi predstavlyaye z timi chi inshimi zadanimi vlastivostyami napriklad najmenshogo rozmiru i chi mozhlivo ce Pozitivni vidpovidi na ci ta inshi pitannya suttyevo zbilshuyut prikladne znachennya obranoyi sistemi funkcij Diz yunktivna normalna forma DNF Dokladnishe Diz yunktivna normalna forma Prostoyu kon yunkciyeyu abo kon yunktom nazivayetsya kon yunkciya deyakogo kincevogo naboru zminnih abo yih zaperechen prichomu kozhna zminna zustrichayetsya ne bilshe odnogo razu Diz yunktivnoyu normalnoyu formoyu abo DNF nazivayetsya diz yunkciya prostih kon yunkcij Elementarna kon yunkciya Pravilna yaksho kozhna zminna vhodit u neyi ne bilshe odnogo razu vklyuchayuchi zaperechennya Povna yaksho kozhna zminna abo yiyi zaperechennya vhodit do neyi rivno 1 raz Monotonna yaksho vona ne mistit zaperechen zminnih Napriklad a b c b c a displaystyle a overline b c lor bc lor overline a ye DNF Doskonaloyu diz yunktivnoyu normalnoyu formoyu abo DDNF shodo deyakogo zadanogo kincevogo naboru zminnih nazivayetsya taka DNF u yakoyi v kozhnu kon yunkciyu vhodyat vsi zminni danogo naboru prichomu v odnomu i tomu zh poryadku Napriklad a b c a b c a b c displaystyle a overline b c lor abc lor overline a b overline c Legko perekonatisya sho kozhnij bulevij funkciyi vidpovidaye deyaka DNF a funkciyi vidminnoyi vid totozhnogo nulya navit DDNF Dlya cogo dostatno v tablici istinnosti ciyeyi funkciyi znajti vsi bulevi vektori na yakih yiyi znachennya dorivnyuye 1 i dlya kozhnogo takogo vektora b b 1 b 2 b n displaystyle b b 1 b 2 ldots b n pobuduvati kon yunkciyu x 1 b 1 x 2 b 2 x n b n displaystyle x 1 b 1 x 2 b 2 ldots x n b n de x i 1 x i displaystyle x i 1 x i x i 0 x i displaystyle x i 0 overline x i Diz yunkciya cih kon yunkcij ye DDNF vihidnoyi funkciyi oskilki na vsih bulevih vektorah yiyi znachennya zbigayutsya zi znachennyami vihidnoyi funkciyi Napriklad dlya implikaciyi x y displaystyle x to y rezultatom ye x y x y x y displaystyle overline x y lor overline x overline y lor xy sho mozhna sprostiti do x y displaystyle overline x lor y Kon yunktivna normalna forma KNF Dokladnishe Kon yunktivna normalna forma Kon yunktivna normalna forma KNF viznachayetsya podvijno do DNF Prostoyu diz yunkciyeyu abo diz yunktom nazivayetsya diz yunkciya odniyeyi abo dekilkoh zminnih abo yih zaperechen prichomu kozhna zminna vhodit u neyi ne bilshe odnogo razu KNF ce kon yunkciya prostih diz yunkcij Doskonaloyu kon yunktivnoyu normalnoyu formoyu DKNF shodo deyakogo zadanogo kincevogo naboru zminnih nazivayetsya taka KNF u yakoyi v kozhnu diz yunkciyu vhodyat vsi zminni danogo naboru prichomu v odnomu i tomu zh poryadku Oskilki D KNF i D DNF vzayemnodvoyisti vlastivosti D KNF povtoryuyut vsi vlastivosti D DNF z tochnistyu do navpaki KNF mozhe buti peretvorena na ekvivalentnu yij DNF shlyahom rozkrittya duzhok za pravilom a b c a b a c displaystyle a b lor c to ab lor ac yake virazhaye distributivnist kon yunkciyi shodo diz yunkciyi Pislya cogo neobhidno v kozhnij kon yunkciyi vidaliti povtoryuvani zminni abo yih zaperechennya a takozh vikinuti z diz yunkciyi vsi kon yunkciyi v yakih zustrichayetsya zminna razom zi svoyim zaperechennyam Pri comu rezultatom ne obov yazkovo bude SDNF navit yaksho vihidna KNF bula SKNF Tak samo mozhna zavzhdi perejti vid DNF do KNF Dlya cogo slid vikoristovuvati pravilo a b c a b a c displaystyle a lor bc to a lor b a lor c yake virazhaye distributivnist diz yunkciyi shodo kon yunkciyi Rezultat potribno peretvoriti opisanim vishe sposobom zaminivshi slovo kon yunkciya na diz yunkciya i navpaki Algebrayichna normalna forma ANF abo polinom Zhegalkina Dokladnishe Polinom Zhegalkina Algebrayichna normalna forma zagalnoprijnyata nazva v zarubizhnij literaturi abo polinom Zhegalkina nazva sho vikoristovuyetsya u vitchiznyanij literaturi ce forma podannya logichnoyi funkciyi u viglyadi polinomu z koeficiyentami vidu 0 i 1 v yakomu yak dobutok vikoristovuyetsya operaciya kon yunkciyi I AND a yak dodavannya dodavannya po modulyu 2 sho viklyuchaye ABO XOR Dlya otrimannya polinoma Zhegalkina treba vikonati taki diyi Otrimati DDNF funkciyi Usi ABO zaminiti na Viklyuchne ABO U vsih termah zaminiti elementi z zaperechennyam na konstrukciyu element viklyuchne ABO 1 Rozkriti duzhki za pravilami algebri Zhegalkina i privesti poparno odnakovi termiKlasifikaciya bulevih funkcijZa kilkistyu n vhidnih operandiv vid yakih zalezhit znachennya na vihodi funkciyi rozriznyayut nularni n 0 unarni n 1 binarni n 2 ternarni n 3 bulevi funkciyi ta funkciyi vid bilshogo chisla operandiv Za kilkistyu odinic i nuliv v tablici istinnosti vidriznyayut vuzkij klas en takozh zvanih vrivnovazhenimi abo rivnovirogidnimi oskilki pri rivnojmovirno vipadkovih znachennyah na vhodi abo pri perebori vsih kombinacij za tabliceyu istinnosti jmovirnist otrimannya na vihodi znachennya 1 dorivnyuye 1 2 vid bilsh shirokogo klasu nezbalansovanih bulevih funkcij tak samo zvanih nevrivnovazhenimi oskilki jmovirnist otrimannya na vihodi znachennya 1 vidminna vid 1 2 Zbalansovani bulevi funkciyi v osnovnomu vikoristovuyutsya v kriptografiyi Za zalezhnistyu znachennya funkciyi vid perestanovki yiyi vhidnih bitiv rozriznyayut simetrichni bulevi funkciyi znachennya yakih zalezhit tilki vid kilkosti odinic na vhodi i nesimetrichni bulevi funkciyi znachennya yakih tak samo zalezhit vid perestanovki yiyi vhidnih bit Za znachennyam funkciyi na protilezhnih odin odnomu naborah znachen argumentiv vidriznyayut samodvoyisti funkciyi znachennya yakih invertuyetsya pri invertuvanni znachennya vsih vhodiv vid inshih bulevih funkcij sho ne volodiyut takoyu vlastivistyu Nizhnya chastina tablici istinnosti dlya samodvoyistih funkcij ye dzerkalnim vidobrazhennyam invertovanoyi verhnoyi chastini yaksho roztashuvati vhidni kombinaciyi v tablici istinnosti v prirodnomu poryadku Za algebrayichnim stupenem nelinijnosti vidriznyayut linijni bulevi funkciyi ANF yakih zvoditsya do linijnoyi sumi za modulem 2 vhidnih znachen i nelinijni bulevi funkciyi ANF yakih mistit hocha b odnu nelinijnu operaciyu kon yunkciyi vhidnih znachen Prikladami linijnih funkcij ye dodavannya po modulyu 2 sho viklyuchaye ABO XOR ekvivalentnist a takozh vsi bulevi funkciyi ANF yakih mistit lishe linijni operaciyi dodavannya za modulem 2 bez kon yunkcij Prikladami nelinijnih funkcij ye kon yunkciya I AND shtrih Shefera NI I NAND strilka Pirsa NI ABO NOR a takozh vsi bulevi funkciyi ANF yakih mistit hocha b odnu nelinijnu operaciyu kon yunkciyi Div takozhAlgebra Zhegalkina Kriterij Posta Bent funkciya Buleva algebra Bitovi operaciyi Kombinacijna logika Minimizaciya bulevih funkcij Trijkova logika Logichni elementi Normalna forma formuli u logici predikativLiteraturaGavrilov G P Sapozhenko A A Zbirnik zavdan z diskretnoyi matematiki M Nauka 1969 Marchenkov S S Zamknuti klasi bulevih funkcij M Fizmatlit 2000 Yablonskij S V Vvedennya v diskretnu matematiku M Nauka 1986 Igoshin V I Matematichna logika i teoriya algoritmiv 2 e vid Stereotip M 2008 448 s ISBN 978 5 7695 4593 1 Samofalov K G Romankevich A M Valujskij V N Kanivskij Yu S Pinevich M M Prikladna teoriya cifrovih avtomativ Kiyiv Visha Shkola 1987 S 183 189 Bikova S V Burkatovskij Yu B Bulevi funkciyi navchalno metodichnij kompleks Tomsk 2006PosilannyaIgoshin 2008 Samofalov 1987