Simplifying bitwise expressions

1.7k Views Asked by At

Using various methods it is possible to simply boolean expressions consisting of boolean operators and binary variables.

In programming languages another closely related set of operators exists: bitwise operators (on Wikipedia). These operators take a sequence of binary variables $a=(a_1, ... a_n)$ and operate on the sequence as a whole.

E.g.: $a$ AND $b = (a_1\land b_1, ..., a_n \land b_n)$

Common operators are bitwise NOT, AND, OR, XOR and various left and right bit-shifts.

Do there exist methods to simplify arbitrary bitwise expressions? (Or alternatively certain classes of bitwise expressions?)