np.linalg.solve¶
- np.linalg.solve(x)[source]¶
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([[19, 0, 13, 6], [22, 6, 18, 8], [15, 13, 13, 0], [23, 0, 16, 27]], order=31) In [4]: b = GF.Random(4); b Out[4]: GF([ 9, 19, 3, 26], order=31) In [5]: x = np.linalg.solve(A, b); x Out[5]: GF([30, 26, 4, 27], order=31) In [6]: A @ x Out[6]: GF([ 9, 19, 3, 26], 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([[11, 25, 18, 5], [ 5, 1, 6, 7], [ 5, 19, 17, 6], [17, 2, 12, 21]], order=31) In [10]: B = GF.Random((4,2)); B Out[10]: GF([[ 8, 12], [ 0, 9], [28, 17], [12, 12]], order=31) In [11]: X = np.linalg.solve(A, B); X Out[11]: GF([[21, 20], [28, 21], [21, 16], [25, 19]], order=31) In [12]: A @ X Out[12]: GF([[ 8, 12], [ 0, 9], [28, 17], [12, 12]], order=31)