Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Информатика] Конюнкция, дизьюнкция ...


Автор: VingradFan 19.10.2006, 19:06
Всем привет!
помогите сделать задание из Лаб.раб. в инст. покажите хоть на 1 примере как это делается, второй я по образцу какнить сделаю 
8. Упростите выражение, используя минимум законов логических операций: 

Автор: Kuvaldis 20.10.2006, 00:11
VingradFan, 
Существует два основных способа минимизации булевых функций: 
1. Сложный, но работает всегда - через СДНФ (совершенная дизъюнктивная нормальная форма). Для данного случая это - из пушки по воробьям
2. Эквивалентными преобразованиями.

Используем 2 способ:
Обозначения:
* - конъюнкция
+ - дизъюнкция
! - отрицание
Необходимые логические законы:
1. Правило Де-Мограна
 ! (a * b) = ! a + ! b
Аналогично 
  ! (a + b) = ! a * ! b 

2. Правило поглощения
 a + a * b = a

Доказательство:
a + a * b = a * 1 + a * b = a * (1 + b) = a * 1 = a

3. Правило двойного отрицания
! ! a = a

4. A + ! A = 1 

Теперь непосредственно примеры.
1.
! x + ! (x + y) + ! (y * ! (x * y) ) = ! x + ! x * ! y + ! y + !! (x * y) = 
= ! x + ! x * ! y + ! y + x * y = [группируем слагаемые дизъюнкций] = 
= (! x + ! x * ! y ) + ( ! y + x * y ) = ! x + ! y + x * y = ! (X * Y) + X * Y = 1

2. Аналогичным образом получается в ответе 0.

Если построить таблицы истинности, то они подтвердят ответ, полученный теоретическим путем
 

Автор: VingradFan 20.10.2006, 00:45
большое спасибо за объяснение smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)