Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Дискретна математика

.pdf
Скачиваний:
150
Добавлен:
17.03.2016
Размер:
3.51 Mб
Скачать

По-перше, якщо для деяких підмножин R1, R2 R виконується умова R1 R2, то

 

R1 f

 

n

R2 f

 

n

R

 

R

 

 

 

 

i

i

 

i

i

і

1

F

2

F .

 

 

По-друге, множина R1

замкнена щодо операції f ni

тоді і тільки тоді, коли для будь-яких r1,…, r

ni

 

 

 

 

 

 

 

 

 

 

i

 

R1справедливо f ni (r1,…, r

ni

) R1. Для замкненої в алгебрі множини ця умова повинна виконуватись для

 

 

 

i

 

 

 

 

 

 

 

 

кожної операції f ini F.

Якщо R1 замкнута в алгебрі R, F , то тоді систему R1, F також можна розглядати як алгебру. Визначення. Назвемо алгебру R1, F підалгеброю алгебри R, F .

Приклади підалгебр:

1.Система {i, i+1,…},+ , де i 2, - підалгебра алгебри N, + ;

2.Система {p1, p2,…}, , де {pi} - множина усіх чисел, кратних p (p - просте число).

Визначення. Власну підалгебру Rm, F , де Rm R, назвемо максимальною підалгеброю алгебри R, F , якщо не існує власної підалгебри R , F , для якої виконувалося б Rm R .

Приклади:

1.В алгебрі (N, +) максимальною підалгеброю є підалгебра: ({2, 3,...}, +);

2.В алгебрі Z, +, максимальною підалгеброю є підалгебра: {…,-6,-4,-2,0,2,4,6,…}+, . Розглянемо деякі важливі властивості підалгебр.

Теорема 17. Нехай { Ri, F } - сукупність підалгебр алгебри R, F , де Ri, i I - замкнена множина в алгебрі R, F . Якщо перетин {Ri | i I} - не порожній, то він також утворює підалгебру даної алгебри.

Доведення. Залишається показати, що перетин є замкненою множиною в R, F . Позначимо перетин

Rп = R i . i I

Для будь-яких r1,…, rni Rп по будь-якій операції f ini F через замкненість Ri, i I у R, F

справедливо f ini (r1,…, rni ) Ri, i I... Тоді f ini (r1,…, rni ) Rп для будь-якої операції f ini F на підставі

властивостей перетину. Таким чином, Rп – замкнена множина в системі R, F , тобто Rп, F - підалгебра алгебри R, F . Теорема доведена.

Можна навести наступний простий логічний довід на користь інтуїтивного уявлення про справедливість теореми: нехай R1 і R2 - замкнені підмножини носія R в алгебрі R, F ; r1, r2 R1 R2. Тоді r1

f i2 r2 для кожної f i2 F також повинно належати R1 R2, тому що інакше операції з F будуть визначені

неоднозначно. Те ж справедливо для операції будь-якої місності f ini F.

Цікаво відзначити, що використовуючи подібні міркування, можна зробити висновок про те, що для довільних замкнених R1 і R2 не виконується умова, що R1 R2 також завжди замкнена. Тут варто взяти пару

r3 R1 і r4 R2, а це, можливо приведе до r3 f i2 r4 R1 R2. І дійсно, легко навести приклад: алгебра Z, +,

; підалгебри {…,-6,-4,-2,0,2,4,6,…}+, і {1,2,3,…},+, як R1, F і R2, F . Очевидно, множина R1 R2 =

{…,-6,-4,-2,0,1,2,3,4,5,6,…} не замкнена, тому що результат операції + над аргументами -4 R1 і 3 R2, тобто елемент –4 + 3 = -1, не належить R1 R2.

У той же час легко перевірити, що множина R1 R2 = {2,4,6,…} замкнена по операціях + і . Аналогічно, на прикладі можна показати, що якщо R1, F - підалгебра алгебри R, F , то R , F , де

R = R\ R1, - не завжди підалгебра алгебри R, F . Дійсно, нехай R1, F - це вже розглянута вище підалгебра{…,-6,-4,-2,0,2,4,6,…}+, алгебри Z, +, . Тоді R = {…,-5,-3,-1,1,3,5,… - підмножина множини Z, але вона не є замкненою, що легко перевірити, звернувши увагу на пари (-1) + 1, 1+1, (-1) + (-1) і т.д.

Теорем 18. Підалгебра Rm, F тоді і тільки тоді максимальна щодо алгебри R, F , коли приєднання будь-якого елемента r R\Rm приводить до виконання співвідношення [Rm {r}]F = R.

Доведення. Пряме. Нехай Rm, F - максимальна підалгебра алгебри R, F . Нехай r R\Rm. Розглянемо [Rm {r}]F. За побудовою [Rm {r}]F Rm. Щоб виконувалася умова, що Rm, F - максимальна

підалгебра, необхідно [Rm {r}]F = R.

Rm r

 

(У принципі, це не конструктивний доказ: для нескінченних множин

не побудувати)

F

41

б) Обернене. Нехай Rm r F R . Тоді R m - замкнена, причому крім R Rm немає іншої

