Ќа головну

–"–∞—В–∞ –њ—Г–±–ї–Є–Ї–Њ–≤–∞–љ–Є—П: 2015-03-26; –Я—А–Њ—З–Є—В–∞–љ–Њ: 184 |

‘ќ–ћ”Ћџ Ћќ√» » ¬џ— ј«џ¬јЌ»…

  1. II. ЁЋ≈ћ≈Ќ“џ ћј“≈ћј“»„≈— ќ… Ћќ√» »
  2. III. ќсновные определени€ и формулы.
  3. јвтосуммирование, ввод формулы.
  4. јксиомы алгебры логики.
  5. јксиомы, противоречи€ и тавтологии в логике высказываний.
  6. јЋ√≈Ѕ–ј Ћќ√» » » –≈Ћ≈…Ќќ- ќЌ“ј “Ќџ≈ —’≈ћџ.
  7. јлгоритм 4.17. Ќастройка пользовательского пол€ с созданием дл€ него формулы

ѕон€тие формулы

«адача математической логики дать принцип рассуждени€, позвол€ющий механическим путем решать вопрос: можно ли некоторую цепочку рассуждений считать правильной? ѕри этом важна только форма высказывани€ составл€ющих эту цепочку, но не их содержание и смысл.

ѕоэтому формальный €зык, который описывает логику высказываний, €вл€етс€ чисто синтаксическим. ќн не требует, чтобы формулы логики высказываний имели какую-то семантику (смысл).

јлфавитом логики высказываний называетс€ любое непустое множество, содержащее следующие символы: логические переменные x1, x2,..,xn; логические св€зки Ù,Ú,-,Ѓ,Ђ, а также символы скобок (,).

—ловом в любом алфавите называетс€ люба€ последовательность символов (возможно пуста€). —лово в алфавите логики высказываний называетс€ формулой, если оно удовлетвор€ет следующему индуктивному определению:

1 Ћюба€ логическа€ переменна€ - формула.

2 ≈сли ј и ¬ - формулы, то 'ј, ј Ù ¬, ј Ú ¬, ј Ѓ ¬, ј Ђ ¬ - тоже формулы.

3 Ќикаких других формул, кроме тех, которые указанны в п.1 и п.2, нет.

»ногда пон€тие формулы расшир€етс€ за счет введени€ в них важных логических операций:

ј|¬ - штрих Ўеффера (антиконъюнкци€), т. е. .

ј¯¬ - стрелка ѕирса (антидизъюнкци€), т. е. .

јÅ¬ - "кольцева€ сумма" ("логическое сложение", "сложение по модулю 2") - .

 
ƒл€ упрощени€ записи в формулах логики высказываний прин€ты следующие соглашени€ относительно расстановки скобок:

  1. ¬нешние скобки не пишутс€.
  2. Ќа множестве операций логики высказываний ввод€тс€ отношени€: транзитивное - "быть более сильным" и эквивалентности - "быть равносильным". ќни представлены на рисунке, причем "более сильные" наход€тс€ выше, а 'равносильные" - на одном уровне.


2.2.2. –авносильность формул

ѕусть ј и ¬ - две формулы и {x1, x2,..,xn} - множество всех пропозициональных (высказывательных) переменных, вход€щих в эти формулы. ‘ормулы называютс€ равносильными, если при любом распределении истинности значений переменных x1, x2,..,xn они принимают одинаковые значени€. –авносильность формул логики высказываний обозначаетс€ так ј=¬.

–азличие знаков Ђ и = состоит в том, что символ Ђ €вл€етс€ символом формального €зыка, а символ = обозначает отношение на множестве формул.

«аметим что отношение равносильности, есть отношение эквивалентности, т. к. оно рефлексивно, т. е. ј = ј, симметрично ј = ¬ => ¬ = ј и транзитивно ј = ¬, ¬ º => ј = .

ƒл€ любых формул ј, ¬ и справедливы следующие равносильности:

1) ј Ù ¬ = ¬ Ù ј

2) ј Ù ј = ј

3) ј Ù (¬ Ù ) = (ј Ù ¬) Ù

4) ј Ú ¬ = ¬ Ú ј

5) ј Ú ј = ј

6) ј Ú (¬ Ú ) = (ј Ú ¬) Ú

7) ј Ú (¬ Ù ) = (ј Ú ¬) Ù (ј Ú )

8) ј Ù (¬ Ú ) = (ј Ù ¬) Ú (ј Ù )

9) ј Ù (ј Ú ¬) = ј

10) ј Ú (ј Ù ¬) = ј

11)

12)

13)

14) ј = (ј Ù ¬) Ú (ј Ù'¬)

15) ј = (ј Ú ¬) Ù (ј Ú'¬)

16) ј Ђ ¬ = (ј Ѓ ¬) Ù (¬ Ѓ ј)

17) ј Ѓ ¬ ='ј Ú ¬ =

18) ј Ú ¬ ='ј Ѓ ¬ =

19) ј Ù ¬ =

2.2.3. “ождественно - истинные формулы

‘ормула, котора€ истинна независимо от того, какие значени€ принимают встречающиес€ в ней высказывательные (логические) переменные называетс€ тавтологией (или тождественно - истинной формулой).

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

‘ормула называетс€ выполнимой, если на некотором наборе распределени€ истинностных значений переменных она принимает значение 1.

