Моя ТА решает эту проблему, число простых импликантов (PI) для
f(a,b,c,d)= Sigma m(0,2,4,5,8,10,11,13,15)
равно 7, а количество Essential PI (EPI) равно 1. как это будет рассчитываться? Я думаю, что это неправильно. Есть идеи?
Мое решение:
Моя ТА решает эту проблему, число простых импликантов (PI) для
f(a,b,c,d)= Sigma m(0,2,4,5,8,10,11,13,15)
равно 7, а количество Essential PI (EPI) равно 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. Количество этих самых больших покрытий равно количеству PI, и каждое самое большое покрытие является простой импликантой (т. е. импликантой или частичной функцией, которую нельзя упростить с помощью какой-либо другой импликанты, чтобы сформировать более общую импликанту или большее покрытие). Такое покрытие выглядит так:
Теперь, когда у нас есть покрытие, мы можем сосчитать эти самые большие покрытия. Их 6, значит, есть 6 ПИ, и эти покрытия представляют их. Теперь, чтобы получить количество EPI, нам нужно посмотреть, сколько терминов в нашей Kmap покрыто одним и только одним покрытием. Глядя на термины, это 0 (покрыты только синим), 7 (покрыты только зеленым), 9 (покрыты только оранжевым) и 10 (покрыты только голубым). Таким образом, имеется 4 ЭП.
Теперь попробуйте этот метод на своей задаче и посмотрите, какие числа вы получите!
[Обновление: вот информация о вашем решении]
И ты Кмап и покрытие мне кажутся хорошими:
Как видно из вашего покрытия, всего имеется 7 покрытий самого большого размера; 6 по диагонали и 1 большая, закрывающая четыре угла. Таким образом, как описано выше, имеется 7 ИП. Чтобы получить EPI, нам нужно увидеть, сколько из этих PI однозначно охватывают один из терминов, т. е. найти термины, охватываемые одним и только одним из наших PI, и это будут EPI. Глядя на Kmap, только углы с терминами 8 и 2 покрываются исключительно одним PI (т. е. покрываются 4 угла). Хотя есть два термина, они имеют одинаковое покрытие сохранения, и помните, что покрытия являются импликантами. Таким образом, поскольку существует только одно покрытие, включающее термины, покрытые одним и только одним покрытием, существует только 1 EPI. (Итак, ваш TA был правильным; 7 PI и 1 EPI).