такої, що

Ri

R

тобто

Rm , F

 

 

– максимальна підалгебра. Теорема доведена.

Інтерес становить проблема співвідношення підалгебр, зокрема, максимальних підалгебр, алгебри

R, S . У першу чергу нас цікавить їхня поведінка щодо операцій і .

Приклад. Розглянемо алгебру a,b ,0 , де операція визначена в такий спосіб:

a o a a b o b b a o b b b o a b .

Очевидно, вона має дві максимальні підалгебри:

a b a, b

a ,0i b ,0 , причому a b

Таким чином, максимальні підалгебри можуть не перетинатися.

Для уже відомої нам алгебри Z, , підалгебри, що мають як носія множину парних чисел.., 4, 2,0,2,4,.. і множину додатних цілих чисел 0,1,2,... є максимальними.

Легко помітити, що в цьому випадку перетин носіїв не порожній.

38. Системи твірних

Нехай R1 , F - підалгебра алгебри R , F . Нехай R1 - деяка підмножина R1 .

Визначення. Система елементів R1 називається системою твірних (повною системою)

підалгебри R1 , F , якщо F R1 . У випадку, коли R , система R називається системою твірних алгебри R , F .

Якщо алгебра має скінчену систему твірних, вона має важливе значення для практичного застосування.

Визначення. Алгебра R , F , зокрема, будь-яка її підалгебра, називається скінчено породженою,

якщо вона має скінчену систему твірних.

Алгебра R , F нескінченно породжена, якщо вона не має скінченої системи твірних. А якщо в

алгебрі зі скінченим носієм R немає власної системи , то вона теж нескінчено породжена. Приклади.

1. N, - скінчено породжена алгебра. Будь-яка підмножина N1 N , що включає 1, є

системою твірних.

2. i,i 1,... , - скінчено породжена алгебра. Система твірних i,i 1,...,2i 1 .

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

Такий критерій дає теорема Поста. Перш ніж перейти до її формулювання, розглянемо ряд корисних властивостей алгебр і систем твірних.

Теорема 19. Нехай R - деяка не порожня підмножина множини R. Тоді в підалгебрі , F

множина є перетином носіїв Ri i I усіх підалгебр алгебри R , F таких, що Ri для кожного

i I .

Доведення. Ідея: показати, що одночасно виконуються Rn і Rn , де Rn Ri . Звідси випливає Rn , що потрібно довести. Те, що Ri i I непорожня, підкреслюється тим, що R Ri .

42

Покажемо Rn . Тому що Ri ,i I , то перетин Rn непорожній і Rn . Далі з теореми

17 можна одержати доведення того, що Rn - замкнена множина. Тоді за властивістю замкнених множин

Rn .

 

 

Покажемо Rn . Через те, що , то Ri . Звідси Rn . Теорема доведена.

Теорема 20. Нехай

R, F - скінчено породжена алгебра. Тоді в будь-якій системі твірних

алгебри R, F можна виділити скінчену підсистему /

, що також породжує R, F .

Доведення. Нехай - система твірних. Тоді F

R . Отже елементи множини R \

породжуються з елементів за допомогою операцій з F.

 

Тоді в може знайтися підмножина / така, що всі елементи \ / можуть бути отримані

з елементів / за допомогою операцій з F. У такий спосіб / R і в такий спосіб / - система твірних.

У крайньому випадку, якщо не знайдеться / , завжди існує / , коли / R і / - система

твірних. У такий спосіб завжди знайдеться / , що породжує R за допомогою операцій з F. Теорема

доведена.

 

 

Теорема 21. Усяка підалгебра R / , F скінчено породженої алгебри R, F , R/ R , може бути

розширена до деякої підалгебри Rm , F максимальної відносно R, F .

39. З г льн схем

вст новлення повноти

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

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

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

Які з зазначених нижче систем функцій є функціонально замкненими класами: а) функції від однієї змінної; б) функції від двох змінних; в) усі функції алгебри логіки; г) лінійні функції; д) самодвоїсті функції;

е) монотонні функції; ж) монотонно убутні функції;

з) функції, що зберігають нуль; і) функції, що зберігають одиницю;

