Учебное пособие: Дискретная мат-ка_УП

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
background image

66

  0 0 1 1 x

  0 1 1 0 x

0   

1   

x

Если

вместо

единиц

поставить

черту

а

нули

не

писать

то

-

гда

эта

же

карта

будет

выглядеть

следующим

образом

x

x

x

Карты

для

четырех

и

пяти

переменных

представлены

ниже

x

x

x

3

  x

4

   

x

x

x

3

x

4

  x

5

   

background image

67

Необходимо

отметить

что

карта

Карно

обладает

  «

зеркаль

-

ной

» 

симметрией

и

все

соседние

компоненты

находятся

на

рас

-

стоянии

один

.  

Представим

функцию

от

четырех

переменных

картой

Карно

Пусть

задана

функция

от

четырех

переменных

в

табличной

фор

-

ме

Покажем

наборы

на

которых

функция

принимает

единичное

значение

Отметим

  

их

на

карте

точками

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Зададим

функцию

в

виде

ДНФ

представим

ее

картой

Карно

.  

F(x

x

2

 x

3

 x

4

) =  x

x

2

 x

4

  

∨ x

1

¬x

3

 x

4

  

∨  x

3

 ¬x

4

  

∨  x

x

2

 ¬x

3

  

СДНФ

вышеприведенной

   

функции

  

запишется

   

F(x

1

,x

2

,x

3

,x

4

) = x

x

2

 x

x

4

  

∨ x

x

2

 ¬x

x

4

∨ x

1

 x

2

¬x

3

¬x

4

∨ x

1

 ¬x

2

¬x

3

 x

4

∨ ¬x

1

¬x

2

 x

3

¬x

4

  

∨ ¬x

1

x

2

 x

3

¬x

4

∨ x

x

2

x

3

¬x

4

∨ x

1

¬

x

2

x

3

¬

x

4

 
 

x

1

  x

2

  x

3

  x

4

  F 

Наборы

0 0 0 0 0   
0 0 0 1 0   
0 0 1 0 0   
0 0 1 1 0   
0 1 0 0 0   
0 1 0 1 1  ¬x

x

2

 ¬x

3

 x

4

0 1 1 0 1  ¬x

x

2

 x

3

 ¬x

4

0 1 1 1 1  ¬x

x

2

 x

3

 x

4

1 0 0 0 0   
1 0 0 1 0   
1 0 1 0 0   
1 0 1 1 0   
1 1 0 0 0   
1 1 0 1 1  x

x

2

 ¬x

3

 x

4

1 1 1 0 0   
1 1 1 1 0   

x

x

      · ·    
 

 ·    

     ·    
x

3

  x

4

   

x

x

·   

      · ·  
 

·   

    · · · ·  
x

3

  x

4

   

background image

68

6.6 

Минимизация

булевых

функций

 
Импликантой 

