Только NAND против AND и НЕ единственная разница?

Когда вы упрощаете что-то до этих двух, есть ли между ними действительно какая-то разница?

Например:

( (B'C)' * (B'D')' )'

Это и только NAND? Если да, то можно ли его преобразовать только в И и НЕ? Или наоборот? Я запутался в разнице между ними.


person James Mitchell    schedule 26.11.2017    source источник
comment
Непонятно, что вы спрашиваете. NAND(x, y) точно эквивалентен NOT(AND(x, y)) (по определению), но неясно, как это относится к примеру в вашем вопросе.   -  person Oliver Charlesworth    schedule 26.11.2017
comment
@OliverCharlesworth Есть ли символ для NAND или это просто (AB)?   -  person James Mitchell    schedule 26.11.2017
comment
Зависит от вашей системы обозначений. См., например. en.wikipedia.org/wiki/Sheffer_stroke   -  person Oliver Charlesworth    schedule 26.11.2017


Ответы (1)


Ваша формула:

( (B'C)' * (B'D')' )'

Предположим, что ' является отрицанием, а * и сопоставление используются для соединения; дизъюнкция не показана, но будет обозначена +. Давайте перепишем формулу, используя вместо этого not и and:

not (not (not B and C) and not (not B and not D))

Давайте также укажем, какие not идут с какими and:

not (not (not B and C) and not (not B and not D))
^1   ^2         ^2     ^1  ^3         ^3

Таким образом, мы можем исключить три not и заменить соответствующие and тремя nand:

(not B nand C) nand (not B nand not D)

Мы сразу видим, что исходная формула не была выражена с использованием только nands, поскольку удаление пар nots и ands с использованием определения nand не устраняло не-nand операторов.

Однако исходная формула состоит только из and и not. Поскольку любую формулу можно написать только с помощью nands, эта может. Ленивый способ - просто использовать not x = x nand x три раза, чтобы удалить каждый из оставшихся not.

person Patrick87    schedule 27.11.2017