Skip to main content\(\newcommand{\orderof}[1]{\sim #1}
\newcommand{\Z}{\mathbb{Z}}
\newcommand{\reals}{\mathbb{R}}
\newcommand{\real}[1]{\mathbb{R}^{#1}}
\newcommand{\complexes}{\mathbb{C}}
\newcommand{\complex}[1]{\mathbb{C}^{#1}}
\newcommand{\conjugate}[1]{\overline{#1}}
\newcommand{\modulus}[1]{\left\lvert#1\right\rvert}
\newcommand{\zerovector}{\vect{0}}
\newcommand{\zeromatrix}{\mathcal{O}}
\newcommand{\innerproduct}[2]{\left\langle#1,\,#2\right\rangle}
\newcommand{\norm}[1]{\left\lVert#1\right\rVert}
\newcommand{\dimension}[1]{\dim\left(#1\right)}
\newcommand{\nullity}[1]{n\left(#1\right)}
\newcommand{\rank}[1]{r\left(#1\right)}
\newcommand{\ds}{\oplus}
\newcommand{\detname}[1]{\det\left(#1\right)}
\newcommand{\detbars}[1]{\left\lvert#1\right\rvert}
\newcommand{\trace}[1]{t\left(#1\right)}
\newcommand{\sr}[1]{#1^{1/2}}
\newcommand{\spn}[1]{\left\langle#1\right\rangle}
\newcommand{\nsp}[1]{\mathcal{N}\!\left(#1\right)}
\newcommand{\csp}[1]{\mathcal{C}\!\left(#1\right)}
\newcommand{\rsp}[1]{\mathcal{R}\!\left(#1\right)}
\newcommand{\lns}[1]{\mathcal{L}\!\left(#1\right)}
\newcommand{\per}[1]{#1^\perp}
\newcommand{\augmented}[2]{\left\lbrack\left.#1\,\right\rvert\,#2\right\rbrack}
\newcommand{\linearsystem}[2]{\mathcal{LS}\!\left(#1,\,#2\right)}
\newcommand{\homosystem}[1]{\linearsystem{#1}{\zerovector}}
\newcommand{\rowopswap}[2]{R_{#1}\leftrightarrow R_{#2}}
\newcommand{\rowopmult}[2]{#1R_{#2}}
\newcommand{\rowopadd}[3]{#1R_{#2}+R_{#3}}
\newcommand{\leading}[1]{\boxed{#1}}
\newcommand{\rref}{\xrightarrow{\text{RREF}}}
\newcommand{\elemswap}[2]{E_{#1,#2}}
\newcommand{\elemmult}[2]{E_{#2}\left(#1\right)}
\newcommand{\elemadd}[3]{E_{#2,#3}\left(#1\right)}
\newcommand{\scalarlist}[2]{{#1}_{1},\,{#1}_{2},\,{#1}_{3},\,\ldots,\,{#1}_{#2}}
\newcommand{\vect}[1]{\mathbf{#1}}
\newcommand{\colvector}[1]{\begin{bmatrix}#1\end{bmatrix}}
\newcommand{\vectorcomponents}[2]{\colvector{#1_{1}\\#1_{2}\\#1_{3}\\\vdots\\#1_{#2}}}
\newcommand{\vectorlist}[2]{\vect{#1}_{1},\,\vect{#1}_{2},\,\vect{#1}_{3},\,\ldots,\,\vect{#1}_{#2}}
\newcommand{\vectorentry}[2]{\left\lbrack#1\right\rbrack_{#2}}
\newcommand{\matrixentry}[2]{\left\lbrack#1\right\rbrack_{#2}}
\newcommand{\lincombo}[3]{#1_{1}\vect{#2}_{1}+#1_{2}\vect{#2}_{2}+#1_{3}\vect{#2}_{3}+\cdots +#1_{#3}\vect{#2}_{#3}}
\newcommand{\matrixcolumns}[2]{\left\lbrack\vect{#1}_{1}|\vect{#1}_{2}|\vect{#1}_{3}|\ldots|\vect{#1}_{#2}\right\rbrack}
\newcommand{\transpose}[1]{#1^{t}}
\newcommand{\inverse}[1]{#1^{-1}}
\newcommand{\submatrix}[3]{#1\left(#2|#3\right)}
\newcommand{\adj}[1]{\transpose{\left(\conjugate{#1}\right)}}
\newcommand{\adjoint}[1]{#1^\ast}
\newcommand{\set}[1]{\left\{#1\right\}}
\newcommand{\setparts}[2]{\left\lbrace#1\,\middle|\,#2\right\rbrace}
\newcommand{\card}[1]{\left\lvert#1\right\rvert}
\newcommand{\setcomplement}[1]{\overline{#1}}
\newcommand{\charpoly}[2]{p_{#1}\left(#2\right)}
\newcommand{\eigenspace}[2]{\mathcal{E}_{#1}\left(#2\right)}
\newcommand{\eigensystem}[3]{\lambda&=#2&\eigenspace{#1}{#2}&=\spn{\set{#3}}}
\newcommand{\geneigenspace}[2]{\mathcal{G}_{#1}\left(#2\right)}
\newcommand{\algmult}[2]{\alpha_{#1}\left(#2\right)}
\newcommand{\geomult}[2]{\gamma_{#1}\left(#2\right)}
\newcommand{\indx}[2]{\iota_{#1}\left(#2\right)}
\newcommand{\ltdefn}[3]{#1\colon #2\rightarrow#3}
\newcommand{\lteval}[2]{#1\left(#2\right)}
\newcommand{\ltinverse}[1]{#1^{-1}}
\newcommand{\restrict}[2]{{#1}|_{#2}}
\newcommand{\preimage}[2]{#1^{-1}\left(#2\right)}
\newcommand{\rng}[1]{\mathcal{R}\!\left(#1\right)}
\newcommand{\krn}[1]{\mathcal{K}\!\left(#1\right)}
\newcommand{\compose}[2]{{#1}\circ{#2}}
\newcommand{\vslt}[2]{\mathcal{LT}\left(#1,\,#2\right)}
\newcommand{\isomorphic}{\cong}
\newcommand{\similar}[2]{\inverse{#2}#1#2}
\newcommand{\vectrepname}[1]{\rho_{#1}}
\newcommand{\vectrep}[2]{\lteval{\vectrepname{#1}}{#2}}
\newcommand{\vectrepinvname}[1]{\ltinverse{\vectrepname{#1}}}
\newcommand{\vectrepinv}[2]{\lteval{\ltinverse{\vectrepname{#1}}}{#2}}
\newcommand{\matrixrep}[3]{M^{#1}_{#2,#3}}
\newcommand{\matrixrepcolumns}[4]{\left\lbrack \left.\vectrep{#2}{\lteval{#1}{\vect{#3}_{1}}}\right|\left.\vectrep{#2}{\lteval{#1}{\vect{#3}_{2}}}\right|\left.\vectrep{#2}{\lteval{#1}{\vect{#3}_{3}}}\right|\ldots\left|\vectrep{#2}{\lteval{#1}{\vect{#3}_{#4}}}\right.\right\rbrack}
\newcommand{\cbm}[2]{C_{#1,#2}}
\newcommand{\jordan}[2]{J_{#1}\left(#2\right)}
\newcommand{\hadamard}[2]{#1\circ #2}
\newcommand{\hadamardidentity}[1]{J_{#1}}
\newcommand{\hadamardinverse}[1]{\widehat{#1}}
\newcommand{\lt}{<}
\newcommand{\gt}{>}
\newcommand{\amp}{&}
\definecolor{fillinmathshade}{gray}{0.9}
\newcommand{\fillinmath}[1]{\mathchoice{\colorbox{fillinmathshade}{$\displaystyle \phantom{\,#1\,}$}}{\colorbox{fillinmathshade}{$\textstyle \phantom{\,#1\,}$}}{\colorbox{fillinmathshade}{$\scriptstyle \phantom{\,#1\,}$}}{\colorbox{fillinmathshade}{$\scriptscriptstyle\phantom{\,#1\,}$}}}
\)
Dedication Dedication
To my wife, Pat.