How to Solve this Boolean Equations?

355 Views Asked by At

I have a Boolean Equations, described as below, $$\neg \mathbf{x} = \mathbf{M}\cdot \neg(\mathbf{M} \cdot \mathbf{x})$$ in which $\mathbf{M}$ is an $n\times n$ Boolean matrix, and $\mathbf{x}$ is an $n\times 1$ Boolean column vector. The product of two Boolean matrices $A_{m\times k}$ and $B_{k\times n}$ is $C_{m\times n}$, defined by $$c_{ij}=\bigvee_{h=1}^{k}(a_{ih}\wedge b_{hj})$$

Now, given $\mathbf{M}$, the task is to find all solutions of the equations.

Would you like to give me some idea?

1

There are 1 best solutions below

3
On

As I noted in the comment, if one considers the boolean values to be the field of two elements $\Bbb F_2$, then your boolean matrices are just regular matrices over that field. $\vee$ becomes addition modulo $2$, and $\wedge$ becomes multiplication modulo $2$. Your definition of boolean matrix multiplication is just ordinary multiplication between matrices. Thus your matrices are linear operators on $\Bbb F_2^n$, which means that $$M(a\mathbf x + b\mathbf y) = aM\mathbf x + bM\mathbf y.$$ So your equation becomes $$\mathbf 1 - \mathbf x = M(\mathbf 1 - M\mathbf x) = M\mathbf 1 - M^2\mathbf x$$ $$M^2\mathbf x - \mathbf x = M\mathbf 1 - \mathbf 1$$ $$(M^2 - I)\mathbf x = (M - I)\mathbf 1$$ $$(M - I)(M + I)\mathbf x = (M - I)\mathbf 1$$ If $M - I$ is invertible, then $$(M + I)\mathbf x =\mathbf 1$$ If $M + I$ is also invertible, then $$\mathbf x = (M + I)^{-1}\mathbf 1$$