Бульові функції (реферат)
Розглянемо реалізацію бульових функцій у вигляді комбінаційних схем. Найпростішими з них є логічні елементи, відповідні бульовим функціям: кон’юнкції диз’юнкції додавання за модулем 2 а заперечення Вони позначаються й зображаються таким чином: Одна й та сама бульова функція задається, взагалі кажучи, багатьма різними формулами. Наприклад, неважко переконатися, що формули xі обидві задають функцію… Читати ще >
Бульові функції (реферат) (реферат, курсова, диплом, контрольна)
Реферат
на тему:
Бульові функції
1. Алгебри бульових виразів і бульових функцій
7.1.1. Основні поняття
Множину {0, 1} позначимо літерою B. Множину всіх можливих послідовностей з 0 і 1 — Bn. Такі послідовності за традицією будемо називати наборами або векторами довжини n. Очевидно, Bn містить 2n елементів. Значення 0 і 1 називаються протилежними одне до одного.
Означення. Всюди визначена функція з Bn у B називається n-місною функцією алгебри логіки або n-місною бульовою функцією.
Послідовність змінних (x1, x2, …, xn) із значеннями у B позначимо
. Бульова функція f (.
) задається у вигляді таблиці, або графіка зі стандартним розташуванням наборів:
.x1, x2, …, xn. | f (x1, x2, …, xn). |
0, 0, …, 0, 0. | f (0, 0, …, 0, 0). |
0, 0, …, 0, 1. | f (0, 0, …, 0, 1). |
0, 0, …, 1, 0. | f (0, 0, …, 1, 0). |
0, 0, …, 1, 1. | f (0, 0, …, 1, 1). |
… | … |
0, 1, …, 1, 1. | f (0, 1, …, 1, 1). |
1, 0, …, 0, 0. | f (1, 0, …, 0, 0). |
… | … |
1, 1, …, 1, 0. | f (1, 1, …, 1, 0). |
1, 1, …, 1, 1. | f (1, 1, …, 1, 1). |
Зауважимо, що в стандартному розташуванні набори можна розглядати як двійкові записи послідовних чисел від 0 до 2n-1. Функцію, задану зі стандартним розташуванням наборів, можна ототожнити з набором довжини 2n. Наприклад, двомісну функцію, задану таблицею.
x y. | f (x, y). |
0 0. | |
0 1. | |
1 0. | |
1 1. |
можна ототожнити з вектором (1011).
Далі іноді будемо позначати n-місну функцію f (
) як f (n)(.
), підкреслюючи кількість змінних, від яких вона залежить.
.Очевидно, що множина всіх можливих наборів довжини 2n, тобто множина n-місних бульових функцій, складається з 22n елементів. При n=0 це 2, при n=1 — 4, при n=2 — 16, при n=3 — 256 тощо.
Нуль-місними функціями є сталі 0 і 1.
Одномісні функції подано у наступній таблиці разом з виразами, якими ці функції позначаються:
x. | x. | p> | ||
Функції 0 і 1 називаються тотожними нулем і одиницею, функція x — тотожною, запереченням. Замість виразу вживається ще вираз . Ці вирази читаються як «не x» .
Подамо також деякі з 16 двомісних функцій разом із їх позначеннями:
x y. | xp> | xp> | xp> | xp> | xp> | x | y. | xp> |
0 0. | |||||||
0 1. | |||||||
1 0. | |||||||
1 1. |
Функція, позначена виразом xназивається кон’юнкцією і позначається ще як x&-y, xабо xy. Усі ці вирази читаються як «x і y» .
Функція, позначена виразом xназивається диз’юнкцією. Вираз читається як «x або y» .
Функція, позначена виразом xназивається імплікацією і позначається ще як xЦі вирази читаються як «x імплікує y» або «з x випливає y» .
Функція, позначена виразом xназивається еквівалентністю і позначається ще як x~y або xЦі вирази читаються як «x еквівалентно y», що в даному випадку збігається з «x дорівнює y» .
Функція, позначена виразом xназивається додаванням за модулем 2 або «виключним або». Зауважимо, що її значення є протилежними до значень еквівалентності.
Функція, позначена виразом x|y, називається штрихом Шеффера і має значення, протилежні значенням кон’юнкції. Її вираз читається як «не x або не y» .
Функція, позначена виразом xназивається стрілкою Пірса і має значення, протилежні значенням диз’юнкції. Її вираз читається як «не x і не y» .
Зауважимо, що інфіксні позначення наведених функцій вигляду x f y, де f — відповідний знак, склалися історично. Їх так само можна позначати й у вигляді f (x, y), наприклад, y).
З тримісних функцій наведемо лише так звану функцію голосування m (x, y, z), графік якої має такий вигляд:
x y z. | m (x, y, z). |
0 0 0. | |
0 0 1. | |
0 1 0. | |
0 1 1. | |
1 0 0. | |
1 0 1. | |
1 1 0. | |
1 1 1. |
Її назва зумовлена тим, що її значення на кожному наборі збігається з більшістю значень змінних у цьому наборі.
Множину всіх n-місних функцій позначимо P (n), а множину всіх функцій, тобто об'єднання P (n) по всіх n — P2.
Перейдемо до означення таких понять, як алгебра бульових функцій і алгебра формул.
Алгебри бульових функцій, як і всі інші алгебри, визначаються своїми носіями та сигнатурами операцій. Носіями в алгебрах бульових функцій є множини функцій. Сигнатуру складає операція суперпозиції, або підстановки.
Означення. Нехай є n-місна функція f (n)() і n функцій g1(y1,1, y1,2, …, y1, m1), g2(y2,1, y2,2, …, y2, m2), …, gn (yn, 1, yn, 2, …, yn, mn), залежні від змінних з деякої їх множини Y={y1, y2, …, yk}. Суперпозицією, або підстановкою функцій g1, g2, …, gn у функцію f (n) називається функція h (m)(y1, y2, …, ym), кожне значення якої h (…, визначається як.
f (n)(g1(,, …, 1), g2(,, …, 2), …, gn (,, …, n)).
Суперпозиція ще позначається як.
S (f (n) — g1(y1,1, y1,2, …, y1, m1), g2(y2,1, y2,2, …, y2, m2), …, gn (yn, 1, yn, 2, …, yn, mn)).
Приклади.
1. h1(x, y, z)=S (yзадається наступною таблицею:
x y z. | xp> | yp> | h1(x, y, z). |
0 0 0. | |||
0 0 1. | |||
0 1 0. | |||
0 1 1. | |||
1 0 0. | |||
1 0 1. | |||
1 1 0. | |||
1 1 1. |
2. h2(x, y)=S (yзадається таблицею:
x y. | xp> | yp> | h2(x, y). |
0 0. | |||
0 1. | |||
1 0. | |||
1 1. |
Нехай є множина бульових функцій F. Утворюючи з них та їх суперпозицій усі можливі суперпозиції, ми одержимо множину функцій, яку позначимо [F]. Отже, маємо алгебру ([F]- S), породжену множиною функцій F. Інша множина функцій F1 буде породжувати, взагалі кажучи, іншу алгебру ([F1]- S). Наприклад, алгебри (111), (0001)}) і (0), (0001)}).
Розглянемо тепер поняття алгебри формул (термів, або виразів). Нехай є множина функцій F. Кожній n-місній функції з F поставимо у взаємно однозначну відповідність символ, що її позначає (функціональний символ) f (n). Нехай X — зліченна множина змінних (точніше, їх імен).
Означення.
1. Ім'я змінної є формулою.
2. Якщо f (n) — функціональний символ, а T1, T2, …, Tn є формулами, то f (n)(T1, T2, …, Tn) є формулою.
3. Інших формул немає.
Це означення задає множину формул із функціональними символами з множини F, які одержуються за допомогою підстановок, тобто суперпозицій. Таким чином, ми маємо алгебру формул, породжену множиною функціональних символів F. Інша множина функціональних символів буде породжувати й іншу алгебру формул.
Зв’язки між алгебрами функцій і алгебрами формул встановлюють наступні два означення.
Означення. Значенням формули T на наборі значень змінних з множини X є:
1) значення змінної x, якщо T є змінною x;
2) f (n)(…, якщо T=f (n)(T1, T2, …, Tn), а формули T1, T2, …, Tn мають на цьому наборі значення відповідно …, /p>
Означення. n-місна бульова функція f (n) задається формулою T, якщо всі змінні у формулі T є змінними з множини X, і при будь-якому наборі значень (…, цих змінних x1, x2, …, xn значення формули дорівнює значенню f (n)(…,.
Звідси випливає інше означення суперпозиції функцій.
Означення. n-місна бульова функція f (n) є суперпозицією функцій f1, f2, …, fn, якщо її можна задати формулою, усі функціональні символи якої є серед символів функцій f1, f2, …, fn.
З наведених прикладів 1 і 2 видно, що функція h1(x, y, z) задається формулою y), z)), або в інфіксному записі (x Аналогічно функція h2(x, y) задається формулою y), x)), або (x Як бачимо, обидві функції задаються формулами з тими самими функціональними символами тобто є суперпозиціями цих функцій.
Наостанок наведемо узгодження, які склалися в математиці й дозволяють у формулах з функціональними символами, аписувати не всі необхідні дужки. ****.
Суттєві та несуттєві змінні
Розглянемо поняття суттєвої залежності функції від її змінних. Почнемо з прикладів: значення функції h2(x, y) з прикладу 2 на кожному з наборів збігаються зі значеннями x. Отже, зміна значення y не впливає на значення функції, тобто вона фактично не залежить від y. В той час як зміна значення x веде до зміни значення h2. Уточнимо ці міркування наступними означеннями.
Означення. Змінна xi функції f (n)(x1, x2, …, xi, …, xn) називається суттєвою, якщо існує хоча б одна пара наборів значень змінних.
(…,, 0,, …, і (…,, 1,, …,.
така, що.
f (n)(…,, 0,, …, n)(…,, 1,, …,.
Змінна xi називається несуттєвою у противному разі, тобто коли за всіх можливих пар наборів значень.
(…,, 0,, …, і (…,, 1,, …, /p>
мають місце рівності:
f (n)(…,, 0,, …, = f (n)(…,, 1,, …,.
Наприклад, неважко переконатися, що всі змінні функції h1 з прикладу 1 є суттєвими. Функція h2 має суттєву змінну x і несуттєву y. Функція двох змінних, задана як вектор (1111), не має суттєвих змінних.
Еквівалентні формули та закони
Одна й та сама бульова функція задається, взагалі кажучи, багатьма різними формулами. Наприклад, неважко переконатися, що формули xі обидві задають функцію (1101). Таким чином, можна говорити про еквівалентність цих двох формул.
Означення. Нехай **** Формули і називаються еквівалентними, якщо.
2. Бульові функції та комбінаційні схеми
І-елемент АБО-елемент лемент НЕ-елемент.
a a a.
b r b r b r a r.
r = a r = a r = a r = p>
.Розглянемо реалізацію бульових функцій у вигляді комбінаційних схем. Найпростішими з них є логічні елементи, відповідні бульовим функціям: кон’юнкції диз’юнкції додавання за модулем 2 а заперечення Вони позначаються й зображаються таким чином:
.Входи перших трьох елементів вважаються симетричними згідно законів комутативності, яким задовольняють кон’юнкція, диз’юнкція та додавання за модулем 2.
З наведених логічних елементів будуються складніші схеми, які в загальному випадку мають n входів і m виходів і реалізують набір з m функцій від n аргументів:
a1 b1.
a2 b2.
.
.
.
an bm.
.Тут bj=fj (a1, a2, …, an), j=1, 2, …, m.
Приклади.
1. Побудуємо схему з І-, АБОта НЕ-елементів, яка реалізує функцію Виразимо її за допомогою функцій набору {/p>
x xyx/p>
x.
y.
.Звідси відповідна схема має вигляд:
.2. Побудуємо схему з Іта лементів, яка реалізує функцію Виразимо її за допомогою функцій набору {}:
x x/p>
Звідси відповідна схема має вигляд:
x.
y.
.3. Побудуємо схему з І-, АБОта НЕ-елементів, яка реалізує так званий «однорозрядний напівсуматор» [****] з двома симетричними входами x, y і двома виходами: s = xd = xЗ цих формул видно, що схема має реалізувати додавання двох однорозрядних чисел із переносом. Виразимо s за допомогою функцій набору {s = xyxТоді схема має вигляд:
.x s.
d.
y.
.3. Замкнені та повні набори функцій. Критерій Поста повноти набору функцій
У підрозділі 7.1 ми побачили, що будь-яку бульову функцію можна задати як суперпозицію функцій з набору {або з набору {}.
Означення. Множина всіх функцій, що є суперпозиціями функцій деякого набору F, і лише їх, називається замиканням цього набору й позначається [F].
Таким чином, якщо P2 позначає множину всіх бульових функцій, то.
[{}] = P2.
Означення. Множина функцій F називається функціонально повною, якщо .
Отже, множини {і {} є функціонально повними.
Природним є питання про те, які властивості повинні мати функціонально повні множини функцій.
Видатний математик Еміль Пост сформулював і обгрунтував критерій повноти множини функцій у загальному випадку алгебри функцій з операцією суперпозиції. У цьому критерії, тобто необхідній і достатній умові, використовується поняття передповного класу. Розглянемо його.
Нехай F позначає множину всіх можливих функцій деякої алгебри функцій A з операцією суперпозиції.
Означення. Множина функцій S називається передповним класом алгебри A, якщо F і за будь-якої функції f з множини FS набір S є повним:
Критерій Поста. Нехай S1, S2, … — усі передповні класи алгебри функцій F. Множина функцій M є повною тоді й тільки тоді, коли для кожного передповного класу Si множина M містить fi.
Приймемо це твердження без доведення.
Пост також дослідив передповні класи алгебри бульових функцій. Їх виявилося лише 5. Це множини всіх функцій:
що зберігають сталу 0,.
що зберігають сталу 1,.
самодвоїстих, лінійних, монотонних.
Означимо вказані функції.
Означення. Функція f (n) зберігає сталу 0, якщо на нульовому наборі має значення 0: f (n)(0, 0, …, 0)=0.
Означення. Функція f (n) зберігає сталу 1, якщо на одиничному наборі має значення 1: f (n)(1, 1, …, 1)=1.
Наприклад, тотожна функція f (x)=x зберігає сталі 0 і 1, функція f (x)=не зберігає жодної.
****Двоїста до …
Означення. Функція f (n) є самодвоїстою, якщо для всіх пар протилежних наборів вона приймає на них протилежні значення:
f (n)(…, = ****f (n)(…, зберігає сталу 0, якщо на нульовому наборі має значення 0: f (n)(0, 0, …, 0)=0.
Означення. Функція f (n) зберігає сталу 1, якщо на одиничному наборі має значення 1: f (n)(1, 1, …, 1)=1.
Неважко переконатися, що множини означених функцій, позначені відповідно T0, T1, S, L, M, є замкненими класами.
Список рекомендованої літератури
1.Виленкин Н. Я. Популярная комбинаторика.-М.: Наука, 1975.
2.Гаврилов Г. П., Сапоженко А. А. Сборник задач по дискретной математике.-М.: Наука, 1973.
3.Гильберт Д., Бернайс П. Основания математики. Логические исчисления и формализация арифметики.-М.: Наука, 1982.
4.Глушков В. М., Цейтлин Г. Е., Ющенко Е. Л. Алгебра. Языки. Программирование.-К.: Наукова думка, 1988.
5.Ершов Ю. Л., Палютин Е. А., Математическая логика.-М.:Наука, 1979.
6.Карри Х. Б. Основания математической логики.-М.: Мир, 1969.
7.Клини С. К. Математическая логика.- М.: Мир, 1973.
8.Колмогоров А. Н. Фомин С.В. Элементы теории функций и функционального анализа.-М.: Наука, 1981.
9.Кузнецов О. П., Адельсон-Вельский Г. М. Дискретная математика для инженера.-М.:Энергоатомиздат, 1988.
10.Курош А. Г. Лекции по общей алгебре.-М.: Наука, 1973.
11.Лавров И. А., Максимова Л. Л. Задачи по теории множеств, математической логике и теории алгоритмов.-М.: Наука, 1984.
12.Линдон Р. Заметки по логике.- М.: Мир, 1968.
13.Мендельсон Э.
Введение
в математическую логику.-М.: Наука, 1984.
14.Новиков П. С. Элементы математической логики.-М.: Наука, 1973.
15.Ставровський А. Б., Коваль Ю. В. Методичні рекомендації та вказівки до курсу «Дискретна математика» (розділ «Множини та відповідності»).- К.:" Київський університет", 1994.
16.Трохимчук Р. М. Збірник задач з дискретної математики (розділ «Множини і відношення») для студентів факультету кібернетики.-К.:" Київський університет", 1997.
17.Трохимчук Р. М. Множини і відношення. Навчальний посібник для студентів факультету кібернетики.-К.:" Київський університет", 1993.
18.Грэхем Р., Кнут Д., Паташник О. Конкретная математика. М.: Мир, 1998.
19.Липский В. Комбинаторика для программистов. М.: Мир, 1988.