Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Метод двійкових діаграм рішень



Нехай F, F0, F1 – формули. Розгалуженням називається вираз виду FÞF1,F0, який визначається так: FÞF1,F0=(FÙF1)Ú(ØFÙF0). Формула F називається перевірним виразом, Þ – оператором розгалуження, F1,F0гілками розгалуження. Будемо називати розгалуження формулою.

З наведеного означення випливає, що логічні зв’язки Ù, Ú, Ø, ®, « можуть бути виражені через оператор розгалуження й логічні константи 0 та 1 таким чином, що: а) перевірні вирази є атомами, б) атоми зустрічаються лише у перевірних виразах. Дійсно, маємо: ØР=(РÞ0,1); PÙQ=PÞ(QÞ1,0),0; Р«Q=PÞ(QÞ1,0),(QÞ0,1); PÚQ=PÞ1,(QÞ1,0); P®Q=PÞ(QÞ1,0),1. Зазна-чимо також, що кожна формула F може бути записана у вигляді FÞ1,0.

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

Наприклад, формула PÞ(QÞ0,(RÞ0,1)),(RÞ(PÞ1,0),(QÞ1,0)) є у нфр, а формули (РÚQ)ÞR,0 та РÞ(RÙQ),(Q®ØP) – ні.

Позначимо F[0/P] (F[1/P]) формулу, що є результатом заміни у формулі F атома Р на 0 (1). Тоді формулу F, що містить атом Р, можна подати у вигляді

F=РÞF[1/P],F[0/P].                                      (1)

Користуючись цим співвідношенням (застосовуючи його спочатку до формули F, а потім до гілок розгалуження й т.д.), можна кожну формулу логіки висловлень привести до нфр. Нехай, наприклад, F=(P®ØQ)Ù(QÚR). Виберемо за перевірний вираз атом Р та застосуємо перетворення (1). Тоді гілки розгалуження мають вигляд F[1/P]=(1®ØQ)Ù(QÚR)=ØQÙ(QÚR), F[0/P]=(0®ØQ)Ù(QÚR)=QÚR, а F=PÞ(ØQÙ(QÚR)), (QÚR). Позначимо F1= F[1/P], F0=F[0/P]. Виконуючи далі підстановки 1 замість атома Q у F1 й F0 та 0 замість атома Q у F1 та F0, маємо:

F1=QÞF1[1/Q], F1[0/Q]= QÞ(Ø1Ù(1ÚR)),(Ø0Ù(0ÚR))= QÞ0,R;

F0=QÞF0[1/Q], F0[0/Q]= QÞ(1ÚR),(0ÚR)= QÞ1,R.

Оскільки R=RÞ1,0, то маємо: F= PÞ(QÞ0, (RÞ1,0)),(QÞ 1,(RÞ1,0)).

Назвемо орграфом упорядковану пару множин виду (V,E), де V – довільна непорожня множина, EÍV2. Множина V називається множиною вершин орграфу, її елементи називаються вершинами, а множина Е називається множиною дуг орграфу, її елементи (якщо ця множина непорожня), називаються дугами. Якщо (u,v) – дуга орграфу, то вершина u називається початком, а вершина v – кінцем цієї дуги, а дуга (u,v) – інцидентною вершинам u та v. Напівстепенем виходу вершини u орграфу називається потужність множини дуг орграфу, для яких вершина u є початком. Вершина, напівстепінь виходу якої дорівнює 0, називається кінцевою. Орграф (V,E) називається позначеним, якщо задана деяка множина Р (множина позначок) й задано відображення h множини V у множину Р. Шляхом у орграфі (V,E) називається така скінченна послідовність вершин орграфу v1,…vn, що (vi,vi+1)ÎE, 1£i£n-1. Якщо у орграфі існує шлях виду v1,…vn, то будемо говорити, що вершина vn досяжна з вершини v1. Орграф (V,E) називається ациклічним, якщо у ньому не існує жодного шляху v1,…vn, такого що n³2 й v1=vn. Орграф називається кореневим, якщо у ньому існує єдина вершина, що не є кінцем жодної дуги, й з якої досяжна будь-яка інша вершина даного орграфу. Орграф, множина вершин якого скінченна, може бути поданий у вигляді діаграми. Щоб подати орграф у вигляді діаграми, треба для кожної його вершини вибрати точку на площині (різні вершини позначаються різними точками), позначити точку іменем вершини, для якої ця точка вибрана, й з’єднати ті пари точок u та v, для яких виконується (u,v)ÎЕ, відрізком лінії зі стрілкою, що вказує на точку v.

Двійковою діаграмою рішень (ДДР) називається ациклічний кореневий позначений орграф, у якому є одна чи дві кінцеві вершини (тобто вершини, напівстепені виходу яких дорівнюють нулю), що мають (різні) позначки 0 або 1, напівстепені виходу некінцевих вершин дорівнюють двом, на множині некінцевих вершин визначено функції var, low, high такі, що коли u – некінцева вершина, то її позначкою є var(u), а (u, low(u)) та (u, high(u)) – дуги, інцидентні вершині u. Областю значень функції var є деяка множина позначок, область значень функцій high, low – множина вершин ДДР.

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