к) функції, що зберігають і нуль, і одиницю; л) функції, що зберігають нуль, але не зберігають одиницю?

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

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

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

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

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

Приклади базисів.

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

43

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

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

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

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

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

Виявляється, що множина усіх передповних класів алгебри логіки скінченна. Більш того, вона містить лише такі п‘ять класів:

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

P1 - клас функції, що зберігають одиницю; L - клас лінійних функцій;

M - клас монотонних функцій;

S - клас самодвоїстих функцій.

Нам зручніше доводити не передповноту цих класів, а безпосередньо критерій повноти, що виходить з цього факту і попередньго результату. Навпаки, виходячи з критерію повноти, ми доведемо передповноту класів Р0, Р1, L, M, S і те, що усякий власний функціонально замкнений клас міститься в одному з них.

Спочатку доведемо одне допоміжне твердження.

Лема 1. Ототожненням змінних із усякої функції, що не зберігає нуль (одиницю), можна одержати функцію від однієї змінної, що має цю ж властивість, тобто ┐х чи 1 (відповідно ┐x чи 0).

Тепер сформулюємо і доведемо критерій повноти у вигляді наступної теореми.

Теорема 23 (теорема Поста). Для повноти системи функцій Ф = { 1, …, n} необхідно і достатньо, щоб для кожного з класів Р0, Р1, L, M, S у Ф знайшлася функція i, що йому не належить.

Доведення. При перевірці, чи виконуються для деякої системи функцій Ф={ 1, …, n} умови теореми Поста, ми будемо складати таблиці, які назвемо таблицями Поста. Вони будуть мати такий вигляд:

 

P0

P1

S

L

M

1

 

 

 

 

 

2

 

 

 

 

 

r-1

 

 

 

 

 

r

 

 

 

 

 

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

Приклад. Доведемо неповноту таких систем функцій:

а) 0, ху, х+у+z; 6) 1, xy, х+у+z; в) (ху)\/ (хz)\/ (уz); г) 0, 1, х+у; д) 0, 1, ху.

Доведемо, що жоден із класів Р0, Р1, S, L, М не міститься в іншому.

Доведемо, що усякий власний функціонально замкнутий клас міститься в одному з класів Р0, Р1, S, L, М. Доведемо, що функціонально замкнені класи Р0, Р1, S, L, М є передповними та інших передповних

класів немає.

Ясно, що теорема Поста дозволяє з'ясувати питання про те, чи є повна система базисом. Це зновтаки зручно робити за допомогою таблиць Поста. Спочатку зробимо деякі загальні зауваження про базиси, що випливають з теореми Поста. Почнемо з найбільш простого.

Базис не може містити більше п‘яти функцій. Насправді має місце більш точний результат: Базис не може містити більше чотирьох функцій.

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

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

44

Доведено, що множина різних мінімальних базисів скінчена. Виявляється, що це число дорівнює 48. Усі мінімальні базиси перелічені. Деякі з них будуть наведені нижче.

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

функції.

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

узагальненою функцією Шефера.

Для подальшого аналізу проблеми, нам знадобляться відповіді на такі запитання: Скільки є узагальнених функцій Шефера від n змінних?

Знайти всі мінімальні базиси з однією функцією.

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

Знайти всі мінімальні базиси з чотирьох функцій.

У попередньому параграфі ми з'ясували, що питання про повноту системи функцій алгебри логіки приводить до розгляду передповних функціонально замкнутих класів. Виявляється, що цілий ряд питань зводиться до вивчення інших функціонально замкнутих класів, не обов'язково передповних. Можна еказати, що кількість різних функціонально замкнутих класів нескінченна і навіть що їхня множина має потужність континууму. Це зв'язано з тим, що класи природно задавати якими-небудь системами функцій, що їх породжують. Оскільки множина функцій алгебри логіки злічена, множина різних систем функцій має потужність континууму. Звичайно, різні системи функцій часто породжують той самий клас. Але немає ніяких підстав заздалегідь вважати, що це ототожнення настільки сильне, що число різних класів буде звичайно зліченим. Насправді виявляється, що множина класів злічена. Нескінченність цієї множина — факт аж ніяк не очевидний.

