@dysfun the matrix-vector multiply is:
b[0]*A[0,0]+b[1]*A[0,1]+...+b[7]*A[0,7]
b[0]*A[1,0]+b[1]*A[1,1]+...+b[7]*A[1,7]
...
b[0]*A[7,0]+b[1]*A[7,1]+...+b[7]*A[7,7]
but since this is operating in GF(2) every element is 0 or 1 (a single bit) so a multiply by 0 is 0 and only 1*1 gets you a 1, thus each multiply is just and AND, and the sum is mod 2 so it turns into a parity calculation.
addition is xor so the vector addition is simply a 1-bit xor.
and that's basically it.
as for bit twiddles...
Comments
Displaying 0 of 0 comments