‘ормула называетс€ тождественно-ложной или противоречием, если она ложна независимо от того, какие значени€ принимают встречающиес€ в ней высказывательные переменные, т. е. в таблице истинности, столбец сто€щий под этой формулой состоит полностью из 0.

‘ормула называетс€ опровержимой, если при некотором распределении истинных значений переменных она принимает значение 0.

—ледстви€ из этих определений:

1. ј тавтологи€ тогда и только тогда, когда ј €вл€етс€ неопровержимым;

2. ј тождественно - ложное тогда и только тогда, когда ј €вл€етс€ выполнимой;

3. ј тавтологи€ тогда и только тогда, когда'ј тождественно - ложное;

4. ј тождественно - ложное тогда и только тогда, когда'ј - тавтологи€.

Ќаиболее важными тавтологи€ми €вл€ютс€ (ј, ¬, - произвольные формулы):

2) ј Ú'ј;

3) ј Ѓ ј;

4) ј Ѓ (¬ Ѓ ј);

5) (ј Ѓ ¬) Ѓ ((ј Ѓ ¬) Ѓ (ј Ѓ ));

6) (ј Ѓ (¬ Ѓ )) Ѓ ((ј Ѓ ¬) Ѓ (ј Ѓ ));

7) (ј Ù ¬) Ѓ ј; (ј Ù ¬) Ѓ ¬;

8) ј Ѓ (¬ Ѓ (ј Ù ¬));

9) ј Ѓ (ј Ú ¬); ¬ Ѓ (ј Ú ¬);