Зараз ми опишемо принципову схему множини функціонально замкнутих класів, відклавши її конкретний опис (перелік усіх класів) до кінця параграфа. Множину класів зручно уявляти собі у вигляді дерева, вершини якого відповідають класам. Якщо один клас входить в іншій, то вершину, що відповідає першому, ми будемо розташовувати під вершиною, що відповідає другому, причому ці вершини з'єднуються відрізками. Класи допускають природне розташування ярусами. У основі дерева (у першому ярусі) знаходиться клас усіх функцій алгебри логіки (позначимо його через Р), у другому ярусі — передповні класи, у третьому — класи, що не містяться в жодному класі, крім передповних; взагалі, у (і + 1)- му ярусі — класи, що не належать попереднім ярусам і не містяться в жодному класі, що не належить цим і ярусам. Число ярусів нескінченне. Істотно, що в кожнім ярусі маємо скінчене число класів (і навіть обмежене деякою константою) і що якщо клас міститься в деякому класі з i-го ярусу, то чи він сам належить (i+1)-му ярусу, чи міститься у деякому класі (і+1)-го поверху. Зокрема, це означає, що в кожний клас i-го ярусу входить лише скінчене число (обмежене загальною константою) класів наступного ярусу і що в ньому існує скінчений базис, причому число елементів у базисах для всіх таких класів обмежене. Не слід думати, що, перебираючи зазначеним способом яруси, ми рано чи пізно розглянемо всі класи, тобто що кожен клас належить якому-небудь ярусу. Однак виявляється, що цією властивістю володіють усі класи, крім скінченого числа класів, у деякому змісті граничних («класів -го поверху»). Отже, принципова схема має вигляд (поверхи розташовуються зверху вниз), зазначений на рис. 2. На схемі з'єднані вершини тільки для таких класів Q1 Q2, для яких немає проміжного класу Q3:

Q1 Q3 Q2, Q3 Q1, Q3 Q2, Уся частина цієї схеми, починаючи з 3-го поверху і нижче, не відповідає дійсності (число класів у поверсі, включення і т.д.) — тут ми хочемо лише проілюструвати наведені вище загальні зауваження. Останній рядок у схемі відповідає граничним класам.

Тепер подивимося, як використовується таблиця класів при рішенні задач алгебри логіки. Загальна задача ставиться так. Нехай — якась (узагалі говорячи, нескінченна) сукупність безлічей R1 ..., Rn, ...

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

