This document lists typos and mistakes in the textbooks "Introduction to Linear and Matrix Algebra" and "Advanced Linear and Matrix Algebra" by Nathaniel Johnston.
-----------------------------------------
INTRODUCTION TO LINEAR AND MATRIX ALGEBRA
-----------------------------------------
- Page ix (preface): the reference to "Exercise 1.2.2.1" should be "Exercise 1.2.21".
- Page x (preface, digital version only): In the final paragraph, the phrases "Section 1.1", "Section 1.3", and "Section 1.4" link to those sections in this book. They should not link to anything; they are referring to those sections of the sequel book.
- Exercise 1.2.5: this exercise should reference Definition 1.2.4, not 1.2.1. (thanks to Jonathan Balsam)
- Exercise 1.2.15(b): the final line of the solution in the back of the book should not have a complex conjugation bar over v dot w. (thanks to Marc Paolella)
- Exercise 1.2.17(a): the solution in the back of the book says that we can conclude that the length of ||w||*v - ||v||*w is 0. It should say that the length of c*v + d*w is 0 for some scalars c and d. (thanks to Jonathan Balsam)
- Exercise 1.3.18(b): the solution in the back of the book has a subscript "n,j" that should be "m,j". (thanks to Marc Paolella)
- Example 1.4.1(a): the word "rotation" (first word on page 37) should be "rotating". (thanks to Jonathan Balsam)
- Example 1.4.1(b): the vectors in the right-hand-side of the displayed graph should be rotated clockwise by 90 degrees (T(e_1) should point to the right and T(e_2) should point to the left). (thanks to Andrew Rahaman)
- Theorem 1.4.1: the proof references Theorem 1.3.2. While this is is technically correct, a better/clearer reference would have been Theorem 1.3.5. (thanks to Michael Mott)
- Page 50, line 4: "...the derivation from Figure 1.18" should say "...the derivation from Figure 1.19". (thanks to Jonathan Balsam)
- Page 50, right before Example 1.4.10: The matrix R_{zx}^\theta that is displayed is actually R_{xz}^\theta. The correct R_{zx}^\theta matrix has the signs of the off-diagonal "sin(\theta)" terms swapped. (thanks to Jonathan Balsam)
- Exercise 1.4.21: There is an ambiguity in this question regarding which direction (clockwise or counter-clockwise) the angle theta goes between u and v. It goes counter-clockwise from v to u (or clockwise from u to v). (thanks to Jonathan Balsam)
- Exercise 1.4.24(c): the solution in the back of the book should say that u = (-sqrt(3),1,-sqrt(3))/sqrt(7), not u = (sqrt(3),1,sqrt(3))/sqrt(7). (thanks to Jonathan Balsam)
- Exercise 2.1.6(a): the solution in the back of the book is (-30, 3, 60, 7, 0) + z(-51, 3, 106, 5, 6)/6, which should be (-30, 3, 60, 7, 0) + z(-51, 2, 106, 5, 6)/6. (thanks to Michael Mott)
- Theorem 2.2.4: conditions "e" and "f" of this theorem are missing a parenthesis (i.e., they should be "e)" and "f)"). (thanks to Marc Paolella)
- Exercise 2.2.7(b): this exercise should require n >= 3 (if n = 2 then it is not true when a = -b). (thanks to J Smak on Youtube)
- Example 2.4.7: both mentions of "A" near the bottom should be "A^T". (thanks to Marc Paolella)
- Exercise 2.4.1(e): the solution in the back of the book should also mention that both of these vectors are indeed in the subspace (i.e., both vectors satisfy x+y-z = 0). (thanks to Marc Paolella)
- Exercise 2.5.7 has two "b" parts. The second one should be part "c". (thanks to Dominic Haidar)
- Section 2.B, final sentence of page 191: "...we noconclude that the optimal value oftice that the value of z = 4......" (!!) should be "...we now conclude that the optimal value of z = 4..." (thanks to Marc Paolella)
- Example 2.D.4: the first sentence of solution (a) should say that p(0) = 3, p(1) = -1, p(2) = -3, and p(3) = 9. (thanks to Ujjwal Tyagi)
- Section 3.1, final sentence of page 250: "...of the hard that..." should be "...of the hard work that..." (thanks to Andrew Rahaman)
- Exercise 3.1.24(b): near the end of the solution, "R_{theta-pi/2}" has a subscript that should instead be a superscript: "R^{theta-pi/2}". (thanks to Marc Paolella)
- Example 3.2.6(b): the minor m_{1,3} should be 3, not 2, and m_{2,3} should be -4, not 5. As a result, the cofactors c_{1,3} should be 3, not 2, and c_{2,3} should be 4, not -5. (thanks to Luis Serra)
- Exercise 3.2.5 has two "a" parts. The second one should be part "c". (thanks to Piko Mone on Youtube)
- Theorem 3.3.1: near the end of the proof, the line "(a_{1,1} - lambda)(a_{2,2} - lambda)...(a_{2,2} - lambda)" should be "(a_{1,1} - lambda)(a_{2,2} - lambda)...(a_{n,n} - lambda)". (thanks to Marc Paolella)
- Section 3.3, paragraph right before Example 3.3.11: "...taking the conjugate transpose of the..." should be "...taking the complex conjugate of the..." (no "transpose"). (thanks to Andrew Rahaman)
- Example 3.3.16(b): in the statement "...the corresponding eigenspaces are [v,] {e_1}, ...", the "[v,]" should not be there. (thanks to Marc Paolella)
- Theorem 3.3.3: in the first line of the proof, "nullity" should be "null". (thanks to Marc Paolella)
- Exercise 3.3.15(b): the solution in the back of the book has the equation x^*B^*y = b_{j,i}; there should be a complex conjugation bar over b_{j,i}. (thanks to Marc Paolella)
- Exercise 3.4.6 has parts (f)-(j) mislabeled. They should be labeled (e)-(i). (thanks to Keagan Finnigan-MacEachern)
- Exercise 3.4.14(a): "...also implies that B this is..." should be "...also implies that this is...". (thanks to Marc Paolella)
- Page 343: in the middle of the page, the period at the end of a sentence is mysteriously floating on its own line. (thanks to Marc Paolella)
- Theorem 3.B.1: the conjugate transpose in the statement and proof of this theorem could be changed to a regular (non-conjugate) transpose. (thanks to Marc Paolella)
- Theorem 3.B.2: in the first paragraph of the proof, it should say that S^n is the set of unit vectors with non-negative entries (it currently says "positive" entries). (thanks to Marc Paolella)
- Exercise 3.B.4(d): "power iteration" should be changed to "if power iteration". (thanks to Marc Paolella)
- Example 3.B.9: "Use as when..." should be "Just as when..." (thanks to Marc Paolella)
- Theorem 3.C.2: the text "[-0.4cm]" should not be there. (thanks to Marc Paolella)
- Page 384: "since a rotating" should be "since rotating". (thanks to Marc Paolella)
- Page 386: in the margin note near the bottom, the first word "we" should be capitalized.
- Theorems 3.D.2 and 3.D.3: the statements of these theorems should say that k is the degree of the recurrence relation. (thanks to Marc Paolella)
- Page 391 (proof of Theorem 3.D.2): in the display math environment, "when i <= k-1" should be "when n <= k-1". (thanks to Marc Paolella)
- Page 395 (proof of Theorem 3.D.3): in the display math environment, there is a sum with j going from 0 to k-1, which should be going from 0 to m-1. This erroneous upper bound persists throughout the rest of the calculation. Also, there are two places in the text of the proof that refer to q_{k-1}, which should be q_{m-1}. (thanks to Marc Paolella)
- Page 427: the margin note should say "...if the first column in which they differ..." (the word "column" is missing).
----------------------------------
ADVANCED LINEAR AND MATRIX ALGEBRA
----------------------------------
- Page 31, line 2: v should be a member of V, not a member of S. (thanks to Marc Paolella)
- Page 31, paragraph starting with "Finally": the "B <- C" subscript should be "C <- B". (thanks to Marc Paolella)
- Page 45, first display math environment: The subscript on [S] should be "B <- D", not "D <- B". (thanks to Marc Paolella)
- Section 1.3.4, first line: "...on R^n let us..." should be "...on R^n lets us..." (thanks to Marc Paolella)
- Remark 1.3.1: "When we walk..." should be "When we talk..." (thanks to Marc Paolella)
- Corollary 1.4.4: The text below this corollary incorrectly says "Proof of Theorem 1.2.6". (thanks to Marc Paolella)
- Exercise 2.1.9: the solution says that the characteristic polynomial is p_A(t) = t^3 - 3t^2 + 4, but it is actually p_A(t) = -t^3 + 6t^2 - 32. (thanks to Logan Pipes and Marlee Webb)
- Exercise 3.2.15: the "side note" says that rank(det) <= 20 when n = 5, but this is not true. At the time of the book's writing, the best known upper bound when n = 5 was actually rank(det) <= 100. This was later improved to rank(det) <= 52 in https://arxiv.org/abs/2301.06586