10) ('¬ Ѓ'ј) Ѓ (('¬ Ѓ ј) Ѓ ¬);

11) ((ј Ѓ ¬) Ѓ ј) Ѓ ј.

2.3. ‘”Ќ ÷»» јЋ√≈Ѕ–џ Ћќ√» »

2.3.1. јбстрактное определение булевой алгебры

јлгебра <A; +, × , ˉ > называетс€ алгеброй Ѕул€, ≈сли дл€ любых a, b, cÎA ее операции удовлетвор€ют аксиомам:

1. коммутативности

a + b = b + a ;

1.2 ab = ba;

2. ассоциативности

2.1. a + (b + c) = (a + b) + c -;

2.2 a (bc) = (ab) c;

3. дистрибутивности

3.1. a (b + c) = ab + ac ;

3.2 a + (bc) = (a + b) (a + c);

4. идемпотентности

4.1. a + a = a;

4.2 aa = a;

5. инволюции = а;

6. поглощени€

a + (ab) = a ;

6.2. a (a + b) = a;

7. де ћоргана

= 'a'b;

7.2. ='a Ú'b;

8. нейтральности

(a + ) b = b;

8.2. a'a + b = b.

≈сли обозначить элемент 0 = a'a, а 1 = a +'a, тогда выполн€ютс€ равенства:'

=1;' 1 = 0; a + 1 = 1; a × 1 = a; a + 0 = a; a × 0 = 0.

Ѕулева алгебра называетс€ вырожденной, если 0 и 1 совпадают. ¬ таком случае a = a × 1 = a × 0 = 0, следовательно, она не содержит никаких других элементов, а, значит, состоит ровно из одного элемента. ¬с€ка€ невырожденна€ булева алгебра содержит два нейтральных элемента 0 (нулевой элемент) и 1 (единичный элемент).

¬ определении булевой алгебры нет указани€ на существование такой алгебры. ƒл€ –ассмотрим конкретные примеры:

1. ƒвоична€ модель.

Ёто сама€ проста€ модель булевой алгебры. ќна содержит только два элемента 0 и 1, а ее операции ввод€тс€ с помощью таблиц значений.

+   ×     ˉ
   
   

ƒанна€ модель €вл€етс€ наиболее важной дл€ компьютерных приложений.

2. ћодель исчислени€ высказываний.

ј - множество высказываний с логическими операци€ми конъюнкции, дизъюнкции и отрицани€. ќбознача€ противоречие 0, а тавтологию - 1, можно проверить, что данное множество с указанными операци€ми €вл€етс€ булевой алгеброй.

3. “еоретико-множественна€ модель.

ѕусть ј - непустое множество, тогда множество-степень (ј), €вл€етс€ булевой алгеброй, элементами которой служат различные подмножества множества ј. ѕри этом операции + булевой алгебры соответствует объединение множеств, операции ∙ - пересечение множеств, а ¯ - дополнение ј. ѕри такой интерпретации булевой алгебры выполн€ютс€ все ее аксиомы. ћножества ј и Æ €вл€ютс€ соответственно единичным и нулевым элементами данной булевой алгебры.

2.3.2. Ѕулевы функции

–ассмотрим еще одну модель булевой алгебры.

ѕусть ћ - произвольна€ булева алгебра с базисными операци€ми +, ×, ˉ. –ассмотрим множества n - местных функций : f: Mn Ѓ M, т. е. (x1,x2,..,xn) Ѓ f (x1,x2,..,xn).

“огда по определению:

f1 + f2: (x1,x2,..,xn) Ѓ f1 (x1,x2,..,xn) + f2 (x1,x2,..,xn);

f1 × f2: (x1,x2,..,xn) Ѓ f1 (x1,x2,..,xn) × f2 (x1,x2,..,xn);'

.

ћножество, таким образом определенных функций, вместе с введенными операци€ми, €вл€етс€ булевой алгеброй, которое называетс€ булевыми функци€ми.

ƒве посто€нные функции:

0: (x1,x2,..,xn) Ѓ 0;

1: (x1,x2,..,xn) Ѓ 1.

ќни €вл€ютс€ соответственно нулевым и единичным нейтральными элементами.

≈сли булева алгебра ћ двухэлементна, т. е. содержит два элемента 1 и 0, то булевы функции называютс€ двоичными функци€ми.

≈сли в двухэлементной булевой алгебре элементы 1 и 0 интерпретируютс€ как "включено" и "выключено" соответственно, то соответствующие двоичные функции называютс€ переключательными функци€ми.

Ћюбую логическую функцию можно задать таблицей истинности, в левой части которой выписаны все возможные наборы значений ее аргументов, т. е. x1,x2,..,xn, а права€ часть представл€ет собой столбец значений функции, соответствующий этим наборам.

„исло всех возможных различных наборов значений n - переменных логической функции f(x1,x2,..,xn) = 2n (число всех возможных двоичных векторов длины n). „исло всех различных функций n - переменных равно числу возможных расстановок 0 и 1 в столбце с 2n сторонами, т. е. ½2 (n)½= .

ќсобую роль в алгебре логике играют логические функции одной и двух переменных - унарные и бинарные логичекие операции. Ёти функции интерпретируютс€ естественными логическими св€зками "Ќ≈","»","»Ћ»" и т. д. ќни широко используютс€ дл€ описани€ систем, €влений, формализации рассуждений и т. п.

ћножества всех логических функций одной переменной P2 (1) - унарных логических операций представл€етс€ таблицей истинности содержащей 21 строк и ½P2 (1)½= 22 = 4 столбцов,

x
ќбозначение функций x 'x

где , - константы 0 и 1 соответственно.

Ёти функции не завис€т от переменной x и, поэтому, x в этих функци€х называетс€ фиктивной (несущественной) переменной дл€ этих функций.

- повторение переменной.

- отрицание переменной.

ћножество всех логических функций двух переменных P2(2), то есть, бинарных логических операций, представл€етс€ таблицей истинности, содержащей ½P2 (2)½= функций, из которых шесть имеют фиктивные переменные.

ќбозначение функций

ќбозначение функций

- конъюнкци€ (логическое умножение x1 × x2);

- дизъюнкци€ (логическое сложение x1 + x2).

Ћогические функции трех переменных и более обычно задаютс€ формулами, состо€щими из символов переменных и знаков унарных и бинарных операций.

Ќаиболее употребл€емыми €вл€ютс€ операции ˉ, Ú, Ù, Ѓ, Ђ, Å, ½, ¯. «начение любой логической формулы, содержащей знаки этих операций можно вычислить дл€ любого набора значение переменных, использу€ выше приведенные таблицы истинности.

“аким образом, формула, нар€ду с таблицей истинности, служит способом задани€ и вычислени€ логических функций. ¬ общем случае формула описывает логическую функцию как суперпозицию других более простых функций

Ёквивалентными или равносильными называютс€ формулы, представл€ющие одну и ту же функцию. Ёквивалентность формул в алгебре логики обозначаетс€ знаком =. —тандартный метод установлени€ эквивалентности двух формул состоит в следующем:

2. ѕо каждой формуле восстанавливаетс€ таблица истинности;

3. ѕолученные таблицы сравниваютс€ по каждому набору значений переменных. ≈сли наборы совпадают, то формулы эквивалентны.

 
 

2.4. Ќќ–ћјЋ№Ќџ≈ ‘ќ–ћџ Ѕ”Ћ≈¬џ’ ‘”Ќ ÷»…


2.4.1. –азложение булевых функций

ѕри изучении алгебры логики возникает вопрос: люба€ ли функци€ алгебры логики может быть выражена в виде формулы? »ли другими словами: можно ли все булевы функции свести к какому-нибудь меньшему числу "элементарных булевых функций"? ќтвет на этот вопрос - утвердительный. Ќапример, все булевы функции можно представить в виде композиции только трех функций:

1. ƒвухместной конъюнкции x1Ùx2 (логического умножени€ x1 x2);

2. ƒвухместной дизъюнкции x1Úx2 (логического сложени€ x1+x2);

3. ќдноместна€ функци€ отрицани€'x.

ƒл€ решени€ поставленного вопроса вводитс€ обозначение , где - параметр равный 0 или 1.

ќчевидно, что: .

¬ыражение называетс€ литерой. Ћитеры x и'x называетс€ контрарными.

 онъюнктом или элементарной конъюнкцией называетс€ конъюнкци€ литер.

ƒизъюнктом или элементарной дизъюнкцией называетс€ дизъюнкци€ литер.

Ќапример, формулы и - дизъюнкты; формула' и - конъюнкты.

ƒизъюнктивной нормальной формой (ƒЌ‘) называетс€ дизъюнкци€ конъюнктов.

 онъюнктивной нормальной формой ( Ќ‘) называетс€ конъюнкци€ дизъюнктов. Ќапример, формула: x'y Ú y z - ƒЌ‘, а формула (x Ú y Ú z)(x Ú z) y -  Ќ‘;

«аметим, что люба€ формула алгебры логики эквивалентна некоторой ƒЌ‘. ¬ подтверждении этого рассмотрим следующий алгоритм.

јлгоритм приведени€ формулы к ƒЌ‘ заключаетс€ в следующем:

3. ¬ыражаем все логические операции, участвующие в построении формулы через дизъюнкции, конъюнкции и отрицани€, использу€ дл€ этого следующие эквивалентности:

, а также определени€ операций ½, ¯, Å .

4. »спользу€ законы де ћоргана, переносим все отрицани€ к переменным и сокращаем двойные отрицани€ по правилу .

5. »спользу€ закон дистрибутивности , преобразуем формулу так, чтобы все конъюнкции выполн€лись раньше дизъюнкций.

¬ результате применени€ п. 1 - 3, получаем ƒЌ‘ данной формулы.

ѕример. ѕриведем к ƒЌ‘ формулу .

ƒл€ этого проделаем следующее:

1. ¬ыразим логические операции Ѓ, ¯ через операции Ù, Ú,' .

2. ¬ полученной формуле перенесем отрицание к переменным и сократим двойные отрицани€

.

3. »спользу€ закон дистрибутивности, приводим формулу к ƒЌ‘: .

Ћюба€ формула эквивалентна также некоторой  Ќ‘.

јлгоритм приведени€ формулы к  Ќ‘:

Ётот алгоритм включает в себ€ п. 1 - 2 приведени€ формулы к ƒЌ‘, а п. 3 замен€етс€

3'. »спользуем закон дистрибутивности

,

т. е. преобразуем формулы так, чтобы все дизъюнкции выполн€лись раньше, чем конъюнкции.

ѕример. ѕриведем к  Ќ‘ формулу

.

ƒл€ этого выполним:

  1. ѕреобразуем формулу к формуле, не содержащей знака Ѓ:

  1. ¬ полученной формуле перенесЄм отрицание к переменным и сократим двойное отрицание, т. е.

.

  1. ѕо закону дистрибутивности получаем:

ƒанна€ формула €вл€етс€  Ќ‘!

ѕреобразуем далее эту формулу, использу€ закон дистрибутивности:

»спользу€ закон поглощени€, получим:

.

ѕолученна€ в результате формула одновременно €вл€етс€ ƒЌ‘ и  Ќ‘!

2.4.2. —овершенные ƒЌ‘ и  Ќ‘

Ћюба€ булева функци€ может иметь бесконечно много представлений в виде ƒЌ‘ и  Ќ‘.

ќсобое место среди них занимают совершенные ƒЌ‘ (—ƒЌ‘) и совершенные  Ќ‘ (— Ќ‘).

ѕусть (x1,x2,..,xn) - набор логических переменных.

Δ = (d1,d2,..,dn) - набор 0 и 1.

 онституентой нул€ набора Δ называетс€ дизъюнкт, он обозначаетс€  0 (d1,d2,.., dn) = x11-d1Ú x21-d2 Ú xn1-dn.

 онституентой единицы набора Δ называетс€ конъюнкт и обознаетс€  1 (d1,d2,..,dn) = xd1,xd2,..,xdn.

«аметим, что  1 (d1,d2,..,dn) = 1, [ 0(d1,d2,..,dn) = 0], тогда и только тогда, когда x1 = d1, x2 = d2,...,xn = dn.

—ƒЌ‘ называетс€ дизъюнкци€ некоторых конституент единицы, среди которых нет одинаковых.

— Ќ‘ называетс€ конъюнкци€ некоторых конституент нул€, среди которых нет одинаковых.

ƒругими словами, —ƒЌ‘ (— Ќ‘) - это ƒЌ‘ ( Ќ‘), содержащие в каждом конъюнкте (дизъюнкте) все переменные xi из набора (x1,x2,..,xn), которые вход€т ровно один раз либо как xi, либо как'xi.

Ќапример:

‘ормула - конституента единицы  1(1,0,1); формула - конституента нул€  0(0,0,1).

‘ормула x1 - —ƒЌ‘.

‘ормула - — Ќ‘.

‘ормула - не €вл€етс€ —ƒЌ‘.

ƒл€ решени€ задачи нахождени€ —ƒЌ‘ и — Ќ‘ исходной формулы , предварительно рассмотрим разложени€ булевой функции f(x1,x2,..,xn) по k переменным (x1,x2,..,xk) - называетс€ разложением Ўеннона.

ѕерва€ теорема Ўеннона.

Ћюба€ булева функци€ f(x1,x2,..,xn) представима в виде 1-го разложени€ Ўеннона:

ƒоказательство:

«аметим, что , тогда и только тогда, когда . –ассмотрим произвольный набор переменных (a1,a2,..,an) и покажем, что лева€ и права€ части разложени€ на этом наборе принимают одно и то же значение.

Ћева€ часть дает f(a1,a2,..,an).

ѕрава€

јналогично рассужда€ можно прийти ко второй теореме Ўеннона.

¬тора€ теорема Ўеннона.

Ћюба€ булева функци€ f(x1,x2,..,xn) представима в виде 2-го разложени€ Ўеннона:

ѕри k=n дл€ булевой функции f(x1,x2,..,xn) ¹ 0 из первой теоремы Ўеннона получаетс€ ее представление в виде —ƒЌ‘:

.

јналогично дл€ булевой функции f(x1,x2,..,xn)¹1 получаетс€ ее представление в виде — Ќ‘:

.

ѕриведЄнные формулы позвол€ют сформулировать теорему о функциональной полноте:

ƒл€ любой булевой функции f найдетс€ формула , представл€юща€ функцию f.

≈сли f 0, то существует представление ее формулой , наход€щейс€ в —ƒЌ‘:

.

“акое представление единственно с точностью до пор€дка следовани€ конституент единицы.

≈сли f 1, то существует представление ее функции j, наход€щейс€ в — Ќ‘, а именно:

и такое представление единственно с точностью до пор€дка следовани€ конституент нул€.

ѕример. Ќайти —ƒЌ‘ и — Ќ‘ функции f(x,y,z) заданной таблицей истинности:

X
Y
Z
f (x,y,z)

ѕо теореме о функциональной полноте —ƒЌ‘ имеет вид:

,

а — Ќ‘ - .

“аким образом, дл€ нахождени€ —ƒЌ‘ и — Ќ‘ исходной формулы , составл€етс€ ее таблица истинности, а затем по ней строитс€ требуема€ совершенна€ нормальна€ форма.

ѕри этом, име€, например, —ƒЌ‘ дл€ функции f можно составить ее таблицу истинности, а затем по ней найти — Ќ‘ . „асто такой способ бывает трудоемким.

ƒл€ нахождени€ —ƒЌ‘ можно воспользоватьс€ следующим алгоритмом:

  1. —начало формулу привод€т к ƒЌ‘.
  2. «атем преобразуют ее конъюнкты в конституенты единицы с помощью действий:

а) если в конъюнкты вход€т некоторые переменные вместе со своим отрицанием, то этот конъюнкт удал€етс€ из ƒЌ‘;