У тому випадку, коли ( складається з єдиної безлічі — безлічі Р усіх функцій алгебри логіки,— це питання перетворюється в питання про повноту системи функцій Ф (див. § 6). Але можливо і багато інших варіантів цієї задачі, наприклад, питання про тім, коли система породжує який-небудь функціонально замкнутий клас Q (тоді ( містить єдиний елемент Q). Якщо всі безлічі, що входять у , містять по одній функції, то можна розглядати як деяка безліч функцій. У цьому випадку задача ставиться так: чи можна хоча б одну функцію з представити у виді суперпозиції функцій з Ф. Схема функціонально замкнутих класів дозволяє в принципі дати відповідь на ці питання в тих же термінах, у яких теорема Посади дає відповідь на питання про повноту.

Назвемо функціонально замкнутий клас Q -предполным, якщо він чи не містить одного з безлічей Ri ( (, а будь-який клас, що містить Q і не співпадаючий з Q, містить, принаймні, одне з безлічей Ri . Ясно, що всякий клас, що не містить безлічей Ri , міститься, принаймні, В одному -предполном класі. Знаходити -предполные класи часто можна в такий спосіб. Спочатку перевіримо, які з граничних класів містять безлічі Ri , а потім, рухаючи від класу Р вниз і розглядаючи лише класи, не утримуючих

45

граничних класів, що володіють цією властивістю, відбираємо -предполные. Вони будуть граничними між класами, що містять які-небудь з Ri і не утримуючими жодного з Ri.

Цей шлях неприйнятний, якщо які-небудь із граничних класів є (-предполными, тому що ми не можемо за допомогою зазначеної процедури дійти до них за кінцеве число кроків. Це обставина треба досліджувати спеціально. Помітимо, що навіть якщо усі функціонально замкнуті класи відомі, може виявитися дуже важким з'ясування того, чи належить деякому класу хоча б одне з безлічей Ri чи ні. Так що не слід думати, що знання таблиці перетворює перебування (-предполных класів у чисто автоматичну процедуру. Однак, якщо (-предполные класи вже знайдені, то питання про Si-повноту систем Ф дійсно зважується автоматично (принаймні, для кінцевих безлічей Ф). При цьому важливо, що для кожного класу (як буде випливати з параграфа списку, що приводиться в кінці, класів) мається алгоритм, що дозволяє з'ясовувати, міститься в ньому деяка чи функція ні. Фактично ця перевірка може виявитися громіздкою.

40. Розширен суперпозиція

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

Визначення 7.1. Будемо говорити, що функція f отримана із системи Ф за допомогою розширеної суперпозиції, якщо вона виходить з Ф за допомогою операцій суперпозиції (визначення 2.3) і підстановки констант.

Іншими словами, розширеними суперпозиціями системи функцій Ф є звичайні суперпозиції системи функцій Ф ( {0, 1}, якщо Ф містить хоча б одну функцію, відмінну від константи; у противному випадку (якщо у Ф входять лише константи) Ф збігається з безліччю розширених суперпозицій. Досить помітити, що з функції, що не є константою, підстановками констант можна одержати обох констант (потрібно підставити в аргументи набір констант, на якому функція приймає відповідне значення). Розширеною суперпозицією системи функцій, що зводиться до константи, є лише вона сама.

7.2.Знайти предполные класи для розширеної суперпозиції

7.3.Як зв'язані функціонально замкнуті класи щодо звичайної і розширеної суперпозиції?

Отже, ми можемо заповнити перші два поверхи в таблиці класів для розширеної суперпозиції (мал. 3). Визначення 7.2. Якщо усяка функція з деякого функціонально замкнутого класу Q представима у виді суперпозиції функцій з деякої безлічі Ф, то ми будемо говорити, що система функцій Ф Q-повний Рис. 3. (ср. с (-повнотою; тут ( складається з однієї безлічі Q). Мінімальну Q-повну систему Ф назвемо Q-базисом.

Рис. 3

7.4. Довести, що система функцій {х+у, 1} є L-базисом; щодо розширеної суперпозиції L-базисом є система з однієї функції х+у.

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

7.6. Знайти усі функціонально замкнуті класи, що містяться в L, і намалювати схему включень. Отже, ми побудували ту частину таблиці класів, що зв'язана з класом лінійних функцій L. Тепер нам

потрібно провести аналогічні побудови для класу монотонних функцій М. Вони проводяться трохи складніше, ніж у попередньому випадку.

Визначення 7.3 *). Позначимо через D клас функцій, що складає з диз'юнкцій будь-якого числа перемінних x1 x2 ... xk (у тому числі й один перемінної х), через D01 **)—клас, отриманий приєднанням констант.

Аналогічно, через До позначимо клас, що складається з конъюнкций будь-якого числа перемінних х1х2. . .xk (у тому числі і єдиної перемінний х), а через ДО01 — клас, отриманий приєднанням констант.

7.8. Знайти усі функціонально замкнуті класи, що містяться в М. Намалювати схему включень. Отже, знайдені усі функціонально замкнуті класи для розширеної

суперпозиції. Зокрема, їх виявилося кінцеве число. Приведемо остаточну таблицю класів (мал. 4). Цю таблицю можна використовувати при рішенні питань про (- повноту безлічей функцій щодо розширеної суперпозиції за схемою, зазначеної в п. 1 цього параграфа. Розглянемо кілька прикладів.

7.9. У кожнім з нижченаведених випадків знайти необхідні і достатні умови на систему функцій алгебри логіки Ф, при виконанні яких розширеними суперпозиціями функцій із системи Ф можуть бути представлені:

Рис.4.

а) усі лінійні функції; б) усі монотонні функції; в) функція ху(уz(хz;

46

г) функція х+у+z;

д) принаймні одна з двох функцій: ху уz хz; x+y+z; е) обидві зазначені в д) функції;

ж) функція lх;

з) усяка лінійна чи функція функція ху; и) ху чи lх;

к) ху і lх;

л) ху чи х у чи lх.

Іншими словами, потрібно знайти умова (-повноти системи Ф щодо розширеної суперпозиції в тих випадках, коли ( складається: а) з однієї безлічі L; б) з однієї безлічі М и т. д. Ми надаємо читачу продовжити цей список.

Урозглянутих прикладах усі безлічі, що входять у (, описуються просто. Після цього, принаймні у випадку розширеної суперпозиції, (-предполные класи легко знаходяться. Однак елементи ( можуть описуватися складно і неефективно, у результаті чого з'ясування того, які класи містять елементи (, а які ні, може виявитися важким. Це обставина в якомусь ступені буде проілюстровано прикладами, розглянутими в цьому і наступних параграфах (більш складний приклад перебування (-предполных класів див., наприклад, у [3]). Почнемо з порівняно простого приклада.

Визначення 7.4. Нехай Ф — деяка система функцій алгебри логіки. Будемо говорити, що функція f самодвойственно представима через систему Ф, якщо f і f+ представляються суперпозицією функцій з Ф.

Визначення 7.5. Система функцій Ф називається самодвойственно повної, якщо сукупність функцій, самодвойственно представимых через Ф, разом із запереченням lx утворить повну систему.

Уцих визначеннях можна мати на увазі як звичайну, так і розширену суперпозиції.

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

7.11.Довести, що: 1) усяка самодвойственно повна система функцій разом з lх утворить повну

систему;

2) не всяка система функцій Ф, що утворить разом з lх повну систему, є самодвойственно повної; 3) для того щоб така система Ф була самодвойственно повної, досить (але не необхідно!), щоб у Ф разом з кожною функцією входила двоїста.

