Matan Ziv-Av <ma...@svgalib.org> writes: > Please read what you reply to.
I assure you I read and understood Omer's and your posts. If you go back to my reply you will surely realize that at no point I contradicted you. I just pointed out that you didn't need to divide (by det(A)==1), which would lead to the problem you correctly point out. > The suggestion was to treat the matrix as a real matrix, so the > calculations will not be modulo 2. > > If you take the, for example, matrix > [ [ 0, 0, 1, 1 ], > [ 0, 1, 0, 1 ], > [ 1, 0, 0, 1 ], > [ 1, 1, 1, 0 ] ] > > The inverse, in floating point numbers, will be something like > [ [ -0.33333333333333331, -0.33333333333333331, 0.66666666666666663, > 0.33333333333333331 ], > [ -0.33333333333333331, 0.66666666666666663, -0.33333333333333331, > 0.33333333333333331 ], > [ 0.66666666666666663, -0.33333333333333331, -0.33333333333333331, > 0.33333333333333331 ], > [ 0.33333333333333331, 0.33333333333333331, 0.33333333333333331, > -0.33333333333333331 ] ] To get that result you divided (by the determinant). All I said was you did not need to. Apply mod 2 to all the (integer[*]) addition results, and your determinant will be 1 (over Z2) and not 3. Friends again? ;-) [*] I strongly suspect you read too much into Omer's use of the word "real" (also used in the OP). -- Oleg Goldshmidt | p...@goldshmidt.org _______________________________________________ Linux-il mailing list Linux-il@cs.huji.ac.il http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il