Количество основных импликантов и EPI

Моя ТА решает эту проблему, число простых импликантов (PI) для

f(a,b,c,d)= Sigma m(0,2,4,5,8,10,11,13,15) 

равно 7, а количество Essential PI (EPI) равно 1. как это будет рассчитываться? Я думаю, что это неправильно. Есть идеи?

Мое решение:

введите здесь описание изображения


person Community    schedule 23.02.2015    source источник
comment
Как вы думаете, что неправильно? Как вы думаете, каково количество PI и EPI?   -  person Unn    schedule 24.02.2015
comment
@Unn, 7 и 1, но я не мог это вычислить :)   -  person    schedule 24.02.2015
comment
@Унн, ты не поможешь мне?   -  person    schedule 25.02.2015
comment
Да, у меня просто не было возможности сделать фотографии (этот ответ лучше всего объясняется картинками :))   -  person Unn    schedule 26.02.2015


Ответы (1)


Чтобы предоставить вам больше возможностей для обучения, я сделаю процесс определения PI и EPI графически для другой функции, похожей на вашу. Вы можете использовать тот же метод, чтобы затем решить числа для функции, которую вы указали в своем вопросе. Обратите внимание, что существует несколько способов определения PI и EPI, но мне нравится метод Kmap, так как он хорошо иллюстрирует концепцию. [ПРИМЕЧАНИЕ: после того, как ОП добавил свои решения, я изменил свой ответ, включив в него исходную функцию]

Пример:

Допустим, у нас есть эта функция:

g(a,b,c,d) = Sigma m(0,4,7,9,10,11,12,13,15)

И мы хотим определить количество Prime Implicants (PI) и Essential Prime Implicants (http://en.wikipedia.org/wiki/Implicant).

Первым шагом является создание Kmap (http://en.wikipedia.org/wiki/Karnaugh_map) для данной функции (поскольку она задана как сумма минимальных членов, заполните место в Kmap единицами, которые образуют двоичное представление данного списка членов):

Kmap раскрыт

Теперь нам нужно найти самые большие покрытия для всех членов Kmap. Количество этих самых больших покрытий равно количеству PI, и каждое самое большое покрытие является простой импликантой (т. е. импликантой или частичной функцией, которую нельзя упростить с помощью какой-либо другой импликанты, чтобы сформировать более общую импликанту или большее покрытие). Такое покрытие выглядит так:

Kmap Covered

Теперь, когда у нас есть покрытие, мы можем сосчитать эти самые большие покрытия. Их 6, значит, есть 6 ПИ, и эти покрытия представляют их. Теперь, чтобы получить количество EPI, нам нужно посмотреть, сколько терминов в нашей Kmap покрыто одним и только одним покрытием. Глядя на термины, это 0 (покрыты только синим), 7 (покрыты только зеленым), 9 (покрыты только оранжевым) и 10 (покрыты только голубым). Таким образом, имеется 4 ЭП.

Теперь попробуйте этот метод на своей задаче и посмотрите, какие числа вы получите!

[Обновление: вот информация о вашем решении]

И ты Кмап и покрытие мне кажутся хорошими:

OP Kmap

Как видно из вашего покрытия, всего имеется 7 покрытий самого большого размера; 6 по диагонали и 1 большая, закрывающая четыре угла. Таким образом, как описано выше, имеется 7 ИП. Чтобы получить EPI, нам нужно увидеть, сколько из этих PI однозначно охватывают один из терминов, т. е. найти термины, охватываемые одним и только одним из наших PI, и это будут EPI. Глядя на Kmap, только углы с терминами 8 и 2 покрываются исключительно одним PI (т. е. покрываются 4 угла). Хотя есть два термина, они имеют одинаковое покрытие сохранения, и помните, что покрытия являются импликантами. Таким образом, поскольку существует только одно покрытие, включающее термины, покрытые одним и только одним покрытием, существует только 1 EPI. (Итак, ваш TA был правильным; 7 PI и 1 EPI).

person Unn    schedule 26.02.2015
comment
Не могли бы вы обновить свой ответ, если мое решение верно, замените и напрямую разрешите его, чтобы утвердить его. - person ; 26.02.2015
comment
Сообщение было обновлено, чтобы включить объяснение исходной проблемы. - person Unn; 26.02.2015