41. С модвоїст повнот .

Як ми вже говорили, загальний випадок значно складніше випадку розширеної суперпозиції. Цьому загальному випадку і буде присвячена частина цього параграфа, що залишилася. Часто можна дати відповідь на ту чи іншу задачу в термінах функціонально замкнутих класів, не прибігаючи до таблиці всіх класів, а так чи інакше угадавши класи, що мають відношення до розглянутої задачі. У цьому пункті ми приведемо приклад такої задачі — задачу про самодвоїсту повноту системи функцій щодо звичайної суперпозиції. Ми починаємо розгляду, що дозволяють вирішити цю задачу. Однак радимо читачу спробувати вирішити цю задачу самостійно, не використовуючи наступні нижче вказівки.

Нам будуть потрібні деякі нові функціонально замкнуті класи.

Визначення. Позначимо через F(2) (відповідно через G(2)) сукупність таких функцій f(x1 ,...,xn), що будь-які два набори =( 1 , ..., n), =( 1 ,…, n),на який f( )=f( )=0 (відповідно f( )=( )=l), мають загальний нуль: i= i=0 для деякого 1 i n (відповідно мають загальну одиницю: i = i =1 для деякого i).

Відзначимо, що

а) функції f F(2) (f G(2)) зберігають одиницю (відповідно нуль), тобто F(2) Р1, G(2) P0;

б) 1 F(2), 0 G(2);

в) 0 F(2), тому що, вважаючи функцію f=0 фіктивно залежної від якихось перемінних, ми одержуємо, що вона не задовольняє визначенню 7.6. Нагадаємо (§ 2, визначення 2.2), що ми не розрізняємо функції, що відрізняються друг від друга фіктивними перемінними, а тому розглядаємо властивості функцій, що не міняються при їхньому додаванні. Аналогічно 1 G(2).

г) Безлічі F(2) і G(2) двоїсті один одному.

7.14. Довести, що F(2) і G(2) — функціонально замкнуті класи. А

Тепер ми можемо сформулювати відповідь на цікавлячий нас питання.

7.15. Довести, що для самодвоїстої повноти системи функцій Ф необхідно і досить, щоб у ній

містилися функції: а) 1 L; б) 2 D01; в) 3 ДО01; г) 4 S; д) 5 F(2); е) 6 G(2). А

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

7.16.Довести, що всяка несамодвоїста функція не належить принаймні одному з класів F(2), G(2). Наступна задача є деяким уточненням задачі 3.10.

7.17.Перелічити несамодвоїсті функції, у яких не можна ототожнити змінні так, щоб знову вийшла несамодвоїста функція. Які з цих функцій не входять у F(2), а які в G(2)? A

47

7.18.Нехай f F(2). Функцію від якого найменшого числа змінних, що також не входить у F(2), можна одержати, ототожнюючи змінні в f? Аналогічне питання про функцію f G(2). A

7.19.Нехай система функцій Ф містить функції 1 S, 2 F(2) (відповідно 1 S, 2 G(2))- Функцію від якого найменшого числа змінних, що не входить у F(2) (відповідно G(2)), можна представити у виді суперпозиції функцій з Ф? А

Тепер читач має все необхідне для того, щоб вирішити задачу 7.15.

4. Третій поверх схеми Поста функціонально замкнених класів. Дійсний пункт присвячений задачі про перебування функціонально замкнутих класів. Ця задача не буде вирішена цілком. Ми вже знаємо предповні класи — другий поверх. Побудуємо зараз наступний поверх і, більш того, для кожного предповного класу Q ми знайдемо Q-предповні класи. При цьому нам істотну допомогу зроблять результати двох попередніх пунктів.

Для нових класів будемо вводити позначення, використовуючи зауваження у виносці на стор. 97 і у вказівці до задачі 7.6.

Почнемо з класів монотонних і лінійних функцій.

7.20.Знайти всі М-предповні класи. А

7.21.Знайти всі L-предповні класи. А

Перед тим як перейти до розгляду інших Q-предповних класів, знову нагадаємо ідею доведення Q- предповноти класів R1 ,..., Rm Q для якого-небудь функціонально замкнутого класу Q (див. рішення задачі 6.18; указівки до задачі 7.7). Потрібно показати, що

1)

жоден із класів Ri не збігається з Q;

2)

жоден із класів Ri не міститься в іншому;

3)

