русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Минимизация функций


Дата добавления: 2013-12-24; просмотров: 831; Нарушение авторских прав


Минимизация функций в классе ДНФ

Проблема простейшего представления функций в заданном базисе связана с изучением свойств функций этого базиса. В настоящее время существенные результаты получены для базиса, состоящего из отрицания, конъюнкции и дизъюнкции. Именно этот базис и будет рассматриваться в дальнейшем.

Любая функция алгебры логики может быть записана в виде СДНФ. То, что запись в СДНФ часто является неэкономной, видно из примера.

ПримерПример 1. Пусть задана СДНФ

`xx2 (xx1,xx2,xx3)=xx1xx2xx3Úxx1xx2` xx3 Úxx1`xx2xx3Ú xx1`xx2`xx3 Ú`xx1xx2xx3.

Преобразуем эту СДНФ. Добавим еще один конъюнктивный член x1x2x3. Это добавление не меняет данной функции, так как xxÚxx=xx,

ff(xx1,xx2,xx3)=xx1xx2xx3Úxx1xx2`xx3Úxx1`xx2xx3Úxx1`xx2`xx3Úxx1xx2xx3Ú`xx1xx2xx3.

Преобразуем это выражение, используя равенства: aa`bb Ú aabb=aa (операция склеивания) и aa×bbÚaa=aa, aa×bbÚ`aa=bbÚ`aa (операция поглощения).

Получим:

ff(xx1,xx2,xx3)=xx1xx2(xx3Ú`xx3)Úxx1`xx2(xx3Ú`xx3)Úxx2xx3(xx1Ú`xx1)=xx1xx2Úxx1`xx2Úxx2xx3.

Аналогично предыдущему делаем дальнейшие преобразования:

ff(xx1,xx23)=xx1(xx2Ú`xx2)Úxx2xx3=xx1Úxx2xx3.

Если к исходной ДНФ применять лишь операции склеивания и поглощения, то наступит момент, когда эти преобразования окажутся уже невозможными. В этом случае получим тупиковую ДНФ (ТДНФ). Среди множества ТДНФ содержится и МДНФ. Получая всевозможные тупиковые ДНФ и сравнивая их по числу букв, можно найти все минимальные формы для данной функции. Величина необходимого перебора определяется числом элементов класса тупиковых ДНФ для функции алгебры логики, зависящей от n аргументов, и может быть очень большой.





<== предыдущая лекция | следующая лекция ==>
Дизъюнктивные нормальные формы и теорема о разложении | Метод минимизации по картам Карно


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.648 сек.