Materi
Sistem persamaan linear selalu jatuh ke salah satu dari tiga kemungkinan: tepat satu penyelesaian, tidak ada penyelesaian, atau tak hingga banyaknya. Bentuk eselon memperlihatkan yang mana. Baris [0 0 0 | c] dengan c tidak nol berarti 0 = c, sehingga sistemnya tidak konsisten dan tidak punya penyelesaian. Baris [0 0 0 | 0] tidak memberi informasi apa pun; bila akibatnya persamaan yang tersisa lebih sedikit daripada variabel, ada variabel bebas dan penyelesaiannya tak hingga banyaknya. OpenStax Precalculus menyebut kedua keadaan itu sistem tidak konsisten dan sistem bergantung.
Rank matriks adalah banyaknya baris pivot pada bentuk eselonnya, dan numpy menghitungnya dengan np.linalg.matrix_rank. Kolom-kolom sebuah matriks disebut bebas linear bila tidak satu pun dapat ditulis sebagai kombinasi kolom lainnya, dan itu terjadi tepat ketika rank sama dengan banyak kolom. Aturan ringkasnya: bila rank A lebih kecil daripada rank [A | b], tidak ada penyelesaian; bila keduanya sama dengan banyak variabel, penyelesaiannya tunggal; bila keduanya sama tetapi kurang dari banyak variabel, tak hingga banyaknya. Dokumentasi np.linalg.solve memakai syarat yang sama: matriksnya harus persegi dan berrank penuh, yaitu semua kolomnya bebas linear.
x + 2y = 3 [1 2 | 3]
2x + 4y = 8 → [0 0 | 2] B2 ← B2 − 2·B1 → 0 = 2: tidak ada penyelesaian
x + 2y = 3 [1 2 | 3]
2x + 4y = 6 → [0 0 | 0] → y bebas, x = 3 − 2y: tak hingga banyaknya
import numpy as np
A = np.array([[1, 2], [2, 4]])
np.linalg.matrix_rank(A) # 1
np.linalg.matrix_rank(np.column_stack([A, [3, 8]])) # 2