(var(u)=var(v))Ù(low(u)=low(v))Ù(high(u)=high(v))®u=v й low(u)¹high(u).

Визначимо рекурсивну процедуру побудови формули Fu, що визначається вершиною u деякої ПУДДР. Кінцева вершина визначає логічну константу, некінцева вершина u з позначкою Р визначає розгалуження, перевірним виразом якого є Р, а суміжні вершини визначають гілки розгалуження, тобто F0=0, F1=1, Fu=var(u)ÞFhigh(u),Flow(u).

За формулою у нфр очевидним чином можна побудувати орграф, який після злиття кінцевих вершин з однаковими позначками перетворюється на ДДР. На рис.1 зображено УДДР, що не є приведеною, бо вона містить дві надлишкові вершини, що позначені перевірними виразами х1 та х2. Діаграма на рис.2 є УДДР для формули х1Úх3 з однією надлишковою вершиною. Дуги виду (u,high(u)) зображено суцільними лініями, дуги виду (u,low(u)) – пунктирними.

Теорема 5. Для будь-якої формули F(A1,…,An) логіки висловлень існує єдина ПУДДР з лінійним упорядкуванням позначок A1<…<An, така що для кореневої вершини u Fu=F.

Рис. 2
Наведені результати забезпечують такий спосіб перевірки тавтологічності (суперечності) формули логіки висловлень. Побудуємо для даної формули F її нормальну форму розгалуження, вибравши певний лінійний порядок атомів (це можна зробити для будь-якої формули логіки висловлень). Потім за нфр побудуємо УДДР, при потребі здійснивши її приведення. Якщо результатом є діаграма, що складається з однієї кінцевої вершини, яка має позначку 1 (0), то формула F є тавтологією (суперечністю). Якщо побудована ПУДДР має некінцеві вершини, то формула F не є ні тавтологією, ні суперечністю, але має моделі.

Розглянемо формулу (х1«y1)Ù(x2«y2). Зафіксуємо лінійний порядок атомів: x1<y1<x2<y2. На рис.3 зображено ПУДДР даної формули. Діаграма показує, що формула не є тавтологією й не є суперечністю. За допомогою цієї діаграми можна побудувати моделі формули, наприклад, х1=y1=1, х2=y2=0.

Рис.1 Рис.2 Рис. 3

Доведення теореми 5 проведемо індукцією за кількістю n атомів у формулі F(A1,…,An). Нехай n=0. Існує лише дві формули, що не містять атомів: тотожно істинна формула (1) й тотожно хибна формула (0). Оскільки будь-яка ПУДДР, що має хоча б одну некінцеву вершину, визначає формулу, яка не є логічною константою, то для кожної з констант існує лише одна ПУДДР: кінцева вершина з позначкою 1 для 1 та кінцева вершина з позначкою 0 для 0.

Нехай теорема правильна для усіх формул, що містять n атомів. Розглянемо формулу F(A1,…,An+1), що містить n+1 атомів. Надаючи значення 0 або 1 першому атому (A1), одержимо формули F0 та F1, що мають по n атомів: Fb(A2,…,An+1)=F(b,A2,…,An+1), bÎ{0,1}. Для цих формул виконується умова: F(A1,A2,…,An+1)=A1ÞF1(A2,…,An+1),F0(A2,…,An+1). Оскільки F0 (F1) має n атомів, за припущенням індукції існує єдина ПУДДР, така що для кореневої вершини u0 (u1) Fu0=F0 (Fu1=F1). Розглянемо два випадки. Якщо ПУДДР з коренями u0 та u1 збігаються, то F0=F1=F. Отже, маємо ПУДДР для F, причому єдину. Якщо ПУДДР з коренями u0 та u1 не збігаються, то, згідно з припущенням індукції, Fu0¹Fu1. Побудуємо УДДР з коренем u так, що var(u)=A1, low(u)=u0, high(u)=u1. Тоді Fu=A1ÞFu1,Fu0, а побудована діаграма є, очевидно, приведеною. За припущенням, Fu1=F1 й Fu0=F0, отже, Fu=F. Припустимо, що існує інша ПУДДР, скажімо, з коренем v, така що Fv=F. Тоді Fv має залежати від A1, тобто Fv0¹Fv1, тому що інакше маємо суперечність: F0=(Fv)0=(Fv)1=F1. Згідно з порядком, заданим на множині атомів формули F, var(v)=A1=var(u). З того, що Fv=F, випливає: Flow(v)=F0=Fu0 й Fhigh(v)=F1=Fu1. Отже, за припущенням індукції, low(v)=u0=low(u) й high(v)=u1=high(u). Оскільки діаграма є приведеною, то u=v. Теорему доведено.

 

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