б) если в конъюнкт одна и та же литера xd входит несколько раз, то удал€ютс€ все литеры кроме одной;

в) если в некоторый конъюнкт x1d1,.., xkdk не входит переменна€ y, котора€ должна входить, то этот конъюнкт замен€етс€ на эквивалентную формулу

x1d1,.., xkdk Ù ( y Ú'y ) и, примен€€ закон дистрибутивности получаем ƒЌ‘, содержащую переменную y. ≈сли недостающих переменных несколько, то дл€ каждой из них к конъюнкту добавл€етс€ формула вида ( y Ú'y );

г) если в полученной ƒЌ‘ имеетс€ несколько одинаковых конституент единицы, то оставл€ют только одну из них. ¬ результате получаетс€ —ƒЌ‘.

ѕример. Ќайти —ƒЌ‘ дл€ ƒЌ‘ .

ƒанна€ формула представл€ет собой ƒЌ‘. ѕосле выполнени€ пунктов 2а) и 2б), получим: . ƒобавл€€ недостающие переменные в конъюнкты, получим:

”дал€€ дублирующую конституенту единицы, получаем окончательно:

.

јлгоритм приведени€  Ќ‘ к — Ќ‘ аналогичен алгоритму приведени€ ƒЌ‘ к —ƒЌ‘.

