$\newcommand{\rank}{\operatorname{rank}}$ Part (a) of Theorem 3.15 is: let $Ax=b$ be a system of $r$ nonzero equations in $n$ unknowns. Suppose that $\rank{A}=\rank{A|b}$ and that $(A|b)$ is in reduced echelon form. Then: $\rank{A}=r$
I believe that nonzero means each row contains a nonzero entry.
The following definition of reduced echelon form is provided in the book:
a) any row containing a nonzero entry precedes any row in which all entries are zero
b) the first nonzero entry in each row is the only nonzero entry in it's column
c) The first nonzero entry in each row is 1 and it occurs in a column to the right of the first nonzero entry in the preceding row
A post which (has a similar issue to me, if not the same issue) was made in 2013. But to me it seems it never recieved an answer that addressed the posters issue with the Theorem.
My issue with this is: consider a matrix which has an equation that is a multiple of the other, but still has a nomempty solution set for $b$, this does not satisfy the first line of the proof which states "since $(A|b)$ is in reduced echelon form, $(A|b)$ must have $r$ nonzero rows."
Consider the following counterexample I've come up with. If I am somehow ignoring a restriction of the theorem please let me know.
$$ A=\left(\begin{matrix} 1 & 7 & 8 \\ 2 & 14 & 16 \\ 3 & 1 & 1\\ \end{matrix}\right) $$ and $$ b=\left(\begin{matrix} 1 \\ 2 \\ 3 \\ \end{matrix}\right) $$ $$ (A|b)=\left(\begin{matrix} 1 & 0 & -\frac{1}{20} & 1 \\ 0 & 1 & \frac{23}{20} & 0 \\ 0 & 0 & 0 & 0 \\ \end{matrix}\right) $$
Clearly $\rank{A}=\rank{A|b}$ (just by looking at the span of the rows or columns). But $\rank{A}\neq3=r$, contradicting Theorem 3.15.
The definition of $(A|b)$ in the book is in Section 3.2, under Inverse of a Matrix, on Page 160 in the 5th Edition:
If $A$ and $b$ are $$A=\left(\begin{array}{ccc} 1&7&8\\ 2&14&16\\ 3&1&1\end{array}\right)\qquad\text{and}\qquad b=\left(\begin{array}{c}1\\ 2\\ 3\end{array}\right),$$ then $(A|b)$ is the $3\times 4$ matrix whose first three columns are the columns of $A$, and whose fourth column is the (unique) column of $B$. That is, $$(A|b) = \left(\begin{array}{ccc|c} 1&7&8&1\\ 2&14&16&2\\ 3&1&1&3 \end{array}\right).$$ This matrix is not in reduced row echelon form, so the theorem does not apply to this system/matrix $A$ and vector $b$.
Note the hypothesis of the Theorem has two clauses:
These two conditions must be met with the given $A$ and $b$.
What you have labeled "$(A|b)$" is a matrix obtained from $(A|b)$ through Gaussian elimination to put it into reduced row echelon form, but is not in fact the matrix $(A|b)$ that the Theorem is talking about.
Note that the theorem doesn't talk about reducing $(A|b)$ into reduced row echelon form; it doesn't say "the reduced row echelon form of $(A|b)$", it doesn't tell you to put $(A|b)$ into reduced row echelon form. It requires that $(A|b)$ already be in reduced row echelon form, with $A$ and $b$ as is.