np.linalg.solve
- np.linalg.solve(x)
Solves the system of linear equations.
References
Examples
In [1]: GF = galois.GF(31) # Ensure A is full rank and invertible In [2]: while True: ...: A = GF.Random((4,4)) ...: if np.linalg.matrix_rank(A) == 4: ...: break ...: In [3]: A Out[3]: GF([[24, 20, 25, 17], [21, 15, 17, 9], [ 6, 11, 11, 29], [19, 6, 27, 15]], order=31) In [4]: b = GF.Random(4); b Out[4]: GF([12, 11, 27, 12], order=31) In [5]: x = np.linalg.solve(A, b); x Out[5]: GF([10, 12, 16, 0], order=31) In [6]: A @ x Out[6]: GF([12, 11, 27, 12], order=31)
In [7]: GF = galois.GF(31) # Ensure A is full rank and invertible In [8]: while True: ...: A = GF.Random((4,4)) ...: if np.linalg.matrix_rank(A) == 4: ...: break ...: In [9]: A Out[9]: GF([[29, 5, 20, 20], [ 7, 9, 16, 27], [26, 2, 10, 20], [20, 16, 26, 12]], order=31) In [10]: B = GF.Random((4,2)); B Out[10]: GF([[24, 24], [19, 16], [ 7, 27], [13, 10]], order=31) In [11]: X = np.linalg.solve(A, B); X Out[11]: GF([[26, 2], [23, 25], [18, 4], [25, 2]], order=31) In [12]: A @ X Out[12]: GF([[24, 24], [19, 16], [ 7, 27], [13, 10]], order=31)