Упростить (a + b) XOR (c + b)

Можно ли упростить (А + б) XOR (с + б)? Каков вклад б к конечному результату?
Обратите внимание, что я смешиваю булеву алгебру с арифметикой, исключающее является побитовым эксклюзивом или на соответствующих битах и + стандартное дополнение к 8 битам, которое переносится при переполнении.
a, b, c — беззнаковый символ;

6

Решение

Мы можем использовать SMT-решатель, чтобы проверить нашу гипотезу о том, что ваша формула может быть упрощена. Вы можете отправиться на http://rise4fun.com:

x = BitVec('x', 8)
y = BitVec('y', 8)
z = BitVec('z', 8)

print simplify((x + z) ^ (y + z))

и результат, антиклиматически, таков:

x + z ^ y + z

Это означает, что ваша формула не может быть упрощена.

2

Другие решения

Других решений пока нет …