Similarily, we can encode the function of each button in the same manner. For example, pressing button 1 will flip the value of button 1, 2 and 6. Then, the (25x1) column vector representing the function would have a value of *1 (odd)* in position 1, 2 and 6, while the remaining elements have a value of *0 (even)*. Let * b_{i}* denote the column vectors corresponding to the function of

*i*button. By joining all

^{th}

*b***into a 25x25 matrix,**

_{i}**B**, namely:

(eq1) **B **= { ** b_{i}** } for i in [ 1 .. 25],

then, we can write the solution equation as:

(eq2) **B . x = p**

*,*

where * x* is the unknown (25x1) column vector, with binary elements representing the pressing pattern that will clear the board (

*1*= press,

*0*= ignore ). Anyone attempts to solve this equation will quickly realized that: 1) the matrix

**B**is symmetrical, and 2) matrix

**B**is singular,

**it only has 23 degree of freedom!**( <= important! ). Base on these two properties, we can solve the equation by ignoring any two buttons, and since it is symmetrical, we can also ignore any two corresponding

*p*In mathematical terms, can we select any arbutrary subset of

_{i}.**B**,

*and*

**x****of rank 23. Lets ignore the first two buttons, thus, remove {**

*p**}, and let the subspace be denoted by prime, then eq2 can be rewritten as:*

**b**x_{1}, b_{2},_{1}, x_{2}, p_{1}, p_{2}(eq3) **B' . x' = p'**

To solve ** x'** , we just need to find the inverse of

**B'**, namely:

(eq4) * x' = *(

**B**'

^{-1}

**B**' )

**.**

*=*

**x**'**B**'

^{-1}

**.**

**'**

*p*Perform Echelon row operation on < **B' ** | **I ** > gives us the inverse matrix, **B**'^{-1}. It will have its elements in fraction less than 1. Now, this is the tricky part, where need to apply reasoning to make sense out of it. Since we operate in binary mode, (ie press or not press), the norm of the matrix in meaningless. So, we make **B**' ^{-1}**^{ }**fraction-less by multiplying its elements with the largest common denominator,

*k*. It is 33 in this case. Then, we can enforce all integer elements into the number space of 0 and 1, by modulation of 2. Lets refer the the final matrix as C

**'**, then:

(eq5) C'_{i,j} = (*k ***B**'^{-1})_{i,j} mod 2

And apply the same reasoning to * x'*, we get the solution as:

(eq6) *x' _{j}* = ( C'

_{i,j}*

*p'*) mod 2.

_{i }_{}

TaDa! Solution!

Please read the next section.