2.5. ћ»Ќ»ћ»«ј÷»я Ѕ”Ћ≈¬џ’ ‘”Ќ ÷»…

2.5.1. ѕроблема минимизации булевых функций

ƒл€ вс€кой булевой функции такой, что ƒ 0 существует ƒЌ‘. Ёто может быть, например, —ƒЌ‘. ¬ общем случае функци€ алгебры логики может быть представлена в виде ƒЌ‘ не единственным образом. ¬ св€зи с этим возникает возможность выбора более предпочтительной ƒЌ‘, в частности, наиболее простой или минимальной ее реализации.

ƒЌ‘ называетс€ минимальной (ћƒЌ‘), если она содержит по сравнению с другими эквивалентными ей формами минимальное количество букв (при подсчете учитываетс€ каждое вхождение буквы в формулу).

¬ простейшем случае минимизацию можно осуществить, выписав все ƒЌ‘ дл€ этой функции и выбрав среди них минимальную. ќднако такой метод очень трудоемок. –ассмотрим другие способы решени€ поставленной задачи.

Ёлементарна€ конъюнкци€ называетс€ импликантой булевой функции ƒ, если . »мпликанта называетс€ простой импликантой, если после отбрасывани€ любой буквы из получаетс€ конъюнкци€, не €вл€юща€с€ импликантой функции ƒ. ј дизъюнкци€ всех простых импликант функции ƒ называетс€ сокращенной ƒЌ‘ функции ƒ.

ƒЌ‘ называетс€ кратчайшей, если она имеет наименьшее число элементарных конъюнкций среди всех ƒЌ‘, эквивалентных ей. ƒл€ любой заданной функции, сокращенна€ ƒЌ‘ €вл€етс€ единственной. ќднако она может быть избыточной из-за того, что сокращенна€ ƒЌ‘ может содержать лишние импликанты, удаление которых не мен€ет таблицы истинности. ≈сли из сокращенной ƒЌ‘ удалить все лишние импликанты, то полученна€ ƒЌ‘ называетс€ тупиковой. «аметим, что представление функции в тупиковой форме в общем случае неоднозначно. ¬ыбор из всех тупиковых форм формы с наименьшим числом вхождений переменных дает минимальную ƒЌ‘ (ћƒЌ‘).

2.5.2. ћетод  вайна

¬ данном методе дл€ нахождени€ ћƒЌ‘ булевой функции вводитс€ три операции.

1) ќпераци€ полнового склеивани€

2) ќпераци€ неполного склеивани€

̅

3) ќпераци€ элементарного поглощени€

“еорема  вайна. ≈сли исход€ из —ƒЌ‘ произвести все возможные операции неполного склеивани€, а потом элементарного поглощени€, то в результате получаетс€ сокращенное ƒЌ‘, т.е. дизъюнкци€ всех простых импликант.

