Pure reference. Every entry links back to the page that derives it, and the when you use it column is
the reason the entry is here at all — a formula you cannot place is a formula you will not reach for.
Symbols follow Notation and Symbols:
lowercase italic scalars, lowercase bold vectors, uppercase bold matrices, calligraphic sets.
| result | statement | when you use it |
|---|
| general form | j=1∑naijxj=bi,i=1,…,m | writing a problem down before doing anything |
| matrix form | Ax=b | everywhere |
| columns form | j=1∑nxjaj=b | reframing solvability as reachability — the most useful identity in the chapter |
| three outcomes | none, exactly one, or infinitely many — never two | classifying a system before solving it |
| why not two | A(λx+(1−λ)y)=b whenever both are solutions | proving the trichotomy in one line |
| geometry | each equation is a hyperplane; the solution set is their intersection | building intuition in 2-D and 3-D |
| result | statement | when you use it |
|---|
| matrix | A∈Rm×n, entry aij in row i, column j | always row index first |
| addition | (A+B)ij=aij+bij, same shape required | element-wise, unlike multiplication |
| multiplication | cij=l=1∑nailblj, inner dims must match | composition of two linear maps |
| shape rule | (m×n)(n×k)=(m×k) | catching a bug before running anything |
| Hadamard product | cij=aijbij — a different operation | it is what A * B computes in NumPy |
| columns are images | j-th column of A is Aej | the idea that makes multiplication obvious |
| associativity | (AB)C=A(BC) | reordering a product chain to cut cost |
| distributivity | (A+B)C=AC+BC | expanding a derivation |
| identity | ImA=AIn=A, and Im=In | note the two different sizes for non-square A |
| non-commutativity | AB=BA; shapes can even differ | never reorder a product |
| inverse | AA−1=I=A−1A, square only, unique when it exists | undoing a bijective map |
| 2×2 inverse | A−1=a11a22−a12a211[a22−a21−a12a11] | hand calculation; the denominator is the determinant |
| transpose | (A⊤)ij=aji | reshaping to make dimensions agree |
| symmetric | A=A⊤, square only | covariance matrices, Gram matrices, Hessians |
(AB)−1(AB)⊤(A⊤)⊤(A+B)⊤(A−1)⊤(A+B)−1A,B symmetric=B−1A−1=B⊤A⊤=A=A⊤+B⊤=(A⊤)−1=A−1+B−1⇒AB symmetrictrue — the order flipstrue — the order flips here tootruetruetrueFALSE−2+41=21+41FALSE−but A⊤A always is
| result | statement | when you use it |
|---|
| elementary transformations | exchange two rows; multiply a row by λ=0; add one row to another | each is reversible, so the solution set never changes |
| augmented matrix | [A∣b] | avoiding rewriting variable names every step |
| row-echelon form | zero rows at the bottom; each pivot strictly right of the one above | reading off rank, consistency, free variables |
| reduced row-echelon form | additionally every pivot is 1 and alone in its column | reading the solution straight off |
| basic / free variables | pivot columns give basic; the rest are free | counting the solution set’s dimension |
| free variable count | n−rk(A) | predicting the answer’s shape before solving |
| general solution | x=xp+λ1n1+⋯+λknk | the shape of every solution set in the book |
| why it works | A(xp+n)=b+0 | one line, and it explains the whole decomposition |
| minus-1 trick | extend the RREF so the diagonal holds only 1 and −1; the −1 columns are a null-space basis | reading a kernel basis without further elimination |
| inversion | [A∣In]⇝[In∣A−1] | it is n systems at once, which is why inv costs more than solve |
| pseudo-inverse | A+=(A⊤A)−1A⊤ | do not compute it this way — it squares the condition number |
| cost | Gaussian elimination is O(n3) | why direct methods stop at thousands, not millions |
| large systems | stationary iterative (Jacobi, Gauss–Seidel) or Krylov (conjugate gradients) | huge sparse problems; needs a norm, hence §3.1 |
Group (G,⊗) — four axioms:
closureassociativityneutral elementinverse element∀x,y∈G:x⊗y∈G(x⊗y)⊗z=x⊗(y⊗z)∃e∀x:x⊗e=e⊗x=x∀x∃y:x⊗y=y⊗x=e
Abelian adds x⊗y=y⊗x. General linear group GL(n,R): the invertible
n×n matrices under multiplication — a group, and not Abelian.
Vector space (V,+,⋅) with +:V×V→V and
⋅:R×V→V:
1.(V,+) is an Abelian group2.λ(x+y)=λx+λyand(λ+ψ)x=λx+ψx3.λ(ψx)=(λψ)x4.1⋅x=x
| result | statement | when you use it |
|---|
| no vector product | ab is undefined | only ab⊤∈Rn×n and a⊤b∈R exist |
| subspace test | U=∅ with 0∈U; closed under scaling; closed under addition | all three, every time |
| trivial subspaces | V itself and {0} | edge cases in proofs |
| homogeneous solutions | {x:Ax=0} is a subspace | it is the kernel |
| inhomogeneous solutions | {x:Ax=b}, b=0, is not | it is an affine subspace (§2.8) |
| intersections | the intersection of arbitrarily many subspaces is a subspace | building subspaces from constraints |
| converse | every subspace of Rn is the solution space of some Ax=0 | subspaces and homogeneous systems are the same objects |
| bounded sets | a bounded set is never a subspace unless it is {0} | distinguishing subspaces from convex sets (§7.3) |
linear combination:v=i=1∑kλixi
dependent⟺∃λi not all zero with i∑λixi=0
independent⟺i∑λixi=0 forces every λi=0
| shortcut | statement | when you use it |
|---|
| no third option | every set is dependent or independent | — |
| zero vector | any set containing 0 is dependent | the cheapest test; do it first |
| duplicates | two identical vectors force dependence | second cheapest |
| multiples | xi=λxj for any λ forces dependence | sign of λ is irrelevant |
| the characterisation | nonzero vectors with k≥2 are dependent iff one is a combination of the others | the conceptual statement |
| counting bound | m vectors in Rk with m>k are dependent | no arithmetic needed |
| pivot-column test | write as columns, reduce; independent iff every column is a pivot column | the reliable method |
| ordering caveat | which vectors survive depends on the order offered; the count does not | comparing two people’s answers |
| coefficient shortcut | if xj=Bλj with B‘s columns independent, then {xj} independent iff {λj} is | testing combinations of combinations cheaply |
| result | statement | when you use it |
|---|
| span | the set of all linear combinations; always a subspace | manufacturing a subspace |
| generating set | spans all of V | necessary but not sufficient for a basis |
| basis | a linearly independent generating set | the four characterisations below |
| dimension | the common size of every basis, dim(V) | it is well defined precisely because the size is invariant |
| subspace dimension | dim(U)≤dim(V), with equality iff U=V | no same-dimension proper subspaces |
| dimension caveat | it counts directions, not components | a line in R1000 is one-dimensional |
| basis of a subspace | spanning vectors as columns → row-echelon form → keep the pivot columns | extracting a basis from a spanning set |
| dimension formula | dim(U1∩U2)=dimU1+dimU2−dim(U1+U2) | predicting an intersection’s size before computing it |
Four equivalent characterisations of a basis B:
1.B is a basis2.B is a minimal generating set3.B is a maximal linearly independent set4.every x has a unique representation x=i∑λibi
Rank rk(A) — the number of independent columns, which equals the number of
independent rows:
| property | statement | when you use it |
|---|
| row = column rank | rk(A)=rk(A⊤) | switching whichever is easier to count |
| image dimension | dim(Im(A))=rk(A) | how much the map can reach |
| invertibility | A∈Rn×n invertible ⟺rk(A)=n | deciding without computing an inverse |
| solvability | Ax=b solvable ⟺rk(A)=rk(A∣b) | classifying a system in two rank calls |
| null-space dimension | dim(ker(A))=n−rk(A) | the free-variable count |
| full rank | rk(A)=min(m,n) | not the same as invertible |
| near-dependence | rank cannot see it; use np.linalg.cond | the practical diagnostic on real data |
Φ linear⟺∀x,y,λ,ψ:Φ(λx+ψy)=λΦ(x)+ψΦ(y)
consequence:Φ(0)=0— the cheapest disqualifier
| result | statement | when you use it |
|---|
| isomorphism | linear and bijective | “the same space in disguise” |
| endomorphism | Φ:V→V linear | Chapter 4’s subject |
| automorphism | Φ:V→V linear and bijective | invertible endomorphism |
| isomorphism theorem | finite-dimensional V,W isomorphic ⟺dimV=dimW | why Rm×n≅Rmn |
| coordinates | x=∑iαibi with B an ordered basis | ordering matters — coordinates are a list |
| transformation matrix | column j of AΦ = coordinates of Φ(bj) in C | constructing the matrix of a map |
| coordinate mapping | y^=AΦx^ | matrices map coordinates, not vectors |
| basis change | A~Φ=T−1AΦS | read right to left: translate in, map, translate out |
| equivalence | A~=T−1AS | general basis change |
| similarity | A~=S−1AS | endomorphisms; similar implies equivalent, not conversely |
| composition | AΨ∘Φ=AΨAΦ | why multiplication is composition |
| kernel | ker(Φ)={v:Φ(v)=0}⊆Rn (the width) | what gets destroyed |
| image | Im(Φ)=Φ(V)⊆Rm (the height) | the column space; what can be reached |
| injectivity | Φ injective ⟺ker(Φ)={0} | the all-pairs test collapses to one system |
| rank-nullity | dim(kerΦ)+dim(ImΦ)=dim(V) | a conservation law; the fundamental theorem of linear mappings |
| three-way equivalence | if dimV=dimW: injective ⟺ surjective ⟺ bijective | square matrices only — check one, get three |
| similar invariants | similar matrices share determinant, trace and eigenvalues | the fastest check on any basis change |
| result | statement | when you use it |
|---|
| affine subspace | L=x0+U with U a subspace | a subspace slid off the origin |
| not a subspace | excludes 0 whenever x0∈/U; not closed under either operation | it fails all three subspace tests |
| parametric equation | x=x0+λ1b1+⋯+λkbk | describing a line, plane or hyperplane |
| containment | L⊆L~⟺U⊆U~ and x0−x~0∈U~ | comparing two descriptions of possibly-equal sets |
| line | k=1 | one support point, one direction |
| plane | k=2 | two independent directions |
| hyperplane | k=n−1 | codimension one, so it has two sides — the decision boundary |
| inhomogeneous solutions | empty, or an affine subspace of dimension n−rk(A) | §2.3’s general solution, renamed |
| single equation | ∑iλixi=b with some λi=0 defines a hyperplane | one equation removes one dimension |
| converse | every k-dimensional affine subspace of Rn solves some system with rk=n−k | affine subspaces and inhomogeneous systems coincide |
| affine mapping | ϕ(x)=a+Φ(x), a the translation vector | what a “linear layer” actually computes |
| decomposition | every affine map is uniquely a linear map followed by a translation | separating the two parts |
| preserved | dimension and parallelism | why affine maps keep flat things flat |
| augmentation trick | append 1 to x, absorb a into an extra column | why design matrices have a column of ones |
If you keep only six facts from Chapter 2:
1.Ax=b asks whether b is a combination of A’s columns.2.The columns of A are Aej — where the basis vectors go.3.Every solution set is xp+ker(A).4.rk(A) decides invertibility, solvability, and both dimensions.5.dim(kerΦ)+dim(ImΦ)=dim(V).6.Affine=linear+a translation, and that translation is the bias term.
| you want | use | not |
|---|
| solve a square system | np.linalg.solve(A, b) | inv(A) @ b |
| least squares, any shape | np.linalg.lstsq(A, b, rcond=None) | the normal equations — they square κ |
| the pseudo-inverse itself | np.linalg.pinv(A) | forming (A⊤A)−1A⊤ |
| rank | np.linalg.matrix_rank(A) | counting nonzero singular values by eye |
| how close to singular | np.linalg.cond(A) | the rank — it cannot see near-dependence |
| matrix product | A @ B | A * B, which is the Hadamard product |
| a genuine column vector | x.reshape(-1, 1) | x.T on a 1-D array, which does nothing |
| compare two results | np.allclose(a, b) | a == b |
Next: Analytic Geometry — adds
length, angle and distance to everything above.