Matlab 提供了一种在 GF(2^m) 中求 Ax=b 的特定解的方法。这是链接http://www.mathworks.in/help/comm/ref/gflineq.html但它只提供了一种解决方案。我怎样才能找到其余的解决方案?
例如:GF(4)中A=[1 0 2 0 0 1],GF(4)中b=[0]。 x=A\b 给出 [0 0 0 0 0 0]' 作为解。我还知道 [0 1 2 3 2 3]' 是另一种解决方案。但除了全零之外我无法得到任何其他解。如何在Matlab中找到所有解?
最佳答案
一般来说,
矩阵方程 Ax=b 的解不一定存在,即使存在,也不一定是唯一的。就您的情况而言,您知道存在多种解决方案。在这种情况下,您有一个“特定解决方案”,基本上是解决 Ax=b 的任何 x,现在,为了获得多个解决方案,您可以继续从 A 的零空间添加向量。
证明:
设 x 为特定解,y 位于 A 的零空间中(零空间中的任何向量都可以)。我们知道Ax=b。我们还知道Ay=0。将它们相加,A(x+y)=b。
TL;灾难恢复解决方案:
求 GF 中矩阵的零空间,并将零空间的任意向量添加到特定解中以生成更多解。
我没用过但是there seems to be a code on MATLAB Central它找到 GF 中矩阵的零空间。
关于matlab - 在有限域域中查找 A.x = b 中 x 的 "all solutions",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21956218/