1. Що таке розгалуження?

2. Що таке перевірний вираз?

3. Що таке нормальна форма розгалуження?

4. Які формули логіки висловлень можна подати у нормальній формі розгалуження?

5. Як подати логічні зв’язки Ù, Ú, Ø, ®, « за допомогою оператору розгалуження й логічних констант 0 та 1?

6. Що таке двійкова діаграма рішень?

7. Яка двійкова діаграма рішень називаєтья: а) упорядкованою, б) приведеною?

8. Як побудувати формулу у нфр за ПУДДР?

9. Як визначити за ПУДДР, побудованою за формулою F, чи є F:
а) тотожно істинною, б) тотожно хибною?

Задачі та вправи

І. Перевірити суперечність поданих формул: а) шляхом побудови днф,
б) методом Девіса й Патнема, в) методом резолюцій, д) шляхом побудови ПУДДР.

1. (ØPÚQ)ÙØQÙP                           2. (PÚQ)Ù(ØPÚQ)Ù(ØRÚØQ)Ù(RÚØQ)

3. (PÚQ)ÙØQÙ(ØPÚQÚØR)        4. (PÚQÚØR)Ù(PÚØQ)ÙØPÙRÙT

5. PÙQÙRÙSÙ(ØPÚØQÚØRÚØS) 6. (PÚØQ)Ù(ØPÚQ)Ù(QÚØR)Ù(ØQÚØR)

7. (PÚQ)Ù(RÚQ)ÙØRÙØQ          8. (PÚQ)Ù(PÚØQ)Ù(RÚQ)Ù(RÚØQ)

9. (AÚB®CÙD)Ù(DÚE®G)Ù(AÚØG)

10. (PÚQ)Ù(QÚR)Ù(RÚS)Ù(ØRÚØP)Ù(ØSÚØQ)Ù(ØQÚØR)

11. (A®Ø(BÙC))Ù(DÚE®G)Ù(G®Ø(HÚI))Ù(ØCÙEÙH)

12. (A®B)Ù(C®D)Ù(B®D)Ù(ØC®A)Ù(E®G)Ù(G®ØD)Ù(ØE®E)

13. (A®BÙC)Ù(D®BÙE)Ù((G®ØA)ÙH®I)Ù((H®I)®GÙD)ÙØ(ØC®E).

ІІ. Побудувати приклади суперечних множин диз’юнктів, для яких не існує вхідних виведень порожнього диз’юнкту.

IIІ. Знайти усі моделі формули F шляхом побудови: а) днф, б) ПУДДР.

1. (СÙ(ØАÚ(В®С)))®(ВÙС)     2. (A®(ØBÚC))Ù(C®A)

3. Ø(ØА«(ВÙС)ÚВ)                  4. (АÚØ(ВÚ(С«ØА)))

5. СÙ(Ø((ØАÚВ)®С))          6. АÙØ(С®Ø(ВÚА))

7. (СÚ(ØА«(ВÙС)))®А            8. Ø(АÚ(В«С))®(АÙС)

9. Ø(АÚВ)Ù((С«А)ÚВ)                 10. (ВÙ(А®Ø(СÚА)))«А.

IV. Нехай F – формула логіки висловлень. Як, використавши метод Девіса й Патнема, дізнатися, чи є F тавтологією? Чи можна встановити тавтологічниість формули F за допомогою методу резолюцій?

V. Чи однаковими є ПУДДР, побудовані за формулою (А1«В1)Ù(А2«В2) з використанням різних лінійних порядків на множині атомів (A1<B1<A2<B2 та А1<А2<В1<В2 відповідно)?

VI. Нехай S – множина диз’юнктів, до якої застосовне правило тавтології методу Девіса й Патнема, й S1 – результат застосування цього правила до S. Довести, що S суперечна Û S1 суперечна.

VII. Нехай S – множина диз’юнктів, до якої застосовне правило розщеплення методу Девіса й Патнема, й S1 та S2 – результат застосування цього правила до S. Довести, що S суперечна Û S1 та S2 суперечні.

VIII. Нехай S – множина диз’юнктів, до якої застосовне правило чистих літер методу Девіса й Патнема, й S1 – результат застосування цього правила до S. Довести, що S суперечна Û S1 суперечна.

IX. Нехай S – множина диз’юнктів, до якої застосовне правило однолітер-них диз’юнктів методу Девіса й Патнема, й S1 – результат застосування цього правила до S. Довести, що S суперечна Û S1 суперечна.

Х. Нехай існує доведення несуперечності формули F методом Девіса й Патнема. Сформулюйте правило побудови моделі F за цим доведенням.

 


Поделиться:



Последнее изменение этой страницы: 2019-04-10; Просмотров: 356; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.023 с.)
Главная | Случайная страница | Обратная связь