Как упростить f = x'yz + xy'z + xyz'?

Я работаю над упрощением выражения f = x'yz + xy'z + xyz' + xyz. На самом деле, это может быть и не это выражение. Вопрос в следующем: упростите логическое выражение для системы голосования, система такова: три человека голосуют за нескольких кандидатов, и два или более человека должны согласиться (верно) с кандидатом, чтобы пройти. Поэтому я думаю, что ответ будет xy + yz + xz, но я не могу понять процесс между ними. Кто-нибудь может объяснить?

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


person Alex    schedule 01.04.2019    source источник
comment
Диаграмма - это ответ или вопрос? Где ты застрял?   -  person shree.pat18    schedule 01.04.2019
comment
tl;dr: я не могу понять, почему x'yz + xy'z + xyz' + xyz = xy + yz + xz (редактировать: английский не мой родной язык, так что извините, если мне было трудно понять, что я имел ввиду)   -  person Alex    schedule 01.04.2019


Ответы (2)


Из закона идемпотента/тождества у нас есть x + x = x и, следовательно, xyz + xyz = xyz. Применяя этот принцип, мы можем переписать ваше выражение как:

 f = x'yz + xy'z + xyz' + xyz
=> f = x'yz + xy'z + xyz' + xyz + xyz + xyz --OR with xyz twice without affecting the value
=> f = x'yz + xyz + xy'z + xyz + xyz' + xyz --Rearrange
=> f = yz (x + x') + xz (y + y') + xy(z' + z) --Group
=> f = yz + xz + xy --Since x+x' = 1

Тем не менее, как ясно показано на диаграмме, вы можете просто взять И вместе с каждой парой входных данных и ИЛИ их вместе, чтобы получить тот же результат. Делая это, вы гарантируете, что:

  • Если любые 2 из 3 входных данных верны, ваш общий результат верен.
  • Когда все 3 верны, результат все еще верен

Преимущество такого выражения заключается в том, что вы можете просто сосредоточиться на каждой паре входных данных одновременно, не беспокоясь о влиянии третьего.

person shree.pat18    schedule 01.04.2019
comment
вау, я не думал о том, чтобы приблизиться к этому таким образом! все результаты, которые я нашел в Интернете, включали изменение чего-либо на выражение xor/xnor, и я был действительно сбит с толку. спасибо, это намного легче понять! - person Alex; 01.04.2019

Простой способ без логических рассуждений

Напишите таблицу истинности. Для трех входов есть 2 ^ 3 = 8 строк.

Четыре строки соответствуют заданным терминам в вашем выражении суммы продуктов.

Введите восемь значений вашего выражения в карту Карно:

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

Сгруппируйте соседние 1-члены в блоки, как показано. Пара ячеек может быть объединена в больший блок, если они отличаются только одним входом. Таким образом, блоки удваивают количество ячеек и уменьшают количество входных данных на единицу на каждом этапе слияния.

Каждый из получившихся блоков соответствует одному импликантному термину в свернутом выражении.

Рисовать карту и находить блоки можно автоматически, используя хороший онлайн-инструмент Марбургского университета.

person Axel Kemper    schedule 01.04.2019