求解二元场上的一组线性方程组

时间:2014-08-11 14:41:59

标签: matlab wolfram-mathematica

我需要在二元场上求解一组线性方程,即我有一个矩阵M,我需要找到一个向量v,使得Mv = 0(mod 2),其中矩阵M和向量的条目v均为0或1,右侧是所有分量均为偶数的向量。有没有什么好的方法可以在Mathematica或Matlab中编程?

1 个答案:

答案 0 :(得分:0)

如果M的列数不是太大,可以使用蛮力方法:

M = [0 1 0 1; 1 0 0 1; 1 1 1 0]; %// example matrix M
V = (dec2bin(0:2^size(M,2)-1)-'0').'; %// all possible vectors v, as columns of V
ind = all(mod(M*V, 2)==0); %// index of solution vectors
solutions = V(:,ind); %// each column is a solution vector

在此示例中,

solutions =
     0     1
     0     1
     0     0
     0     1