ѕример. ѕусть функци€ ƒ(x,y,z) задана в форме —ƒЌ‘

j =x̅yz̅ Ú x̅yz Ú xy̅z Ú xyz̅ Ú xyz

“огда произвед€ в два этапа все возможные операции неполного склеивани€, а затем элементарного поглощени€ имеем:

j = x̅y (z̅ Ú z) Ú yz̅ (x̅ Ú x) Ú yz (x̅ Ú x) Ú xz (y̅ Ú y) xy (z̅ Ú z) Ú x̅yz̅ Ú x̅yz Ú xy̅z Ú

xyz̅ Ú xyz = x̅y Ú yz̅ Ú yz Ú xzxy Ú x̅yz̅ Ú x̅yz Ú xy̅z Ú xyz̅ Ú xyz = y (x̅ Ú x) x̅y Ú y (z̅ Ú z) Ú xz Ú x̅y Ú yz̅ Ú yz Ú xz Ú x̅yz̅ Ú x̅yz Ú xy̅z Ú xyz̅ Ú xyz = x̅y Ú y Ú xz Ú x̅y Ú yz̅ Ú yz Ú xy Ú

x̅yz̅ Ú x̅yz Ú xy̅z Ú xyz̅ Ú xyz = y Ú xz

“аким образом сокращенна€ ƒЌ‘ функции ƒ задаетс€ формулой y Ú xz.

Ќа практике при выполнении операций неполного склеивани€ на каждом этапе можно не писать члены, участвующие в этих операци€х, а писать результаты всевозможных полных склеиваний и конъюнкты, не участвующие ни в каком склеивании.

ѕример. ѕусть функци€ ƒ(x,y,z) задана —ƒЌ‘

“огда, произвед€ операции полного склеивани€, а затем элементарного поглощени€ получим

ƒл€ получени€ минимальной ƒЌ‘ из сокращенной ƒЌ‘ используетс€ матрица  вайна, котора€ строитс€ следующим образом: ¬ заголовках столбцов таблицы записываютс€ конституенты —ƒЌ‘, а в заголовках строк простые импликанты из полученной сокращенной ƒЌ‘. ¬ таблице звездочками отмечаютс€ те пересечени€ строк и столбцов, дл€ которых конъюнкт, сто€щий в заголовке строки, входит в конституенту единицы, €вл€ющейс€ заголовком столбца.

ƒл€ последнего примера матрица  вайна имеет вид


  »мпликанты  онституенты единицы
   
   
   

¬ тупиковую ƒЌ‘ выбираетс€ минимальное число простых импликант, дизъюнкци€ которых сохран€ет все конституенты единицы, т.е. находит столбец матрицы  вайна содержит звездочку, сто€щую на пересечении со строкой, соответствующей одной из выбранных импликант.

¬ качестве минимальной ƒЌ‘ выбираетс€ тупикова€, имеюща€ наименьшее число вхождений переменных. ¬ указанном примере тупикова€ и минимальна€ ƒЌ‘ совпадают и имеют вид

¬ силу принципа двойственности дл€ булевых алгебр все приведенные пон€ти€ и рассуждени€ очевидным образом можно преобразовать дл€ нахождени€ минимальных конъюктивных нормальных форм (ћ Ќ‘)

2.5.3. ћинимизаци€ с помощью карт  арно

ѕри числе переменных, не превышающих четырех, наилучшим методом нахождени€ ћƒЌ‘ €вл€етс€ построение карт  арно. ƒанный метод рассмотрим на примере:

Ўаг 1. —оставл€етс€ таблица истинности заданной формулы. ѕусть это будет:

x y z f

¬ этой таблице должны быть представлены все возможные сочетани€ аргументов и соответствующие им значени€ функции.

Ўаг 2. —оставл€етс€ карта  арно. ќна представл€ет собой таблицу, близкую к таблице истинности, но содержащую переменные, расположенные по двум ос€м. ѕри этом переменные должны быть расположены таким образом, чтобы при переходе от каждого квадрата к соседнему мен€лось бы состо€ние только одной переменной.

Ўаг 3. ќтметим на карте овалами группы, содержащие единицы. “ри овала определ€ют логическое выражение

f =xy Ú yzÚ xz

«амечани€.

ƒл€ получени€ простых логических выражений следует объедин€ть единицы в группы, расположенные в 2, 4, 8 и т. п. соседних квадратах.

„ем крупнее блок, - тем проще логика.

—ледует иметь в виду, что в карте  арно дл€ образовани€ блоков единиц стыкуютс€ также ее кра€, например:

  x y
  C D  
0 0

¬ыделенные квадраты карты  арно описываютс€ выражением .

ƒругой пример карты  арно.

  x y
00 10
  z w  
0 0

Ћогическое выражение дл€ данной карты  арно -

2.6. ѕќЋЌќ“ј » «јћ Ќ”“ќ—“№ Ѕ”Ћ≈¬џ’ ‘”Ќ ÷»…

2.6.1. ѕолнота

–анее отмечалось, что люба€ функци€ алгебры логики может быть выражена в виде формулы через элементарные функции x̅, x1 Ù x2 , x1 Ú x2. ќднако, такими свойствами обладают и другие системы элементарных функций.

—истема функций {ƒ12,...ƒn} из P2 (множество всех булевых функций) называетс€ (функционально) полной, если люба€ булева функци€ может быть записана в виде формулы через функции этой системы.

ѕримеры фундаментально полных систем:

1) P2 - множество всех булевых функций - полна€ система

