Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Класи булевих функцій






 

Вводяться в розгляд п’ять класів булевих функцій:

1) клас функцій, що зберігають константу нуль ();

2) клас функцій, що зберігають константу одиниця ();

3) клас самодвоїстих функцій ;

4) клас монотонних функцій ();

5) клас лінійних функцій .

Клас функцій, що зберігають нуль (К0), містить всі функції, які приймають нульове значення при всіх нульових значеннях змінних.

Визначення 13.1. Якщо булева функція на нульовому наборі змінної дорівнює нулю, то функція зберігає константу нуль:

. (13.1)

Клас функцій, що зберігають одиницю (К1), включає всі функції, які на наборі з одиниць приймають значення одиниця.

Визначення 13.2. Якщо булева функція на одиничному наборі (наборі з одиниць) дорівнює одиниці, то говорять, що функція зберігає одиницю:

. (13.2)

Перш ніж розглядати клас лінійних функцій (КЛ), необхідно ввести наступні допоміжні поняття.

Визначення 13.3. Формули, що містять знаки , називаються поліномами.

Визначення 13.4. Вираз вигляду , де та , є або 1, або змінна, або кон’юнкція різних змінних, називається поліномом Жегалкіна.

Теорема Жегалкіна. Будь-яка булева функція може бути зображена поліномом вигляду

(13.3)

де – коефіцієнти, що приймають значення 0 або 1: ; тобто будь-який поліном може бути перетворений у поліном Жегалкіна.

Визначення 13.5. Булева функція називається лінійною, якщо вона може бути зображена поліномом першого ступеня, тобто виразом вигляду

, . (13.4)

Кількість лінійних функцій дорівнює , де − число змінних, від яких залежить булева функція.

Приклад 13.1. Одержати всі лінійні функції від двох змінних.

Розв’язок. Кількість лінійних функцій від двох змінних визначається як . Лінійна булева функція від двох змінних може бути зображена у вигляді полінома першого ступеня й, відповідно до формули (13.4), виражається таким способом:

, . (13.5)

Коефіцієнти приймають значення з множини й утворюють двійкові набори, при підстановці яких у вираз (13.5) випливає вся сукупність лінійних функцій (табл. 13.1):

 

Таблиця 13.1 – Клас лінійних функцій від двох змінних

 

 

Якщо довільну булеву функцію від двох змінних шляхом еквівалентних перетворень можна зобразити в одній із вказаних восьми форм, то така функція є лінійною, тобто належить класу .

До класу монотонних функцій (КМ) відносяться такі, для яких виконана умова монотонності: на кожній парі порівнянних двійкових наборів значення функції мають бути порівнянні в тому ж порядку.

Множина {0, 1} упорядковується за принципом порівнянності: 0< 1 (0 порівняний з одиницею). Нехай , – двійкові набори, .

Визначення 13.6. Набір передує набору ( або ), якщо виконується покоординатна порівнянність: , причому хоча б для одного значення має місце строга нерівність .

Визначення 13.7. Функція називається монотонною, якщо для будь-яких наборів і таких, що , виконується нерівність:

, (13.6)

тобто на кожній парі порівнянних двійкових наборів значення функції мають бути порівнянні.

Приклад 13.2. Обґрунтувати, чи належить функція до класу монотонних.

Розв’язок.Слід скласти таблицю істинності булевої функції (табл. 13.2).

 

Таблиця 13.2 – Значення функції

 

 

Для дослідження функції на монотонність зображується гіперкуб
(рис. 13.1), у якому всі двійкові набори впорядковані за принципом порівнянності. Така структура є стандартною для будь-якої функції від трьох змінних.

 

 

 
 

 

Рисунок 13.1 – Гіперкуб для функції від трьох змінних

 

У вершини гіперкуба додаються значення функції на відповідних двійкових наборах (рис.13.2).

 
 

 

Рисунок 13.2 – Розподіл значень функції в гіперкубі

 

Аналіз розподілу значень функції в гіперкубі показує, що функція не є монотонною, оскільки існують нулі, що покривають одиниці, а саме: , але .

Таким чином, функція не належить до класу монотонних: .

Для класу самодвоїстих функцій (КС) слід розглянути поняття двоїстої функції.

Визначення 13.8. Булева функція називається двоїстою для функції , якщо таблицю істинності для можна одержати з таблиці для , замінивши в значеннях аргументу й функції 0 на 1 і 1 на 0, тобто має місце рівність

. (13.7)

Приклад 13.3. Кон’юнкція й диз’юнкція двоїсті один одному, інверсія двоїста сама собі:

1) , ;

2) Інвертуємо таблицю істинності кон’юнкції, замінивши на протилежні значення аргументів і самої функції (табл. 13.3).