усяка система функцій Ф, що для кожного класу Ri містить функцію i RI , Q-повна.

Питання про Q-повноту тих чи інших систем Ф, у свою чергу, зводиться до перебування деяких стандартних Q-повних систем у Q (наприклад, {ху, x у} для класу М и {х+у, 1} для класу L) і наступному доказу того, що через елементи Ф можуть бути представлені усі функції з якоїсь стандартної системи. З цієї задачі про стандартні Q-повні системи природно і починати питання про перебування Q-предповних класів.

7.22.Довести, що система функцій {ху, x+y+1} є P1-повною системою (і навіть Р1-базисом). А

7.23.Довести, що система функцій {х у, ху} є Р1-повною системою і Р1-базисом. А

7.24.Знайти всі Р1-предполные класи. А

7.25.Сформулювати аналоги задач 7.22, 7.23 і 7.24 для класу Р0 функцій, що зберігають 0. Вирішити їх за аналогією з рішенням цих задач, а також вивести з відповідних задач про P1 за допомогою закону подвійності (§ 3).

Ми переходимо до розгляду класу самодвоїстих функцій S. Почнемо з питання про побудову стандартного S-базису. Це питання зажадає, як ми побачимо, істотно нових розумінь. В усіх попередніх випадках ми так чи інакше використовували нормальні чи форми поліноми Жегалкина. Ці представлення зв'язані з базисами з несамодвойственных функцій і тому не можуть бути безпосередньо використані при розгляді самодвоїстих функцій.

7.26.Довести, що система функцій {ху уz хz, lx} є S-базисом. А

7.27.Знайти S-передповні класи. А

Тепер знайдені всі Q-передповні класи для передповних класів Q. Складемо схему включень (мал. 5).

Рис. 5.

Отже, ми знайшли весь третій поверх у схемі Поста, що складається з усіх Q-передповних класів, де Q — передповні класи, крім S01 P01.

5. Постівська схема функціонально замкнутих класів.

Приведемо без доказу постовскую схему функціонально замкнутих класів (мал. 6).

48

O1 = {1, x},
O0 = {0, x}

Рис. 6.

Зробимо необхідні пояснення. У наведеній схемі класи не розташовуються по поверхах (порівн. мал. 2). Однак правило, у силу якого клас Q1, що міститься в Q2, распологается в схемі нижче Q2.збережено. Тому за схемою можна легко визначити, якому поверху належить той чи інший клас Q. Для цього потрібно розглянути всілякі ланцюжки класів P = Q1 Q2 … Qr = Q (усі Qi різні). Ці ланцюжки мають кінцеву довжину і різні ланцюжки мається кінцеве число. Максимальна з довжин цих ланцюжків r збігається з номером поверху, у якому знаходиться Q. Зі схеми видно, що для кожного класу Q мається не більш п'яти Q-предполных (причому п'ять тільки для Р).

Більшість класів, що фігурують у схемі, уже визначене *). Класи F(k) визначаються за аналогією з F(2): будь-які k наборів, на яких функція f F(k) дорівнює нулю, повинні мати загальний нуль у деякому розряді. Оскільки серед цих наборів можуть бути співпадаючі, F(k) F(m) при k < m,. Класи G(k) двоїсті до F(k).

Клас F( ) складається з функцій, у яких усі набори, на яких вони дорівнюють нулю, мають загальний нуль;

F( ) F(k). Маються наступні граничні класи: F( ), F0( ), MF( ), MF0( ), G( ), G1( ), MG( ), MG1( ), D1, D, K0, K,

ПРО1, ПРО0, KD, {1}, {0}, тобто існують нескінченні ланцюжки вкладених класів, що з'єднують їх з Р. Опишемо класи, що складаються з функцій однієї перемінної:

O = {0, 1, x, }, ОМ = {0, 1, x}, OS = {x, lx}, KD = {x},

42. Гр фи, способи з д ния гр фів.

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

Означення. Графом G = (V,E,Θ) назвемо трійку, що складається з множини V вершин, множини E ребер, функції Θ, що ставить у відповідність кожному ребру з множини E невпорядковану пару вершин з множини V.

Таким чином, функцію Θ відповідно до символіки, прийнятої в першому розділі, варто записати у вигляді Θ: E V V. Далі будемо позначати ребра символами e1, e2, …, а вершини – символами v1, v2,… .

Означення. Нехай функція Θ ставить у відповідність ребру ei з множини E невпорядковану пару вершин (vk, vl). Тоді вершини vk і vl назвемо кінцевими вершинами ребра ei.