2) —истема {x̅, x1 Ù x2, x1 Ú x2} - полна€ система

«аметим, что система {0,1} не €вл€етс€ полной.

“еорема. ѕусть даны две системы функций из P2 . A = {ƒ1, ƒ2...} и B = {g1, g2...}, относительно которых известно, что система функций A полна и кажда€ ее функци€ выражаетс€ в виде формулы через функции системы B. “огда система B €вл€етс€ полной.

ќпира€сь на эту теорему можно установить полноту р€да систем и тем самым расширить список примеров полных систем.

3) —истема {x̅, x1 Ù x2} €вл€етс€ полной, т.к. известно, что 2) полна и .

4) —истема {x̅, x1 Ú x2} €вл€етс€ полной, т.к. полна система 2) и, кроме того, .

5) —истема {x1 | x2} €вл€етс€ полной, т.к. вз€в за систему A систему 3), а за систему B систему 5) и определив и .

6) —истема {0, 1, x1x2, x1 Å x2} €вл€етс€ полной. ƒл€ этого за систему A беретс€ система 3), а за B - система 6).

ѕри этом: x1 Å 1 = x̅1, x1x2 = x1 Ù x2

ѕриведенные примеры показывают, что существует целый р€д полных систем.  ажда€ из них может быть прин€та за множество элементарных функций. “аким образом, дл€ задани€ булевых функций можно использовать различные €зыки формул.  акой из них €вл€етс€ более удобным, зависит от характера рассматриваемой задачи.

2.6.2. ѕолином ∆егалкина

“.к. формула, построенна€ в системе 6) состоит из констант 0, 1 и функций x1,x2 и x1Åx2, то после раскрыти€ скобок выражение формулы переходит в полином по модулю 2 (полином ∆егалкина).

“еорема.  ажда€ функци€ из P2 может быть выражена при помощи полинома по модулю 2. “.е. в виде ƒ(x1,x2,...,xn) = xi1 xi2 ∙∙∙ xin Å с, где в каждом наборе (i1, i2,...,in) все ik (k=1,...,n) различны и суммирование ведетс€ по несовпадающему набору значений . ѕредставление булевой функции в виде полинома ∆егалкина единственно с точностью до пор€дка следовани€ слагаемых.

ѕолином ∆егалкина называетс€ нелинейным, если он содержит произведени€ переменных, и линейным - если он их не содержат.

ƒл€ получени€ полинома ∆егалкина булевой функции используютс€ аксиомы булевой алгебры и равенства, выражающие операции отрицани€, Ù, Ú через операции Å, ⊙.

x̅ = x Å 1, x Ù y = xy, xÚy = x Å y Å xy

ћожно доказать тождества:

1) x Å y = y Å x; x y = yx

2) (x Å y) Å z = x Å (y Å z); (x y) ∙ z = x ∙(y z)

3) xÅ x = 0; x x = x

4) x (y Å z) = x y Å x z

5) 0 Å x = x

6) 0 ∙ x = 0

7) 1 ∙ x = x

8) x Å x̅ = 1

9) x x̅ = 0

ѕример. ќпределить полином ∆егалкина дл€ функции

ƒ (x, y, z) = x̅ y̅ z Ú x̅yz Ú x y̅ z̅.

»спользу€ выше приведенные формулы, получим: ƒ (x, y, z) = (x̅ y̅ z Å x̅yz Å x̅ y̅z x̅yz) Ú x y̅ z̅ = (x̅ y̅ z Å x̅yz) Ú x y̅ z̅ = x̅ y̅z Å x̅yz Å x y̅ z̅) Å (x̅ y̅ z Å x̅yz) x y̅ z̅ = x̅ y̅ z Å x̅yz Å x y̅ z̅ Å x̅ y̅z x y̅ z̅ Å x̅yz x y̅ z̅ = x̅ y̅ z Å x̅yz Å x y̅ z̅ = x̅z (y Å y̅) Å x y̅ z̅ = x̅ z̅ ∙ 1 Å x y̅ z̅ = x̅ z̅ Å x y̅ z̅ = (x Å 1) z Å x (y Å 1) (z Å 1) = xz Å z Å (xy Å x) (z Å 1) = xz Å z Å xyz Å xz Å xy Å x = x Å z Å xy Å xyz- полином ∆егалкина

«аметим, что если в эквивалентности j Ú ψ = j Å ψ Å формулы j и ψ €вл€ютс€ различными конституентами единицы, то их произведени€ = 0. “огда j Ú ψ = j Å ψ. —ледовательно, дл€ получени€ полинома ∆егалкина из совершенной ƒЌ‘ можно сразу заменить Ú на Å.

2.6.3. «амкнутость

ѕусть A - некоторое подмножество функций из P2. «амыканием A называетс€ множество тех булевых функций, которые представимы в виде формул через функции множества A. «амыкание множества A обозначаетс€ [A]. «аметим, что замыкание инвариантно относительно операций введени€ и удалени€ фиктивных переменных.

ѕримеры: 1) A = P2, т. к. [A] = P2;

2) A = {1, x1 Å x2}. «амыканием этого множества будет класс L всех линейных функций, имеющих вид ƒ(x1,x2,...,xn) = c0 Å c1x1 Å c2 x2 Å...Å cn xn, где ci = 0i1, причем (i =0,...,n)

—войства замыкани€:

1) [A] = A

2) [[A]] = [A]