Таблиця 13.3 – Подвійність кон’юнкції та диз’юнкції за таблицями істинності

 

Визначення 3.14. Функція, що співпадає зі своєю двоїстою, називається самодвоїстою:

. (13.8)

Самодвоїста функція на протилежних двійкових наборах і , приймає протилежні значення.

Приклад 13.4. Показати, що функція самодвоїста.

Розв’язок. Слід перетворити таблицю істинності функції (табл. 13.4).

 

Таблиця 13.4 – Самодвоїстість функції

 

Видно, що в результаті перетворень функція не змінилася, отже, вона самодвоїста.

Принцип двоїстості. Якщо у формулі алгебри логіки замінити знаки всіх логічних функцій на знаки двоїстих функцій, то вийде двоїста формула , що реалізує функцію, двоїсту тієї, яка реалізується формулою . При цьому якщо формули рівні , то правильна рівність двоїстих формул , що називається двоїстою попередній.

Приклад 13.5. Можна показати, що наступні рівності двоїсті один одному:

, , (13.9)

, , (13.10)

, , (13.11)

, . (13.12)

КНФ і ДНФ двоїсті один одному.

Властивості булевих функцій від двох змінних щодо приналежності їх до класів наведені в таблиці 13.5.

Таблиця 13.5 – Приналежність булевих функцій від двох змінних класам

 

Функція Класи
       
        +     + +
        + +   +  
        +        
        + + + + +
        +        
        + +     +
        +       +
        + +   +  
       
          +     +
                +
          +      
            +   +
          +      
       
          +   +  

 

13.2 Повнота функцій алгебри логіки

Визначення 13.15. Система функцій алгебри логіки називається функціонально повною, якщо кожна ФАЛ з може бути реалізована формулою, що містить тільки символи функцій із цієї системи.

Приклад 13.6. Функціонально повними є системи:

, , .

Теорема Поста-Яблонського (критерій функціональної повноти). Для того щоб ФАЛ була повною необхідно й достатньо, щоб вона містила хоча б одну функцію, яка

1) не зберігає нуль – ;

2) не зберігає одиницю – ;

3) нелінійну – ;

4) немонотонну – ;

5) несамодвоїсту – .

Визначення 13.16. Повна система ФАЛ, за допомогою якої кожна ФАЛ може бути зображена суперпозицією вихідних функцій, називається базисом.

До базису відносяться системи функцій:

базис 1: І, АБО, НІ ;

базис 2 (кон’юнктивний базис Буля): І, НІ ;

базис 3 (диз’юнктивний базис Буля): АБО, НІ ;

базис 4 (базис Шефера): функція Шефера ;

базис 5 (базис Веба): функція Веба ;

базис 6 (базис Жегалкіна):

Базис 1 надлишковий, базиси 4 і 5 мінімальні (видалення хоча б однієї функції перетворює систему ФАЛ у неповну).

Таким чином, всі названі вище класи функцій мають таку властивість: кожна ФАЛ, отримана за допомогою операції суперпозиції й підстановки з функцій одного класу, обов'язково належатиме цьому ж класу.

Поліноміальна форма орієнтована на технології тестування цифрових систем з використанням активізації або визначення булевих похідних.

Класи булевих функцій є теоретичною основою трансформування опису цифрової системи в різні аналітичні форми.

Функціональна повнота визначає інваріантність зображення цифрового пристрою за допомогою різних наборів бінарних і унарної операцій.

13.3 Контрольні запитання

 

1. Які існують класи булевих функцій?

2. Як визначається клас функцій, що зберігають нуль?

3. Які функції зберігають константу одиниця?

4. Що таке двоїста функція?

5. Як визначається властивість самодвоїстості?

6. Які двійкові набори є протилежними?

7. Що таке поліном?

8. Що таке поліном Жегалкіна?

9. Як формулюється теорема Жегалкіна?

10. Як визначається поліном першого ступеня?

11. Що таке лінійна функція?

12. Як формулюється властивість монотонності булевої функції?

13. Як визначається клас монотонних функцій?

14. Як виконується перевірка самодвоїстості функції за допомогою таблиці істинності?

15. Як одержати функцію, двоїсту стосовно даної?

16. Скільки існує лінійних функцій від змінних?

17. Як визначається функціональна повнота?

18. Яка система функцій називається базисною?

19. Яка теорема визначає критерій функціональної повноти?

20. Як формулюється критерій функціональної повноти?

21. Як виконується перевірка монотонності функції за допомогою гіперкуба?

14 БУЛЕВІ ПОХІДНІ

 

Математичний апарат булевою диференціального числення використовується в структурно-аналітичних методах синтезу тестів, що перевіряють, для комбінаційних пристроїв. Булеві похідні дозволяють аналітично виразити умови активізації шляхів у схемі.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.