Умножение отрицательных членов в булевой алгебре? - PullRequest
0 голосов
/ 16 декабря 2009

Я сейчас изучаю булеву алгебру. Я читал, что для XOR мы можем изменить выражение

  1. (A + B). ¬ (A + B)

  2. = A.¬A + A.¬B + B.¬A + B.¬B

  3. = A.¬B + B.¬A

Я могу понять это, но я не уверен, как бы я продолжил умножать выражение вроде

  • (A + B). (¬A + ¬B).

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

Ответы [ 5 ]

3 голосов
/ 16 декабря 2009

Ваше первое выражение не является xor, попробуйте сделать эту замену:

 Z = A+B 
2 голосов
/ 16 декабря 2009

Вы можете бросить такую ​​вещь в Wolfram Alpha. Вот что я сделал:

http://www.wolframalpha.com/input/?i=truth+table+(a+or+b)+and+(not+a+or+not+b)

Пожалуйста, нажмите на ссылку, чтобы посмотреть результаты! Эта таблица истинности выглядит так, как вы думали, должна или нет?

1 голос
/ 16 декабря 2009
1 голос
/ 16 декабря 2009

Вы думаете, что таблица правды отличается?

Попробуйте оценить это сами.

0 голосов
/ 17 декабря 2013

Ответы здесь мне не понятны. Я полагаю, что в том, как вы напечатали № 1, есть опечатка. Это противоречие:

  1. (A + B) * -(A + B)
  2. (A + B) * -A * -B
  3. -A * -B * A + -A * -B * B
  4. 0

Если бы № 1 был (A + B) * (-A + -B) вместо:

  1. (A + B) * (-A + -B)
  2. -A * (A + B) + -B * (A + B)
  3. -A * A + -A * B + -B * A + -B * B
  4. -A * B + -B * A

Вот как вы распространяете И по ИЛИ.

...