3) если A1 Ì A2 , то [A1] Ì [A2]

4) [A1 È A2] É [A1] È [A2]

 ласс (множество) A называетс€ (функционально) замкнутым, если [A] = A.

ѕримеры.

1) P2 - замкнутый класс.

2) L - замкнут, т.к. линейное выражение, составленное из линейных выражений, в свою очередь, €вл€етс€ линейным выражением.

¬ терминах замыкани€ и замкнутого класса можно определить полноту (эквивалентную исходному определению), а именно: A - полна€ система, если [A] = P2.

2.6.4. “еорема ѕоста

ќтвет на вопрос о полноте произвольной системы F булевых функций дает теорема ѕоста. ƒл€ ее формулировки ввод€тс€ определени€ классов ѕоста.

1) P0 - класс булевых функций, сохран€ющих 0, т.е. функций ƒ (x1, x2,...,xn), дл€ которых ƒ (0,....0) = 0.

2) P1 - класс булевых функций, сохран€ющих единицу, т.е. ƒ (x1, x2,...,xn), дл€ которых ƒ (1,...,1) = 1

3) S - класс самодвойственных функций

‘ункци€ ƒ+(x1,x2,...,xn) называетс€ двойственной по отношению к функции ƒ(x1,x2,...,xn), если , т.е. функци€, получающа€с€ из исходной путем замены значени€ всех переменных и значений функций на противоположные. ¬ таблице истинности замен€етс€ 0 на 1 и 1 на 0.

Ќапример:

1) (xÚy)+ = xÙy,

2) (xÙy)+ = x,

3) (x̅)+ = x̅.

‘ункци€ ƒ (x1, x2,...,xn) называетс€ самодвойственной, если ƒ+ (x1, x2,...,xn) = ƒ (x1, x2,...,xn).

4) ћ - класс монотонных функций.

Ѕулева функци€ ƒ (x1, x2,...,xn) называетс€ монотонной, если дл€ любых двух наборов (α1, α2,...,αn) и (β1, β2,...,βn) у которых αi βiдл€ всех i = 1,...,n следует, что ƒ(α1, α2,...,αn) ≤ ƒ (β1, β2,...,βn).

5) L - класс линейных функций, т.е. линейных полиномов ∆егалкина.

«аметим, что каждый класс ѕоста замкнут относительно операций замены переменных и суперпозиции, т.е. с помощью этих операций из функций, принадлежащих данному классу можно получить только функции из этого класса.

“еорема ѕоста. ƒл€ того, чтобы система функций F была полной необходимо и достаточно, чтобы она полностью не содержалась ни в одном из п€ти замкнутых классов P0, P1, S, M, L.

ѕример ƒ(x,y) = x | y.

ќпределим, к каким классам ѕоста относитс€ x | y. “.к. ƒ(0,0) = 1, а ƒ(1,1) = 0, то и . “.к. , то . “.к. ƒ(0,0)> ƒ(1,1), то . ѕолином ∆егалкина дл€ данной функции имеет вид 1Å xy, т.е. эта функци€ нелинейна, следовательно .

“аким образом, имеем:

‘”Ќ ÷»я  Ћј——џ
P0 P1 S M L
x|y Ќет Ќет Ќет Ќет Ќет

¬ силу теоремы ѕоста функци€ x|y образует полную систему, т.е. с помощью штриха Ўеффера можно получить любую булеву функцию.

—истема булевых функций называетс€ базисом, если она полна, а удаление любой функции из этой системы делают ее неполной.

 аждый базис содержит не более четырех булевых функций.

ѕримеры:

—ледующие системы булевых функций €вл€ютс€ базисами:

1) {Ù, -}; {Ú, -}; {→, -}; {|}; {↓}; {↔, Ú, 0}; {Å, Ù, ↔}.

Ўирокий набор базисов открывает большие возможности при решении задач минимизации схем устройств дискретного действи€, поскольку из базисных схем с помощью суперпозиций можно составить схему, соответствующую любой базисной функции.

2.7. Ћќ√» ј ѕ–≈ƒ» ј“ќ¬

2.7.1. ѕон€тие предиката

Ћогика предикатов - это логическа€ система, представл€юща€ собой развитие алгебры высказываний. ¬ логике предикатов, нар€ду с высказывани€ми, рассматриваютс€ высказывательные функции или предикаты.

ѕредикатом от n переменных называетс€ выражение P(x1,...,xn), которое становитс€ высказыванием при подстановке в него вместо переменных x1,...,xn их значений из множества M1,...,Mn соответственно.

Ёлементы множеств M1,...,Mn называютс€ предметами, а переменные.x1,...,xn - предметными переменными.

ћножество всех упор€доченных наборов предметов длины n, т.е.



–Ю–Ґ–Э–Ю–®–-–Э–Ш–ѓ | –§–Ю–†–Ь–Р–Ы–ђ–Э–Ђ–- –°–Ш–°–Ґ–-–Ь–Ђ (–Ґ–-–Ю–†–Ш–Ш)


» “≈ќ–»я јЋ√ќ–»“ћќ¬ | ћножествами | »счисление высказываний | »счисление предикатов | —ведение формул к предложени€м | ѕравило резолюции дл€ исчислени€ высказываний | ѕравила резолюции дл€ исчислени€ предикатов | ќпровержение методом резолюции | K-значна€ логика | ѕолнота и замкнутость функций k-значной логики |

© um.co.ua - учбов≥ матер≥али та реферати