Допускається, щоб у множині Е було більш одного ребра з тими ж кінцевими вершинами. Такі ребра будемо називати паралельними. Якщо ребру еi функція Θ ставить у відповідність пару (vk, vk), то його будемо називати петлею.

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

49

Означення. Граф, що не містить петлі і паралельні ребра, будемо називати простим. Граф, що містить петлі і паралельні ребра, будемо називати мультиграфом. Граф, що не містить паралельні ребра, у тому числі і паралельні петлі, будемо називати графом Бержа. Граф, що не містить ребра, будемо називати порожнім (порожній графа на n вершинах іноді позначається On). Граф, що не містить вершини (і, отже, ребра), будемо називати нуль-графом.

Велике значення мають способи задання графів. З одного боку, простота деяких з них сприяла поширенню графів, з іншого боку, поява комп'ютерів вимагала простих і доступних комп'ютерам способів. Існують наступні три способи задання графів:

а) аналітичний: має ряд форм, що відрізняються способом задання функції Θ. У найпростішому вигляді її задають множиною невпорядкованих пар (vk,vl), що зображують кінцеві вершини ребер.

Приклад 1. Множина V = {v1, v2, v3, v4}, множина E= {e1, e2, e3, e4}, множина пар {(v1,v2), (v2,v3), (v1,v4), (v4,v3)} задають граф. Однак, при цьому втрачається інформація про те, з якими вершинами зв'язані ребра. Щоб цю інформацію не утратити, функцію Θ можна задати в традиційному вигляді: Θ(e1) = (v1, v2);

Θ(e2) = (v2, v3); Θ(e3) = (v1, v4); Θ(e4) = (v4, v3).

Цю же інформацію можна задати, прийнявши, що множина Е і множина пар кінцевих вершин однаково впорядковані.

Іншою формою аналітичного способу може бути задання множин V, E і відображення F кожної вершини vk V у множину підмножин V. Наприклад, граф з прикладу 1 можна задати в такий спосіб: V=

{v1,v2,v3,v4}, E= {e1,e2,e3,e4}, Fv1 = {v2,v4}, Fv2 = {v1,v3}, Fv3 = {v2,v4}, Fv4 = {v1,v3}.

Цей метод зручно використовувати в комп'ютерах.

б) геометричний: кожна вершина зображується точкою, кожне ребро – лінією, що з'єднує кінцеві вершини. Саме цим способом ми скористалися у вступній лекції. Через його простоту і наочність геометричний спосіб приніс популярність графам. Заданий вище аналітичним способом граф геометрично можна задати у вигляді:

v1

 

e2

v4

e1

 

 

 

 

 

 

e4

 

v2

 

e2

v3

 

 

 

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

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

Означення. Назвемо вершину vi і ребро ej інцидентними, якщо Θ(ej) = (vk,vi) або Θ(ej) = (vi, vl) або Θ(ej) = Θ(ej) = (vi, vi). Вершини vi і vj назвемо суміжними, якщо існує хоча б одне ребро, інцидентне їм обом.

Тоді граф можна задати у вигляді матриць:

1) суміжності: R=║rij║, де елемент rij = n – число ребер з кінцевими вершинами vi, vj. Для графа з прикладу 1 матриця суміжності має вигляд:

 

 

0

1

0

1

R

 

1

0

1

0

 

0

1

0

1

 

 

 

 

1

0

1

0

 

 

 

 

 

 

Очевидно, матриця суміжності графа - це квадратна матриця m m, де m - число вершин графа;

2) інцидентності: A=║aij║, де елемент aij = 1, якщо ребро ej інцидентне вершині vi, 0, у протилежному випадку. Для графу з прикладу 1 матриця інцидентності має вигляд:

v1

 

e1

e2

e3

e4

A v2

 

1

0

1

0

 

1

1

0

0

v3

 

0

1

0

1

v4

 

 

 

0

0

1

1

Очевидно, матриці інцидентності графа завжди має розмірність p m, де p - число вершин графа, а m – число його ребер. Задання графів матрицями дозволяє алгоритми розв‘язання проблем, поставлених як проблеми над графами, представити в зручному вигляді алгоритмів над матрицями. Також задання графів матрицями дозволяє в зручній формі перевіряти їхні особливості, наприклад, про наявність петель у графі говорять одиниці на головній діагоналі матриці суміжності, а матриця суміжності повного графа складається, за винятком нульової головної діагоналі, тільки з одиниць.

Зазначимо, що при використанні матриць суміжності, на відміну від матриць інцидентності, втрачається інформація про те, з якими вершинами зв'язані ребра.

Іноді множина усіх вершин графа G = (V,E,Θ), суміжних із зафіксованою вершиною vi, називається оточенням вершини vi і позначається N(vi).

50