функции

 f (x

1

,...,x

n

называется

такая

элемен

-

тарная

конъюнкция

К

над

множеством

переменных

 { x

1

,...,x

n

 }, 

что

К

∨ f (x

1

,...,x

n

)  = f (x

1

,...,x

n

). 

Импликанта

называется

 простой

если

при

отбрасывании

любой

буквы

из

К

получается

элементар

-

ная

конъюнкция

не

являющаяся

импликантой

функции

 f.  

Дизъ

-

юнкция

всех

простых

импликант

функции

 f  

называется

  сокра-

щенной 

ДНФ

функции

 f. 

Дизъюнктивная

нормальная

форма

называется

минимальной

если

она

имеет

наименьшее

число

букв

сре

-

ди

всех

эквивалентных

ей

ДНФ

кратчайшей

если

она

имеет

наименьшую

длину

среди

всех

эквивалентных

ей

ДНФ

тупиковой, 

если

отбрасывание

любого

слагаемого

или

бук

-

вы

приводит

к

неэквивалентной

ДНФ

Тупиковая

ДНФ

функции

 f (x

1

,...,x

n

получается

из

сокра

-

щенной

ДНФ

этой

функции

путем

отбрасывания

некоторых

эле

-

ментарных

конъюнкций

Среди

тупиковых

ДНФ

ищется

мини

-

мальная

и

кратчайшая

ДНФ

функции

Существует

несколько

методов

получения

сокращенной

ДНФ

 (

получения

простых

импликант

). 

Метод

Квайна

Для

того

чтобы

можно

было

применить

ме

-

тод

Квайна

необходимо

чтобы

функция

была

приведена

к

виду

СДНФ

Основой

метода

является

закон

склеивания

∧b ∨ a ∧ 

b

 = 

а

, (a 

∨ b) ∧ (a ∨ 

b

 ) = 

а

1. 

Просматриваем

поочередно

пары

конъюнкций

если

воз

-

можно

 – 

производим

склеивание

и

результат

записываем

отдель

-

но

Пары

участвовавшие

в

склеивании

помечаем

.  

2. 

После

выполнения

всевозможных

склеиваний

в

результат

добавляем

те

конъюнкции

которые

не

участвовали

в

склеивании

3. 

Если

не

было

элементарных

конъюнкций

которые

можно

было

склеивать

то

алгоритм

закончен

В

противном

случае

   

пе

-

реходим

к

пункту

1. 

Пример

background image

69

Пусть

задана

функция

  F(x

1

,x

2

,x

3

,x

4

) = x

x

2

 x

x

4

  

∨ x

x

2

 ¬x

x

4

∨  x

1

  x

2

¬x

3

¬x

4

∨  x

1

 ¬x

2

¬x

3

  x

4

∨ ¬x

1

¬x

2

  x

3

¬x

4

   

∨ ¬x

1

x

2

  x

3

¬x

4

∨  x

x

2

x

3

¬x

4

∨ x

1

¬

x

2

x

3

¬

x

4

Произведем

всевозможные

склеивания

в

результате

полу

-

чим

F(x

1

,x

2

,x

3

,x

4

) = x

x

2

x

4

∨   x

x

2

 x

∨ x

x

2

 ¬x

∨ x

¬x

x

4

∨ x

x

2

¬

x

∨ ¬x

1

 x

3

¬x

4

∨  ¬x

2

 x

3

¬x

4

∨ x

2

 x

3

¬x

4

∨ x

1

 x

3

¬x

4

Все

конъюнкции

исходной

функции

участвовали

в

склеива

-

нии

Произведем

склеивание

еще

раз

Конъюнкция

  x

¬x

x

4

в

склеивании

не

участвовала

поэтому

записываем

ее

в

результат

F(x

1

,x

2

,x

3

,x

4

) = x

x

2

∨ x

3

¬x

4

∨  x

¬x

x

4

 
Метод Блейка 
 

Метод

Блейка

позволяет

получить

сокращенную

ДНФ

из

произвольной

ДНФ

и

состоит

в

применении

правил

обобщенного

склеивания

 (xK

1

∨ ¬xK

2

 = xK

1

∨ ¬xK

2

∨    K

1

K

2

и

поглощения

  

(K

1

∨  K

1

K

2

 = K

1

). 

На

первом

этапе

производятся

операции

обобщенного

склеивания

до

тех

пор

пока

это

возможно

На

втором

 – 

операции

поглощения

Пример

Получить

сокращенную

ДНФ

для

функции

  

F(x

1

,x

2

,x

3

) = x

x

2

∨ ¬ x

1

x

3

∨ 

¬x

x

3

После

  

первого

этапа

получим

F(x

1

,x

2

,x

3

) = x

x

2

∨ ¬ x

1

x

3

∨ x

x

3

∨ 

¬x

x

3

∨ x

1

x

3

∨ x

3

После

второго

F(x

1

,x

2

,x

3

) = x

x

2

∨ x

3

Если

функция

задана

в

КНФ

для

получения

сокращенной

ДНФ

нужно

сначала

раскрыть

скобки

пользуясь

законом

дист

-

рибутивности

затем

из

полученной

ДНФ

вычеркнуть

буквы

и

слагаемые

используя

законы

: ¬ x

1

x

1

 =0,  x

1

∨x

1

 = x

1

, x

1

x

1

 = x

1

, K

1

∨  

K

1

K

2

 = K

1

Для

небольших

значений

 n 

сокращенную

ДНФ

функции

 f 

(x

1

,...,x

n

можно

находить

с

помощью

карт

Карно

Объединяя

клетки

соответствующие

единичным

значениям

функции

 f, 

в

background image

70

максимальные

интервалы

и

сопоставляя

им

элементарные

конъ

-

юнкции

получим

сокращенную

ДНФ

Рассмотрим

на

примере

функции

от

четырех

переменных

объединение

в

максимальные

интервалы

Пусть

функция

принимает

единичное

значение

на

всех

на

-

борах

переменных

Функция

тождественно

равна

единице

При

объединении

необходимо

придерживаться

правил

в

объединение

включаются

только

клетки

  «

зеркально

» 

симметричные

относительно

какой

-

либо

из

осей

количество

клеток

соответствует

степени

 2 (2,4, 8, 16,...).  

В

первом

случае

  

результат

объединения

равен

 x

1

во

втором

  – 

x

2

 
 
 
   
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Результат

  – ¬ x

4

¬ x

2

¬x

4

x

x

•  •   

•  •   

•  •   

•  •   

x

3

  x

4

   

x

x

•  •     

•  •     

•  •     

•  •     

x

3

  x

4

   

x

x

•  •  •  •   

•  •  •  •   

x

3

  x

4

   

x

x

•      •   

•      •   

x

3

  x

4

   

Источник: https://files.student-it.ru/previewfile/1197