Linear Algebra and Matrix Analysis, 2nd Ed

Welcome yet again. This page focuses on a revised edition of my linear algebra textbook "Applied Linear Algebra and Matrix Analysis", henceforth referred to as "ALAMA", which is available in hardcopy or online at Springer-Verlag as of June, 2018. A few comments are in order:

Why this text revision? I'm still committed to a balanced blend of theory, application and computation. As I noted in the preface for the first edition of ALAMA: "My own experience ranges from pure mathematician (my first research was in group and ring theory) to numerical analyst (my current speciality). I've seen linear algebra from many viewpoints and I think they all have something to offer. My computational experience makes me like the use of technology in the course -- a natural fit for linear algebra -- and computer exercises and group projects also fit very well into the context of linear algebra. My applied math background colors my choice and emphasis of applications and topics. At the same time, I have a traditionalist streak that expects a text to be rigorous, correct and complete. After all, linear algebra also serves as a bridge course between lower and higher level mathematics."

But times change, don't they? The notion of mathematical experimentation as an important part of a linear algebra course has become commonplace, and I continue to support this perspective. I took this revision as an opportunity to incorporate the many helpful corrections and suggestions for improvement of the text that I received from instructors who used the text; for that I thank all of them! A contemporary perspective on linear algebra has to incorporate some of the extraordinary recent technological developments that depend heavily on concepts from linear algebra, and indeed these developments reinforce the centrality of this discipline. A prime example is the PageRank technology that was developed by Google. This technology found a place in every chapter but one of the revised text. Likewise, digital signal processing (DSP) finds a place in three chapters of the revised text. A fairly substantial introduction to linear programming is found in Chapter 3. A complete proof of the Jordan Canonical Form theorem can be found in Chapter 5. Even a brief introduction to Fourier analysis and its connections to linear algebra (needed for an understanding of some of the underlying principles of DSP) can be found in Chapter 6. My point in mentioning these examples is that instructors with widely differing objectives will find an effective tool in the revised ALAMA. As I remark in the Introduction:

"Tastes vary, so there is ample material in the text to accommodate different interests. One could increase emphasis on any one of the theoretical, applied, or computational aspects of linear algebra by the appropriate selection of syllabus topics. The text is well suited to a course with a three hour lecture and lab component, but computer-related material is not mandatory. Every instructor has her/his own idea about how much time to spend on proofs, how much on examples, which sections to skip, etc.; so the amount of material covered will vary considerably. Instructors may mix and match any of the optional sections according to their own interests and needs of their students, since these sections are largely independent of each other. While it would be very time-consuming to cover them all, every instructor ought to use some part of this material. "

The Springer site for this textbook is
Applied Linear Algebra and Matrix Analysis

About my experiences teaching linear algebra: When I arrived at the University of Nebraska in 1968 as a fresh PhD, among my very first teaching assignments was a linear algebra course. From the perspective of an abstract algebraist (my thesis was titled "Groups with Category"), my first instincts were to treat the course an introduction to higher level algebra and as a bridge course to higher level rigorous math courses. Consequently, algebra concepts and proof understanding were primary emphases of the course. Because computing facilities of any kind were not readily available, exercises that I assigned tended to be somewhat theoretical (like testing concept understanding, simple proofs) or what was commonly referred to as "toy problems", such as elementary matrix arithmetic or finding eigenvalues of a very small matrix. As humble calculators evolved into programmable calculators with computing power and became more commonly available (SR-52, HP-29C, TI-81), I grew fascinated by computer programming concepts and my interests gradually shifted towards applied mathematics, mathematical modeling and numerical analysis. Likewise, the topics I emphasized in a linear algebra course evolved. In the late 70’s, 1980’s and early 1990’s I explored the use of these calculators as adjunct tools for matrix calculations and very elementary project assignments. As a co-founder and administrator of a NextStep lab in 1991, and in later years as director of a more general networked math departmental computer lab, I was able to introduce and refine the notions of group projects and the applications of software tools (Mathematica, Maple, Matlab, Octave, etc) into my teaching of linear algebra.

The point I want to make is this: I wrote the textbook ALAMA in such a way that it is possible to use it to teach linear algebra from any one of these perspectives by a suitable choice of topics and problem assignments. Computing assignments or projects are not prerequisites. The theoretician in me required that my text be mathematically rigorous and complete — there is even a full proof of the Jordan Canonical Form theorem in some optional material of the revised text. But rigor was not to be at the expense of important applications and mathematical experimentation which other of my interests mandated. Nor was it to be at the expense of readability that motivates students to actually study, enjoy and learn from the assigned textbook!

If you have any suggestions or comments, drop me a line. I appreciate any feedback.


A complete solutions manual to all exercises and problems in the text, along with some additional exam and project samples and solutions, is available to instructors who adopt the text. Instructors who have adopted the text and would like these materials should contact me via email.

For the benefit of instructors and students using my text, some of the resources available for the first edition are still relevant and listed below.

Note: There are two new items in the list below. The first is ALAMA Calculator Files, which contains commentaries and programs written for ALAMA calculator. This calculator is an easy-to-use button calculator that I programmed in C++ off and on for the past few years. It was originally for my amusement, but I was struck by how useful this simple button calculator could be as a tool in a linear algebra course. So I designed it with an eye to the ALAMA textbook, both first and revised editions. It has enough capabilities that I could even carry out a few projects with it and used it to create some of the graphs that appear in the revised ALAMA, along with pretty much all the routine matrix calculations in ALAMA — nice tool if you want to check answers. ALAMA Calculator Files contains scripts for nearly all the examples from ALAMA that require technology tools, as well as a few programs that I wrote (yes, it's a fully programmable calculator, but it takes a bit of careful thinking to do it).

The second item is a directory which will contain exercises and problems (and even projects) that are nice supplements to the text. They will be submitted by me or instructors using the textbook (with attribution, of course). So if you have any exercises, problems or projects that you found useful and would like to share, by all means send them in to me.

I have decided for the time being to distribute the executables of ALAMA Calculator from my own blog site.

NB: Do not download the program from any other source and be sure to verify the download before decompressing it.

Go to the following link and click on the Linear Algebra menu item of this page:

Tom Shores: Ends and Odds

There you will find links to versions of the calculator for Mac, Windows and some flavors of Linux along with discussions about installation of the program. Longer term, I may port it to Windows UWP or Apple iOS, but these are much more extensive projects. I have no idea how suitable the APIs of UWP are for the calculator and good old Apple, Objective C wasn't different enough from C++, so they introduced Swift, which is a problem since FLTK and Eigen are written in C++.

You will also find some personal comments there about my life experiences, mathematics in general and linear algebra in particular. So by all means, take a look and see.
  • ALAMA Calculator Files ALAMA Calculator program examples.
  • ALAMA Exercises and Problems Additional exercises and problems for ALAMA, 2nd Ed.
  • ALAMA Exams and Projects Here are some sample exams and projects which I and others have used with the first edition of ALAMA; in addition to pdf files, there are Latex and LyX files available to instructors who have adopted the text, so that they may massage them to suit their own needs. For an indication of what parts of the text were covered by the exams, consult the sample syllabi in the Documents link below. Slight adjustments will be necessary for use with the second edition of ALAMA.
  • ALAMA Documents Here are sample syllabi and class policy statements which I have used with the first edition of ALAMA. Formats are html, Latex and LyX.
  • Maple Notebooks Tutorial notebooks in Maple, some of which are the basis for linear algebra projects.
  • Mathematica Notebooks Tutorial notebooks in Mathematica, some of which are the basis for linear algebra projects (in old Mathematica .ma and new .nb formats. I may update them at a future date, since I haven't used Mathematica in a while.)
  • Matlab Files Program files for Matlab and a Matlab-like program called Octave.

Unrandom Notes and FAQ for ALAMA Text and Calculator

Here are some notes about topics of interest, comments and answers to questions asked by users of ALAMA text and calculator.
  1. There is an elegant example of the interplay between theory, application and computation in the SIAM 2018 John von Neumann Lecture by Charles Van Loan ("Untangling Random Polygons"). Some delightful exercises and projects can be built out of this material. In fact, I've added project and calculator materials inspired by this example in the Exams and Projects and Calculator Files links above. See the Linear Algebra page from my Ends and Odds site for some discussion of this topic.
  2. Coming soon ...

Errata Sheet

Might there be a law of spontaneous generation of errors? My rational mind says "no", but in spite of my dedicated proofreading, they will no doubt occur. In fact, since publication, I have already found a few, and I have recorded them in the errata sheet below. If you find any unlisted errors, please report them to me and I will publish them in the errata sheet.

Table of Contents
Applied Linear Algebra and Matrix Analysis, 2nd Ed.
Thomas S. Shores
Copyright © 2018 Springer Science+Business Media, LLC



1.1   Some Examples

1.2   Notations and a Review of Numbers

1.3   Gaussian Elimination: Basic Ideas

1.4   Gaussian Elimination: General Procedure

1.5   *Applications and Computational Notes
          Topics: Roundoff errors, computational efficiency of Gaussian elimination,
            derivation of a time dependent form of the diffusion equation.

1.6   *Projects and Reports


2.1   Matrix Addition and Scalar Multiplication

2.2   Matrix Multiplication

2.3   Applications of Matrix Arithmetic

2.4   Special Matrices and Transposes

2.5   Matrix Inverses

2.6   Determinants

2.7   *Tensor products

2.8   *Applications and Computational Notes
          Topics: LU factorization, efficiency of determinants and Cramer's rule,
            digital signal processing, Isorank for graphs.

2.9   *Projects and Reports


3.1   Definitions and Basic Concepts

3.2   Subspaces

3.3   Linear Combinations

3.4   Subspaces Associated with Matrices and Operators

3.5   Bases and Dimension

3.6   Linear Systems Revisited

3.7   *Change of Basis and Linear Operators

3.8   *Introduction to linear programming

3.9   *Applications and Computational Notes
          Topics: Spaces associated with a directed graph.

3.10   *Projects and Reports


4.1   Standard Norm and Inner Product

4.2   Applications of Norm and Inner Product

4.3   Orthogonal and Unitary Matrices

4.4   *Applications and Computational Notes
          Topics: QR factorization, practical algorithm for QR factorization,
            data compression and the Haar wavelet transform.

4.5   *Projects and Reports


5.1   Definitions and Basic Properties

5.2   Similarity and Diagonalization

5.3   Applications to Discrete Dynamical Systems

5.4   Orthogonal Diagonalization

5.5   *Schur Form and Applications

5.6   *The Singular Value Decomposition

5.7   *Applications and Computational Notes
          Topics: Jordan Canonical Form theorem, computation of eigensystems.

5.8   *Projects and Reports


6.1 Normed Spaces

6.2 Inner Product Spaces

6.3 Gram-Schmidt Algorithm

6.4 Orthogonal Vectors and Projection

6.5 *Operator Norms

6.6 *Applications and Computational Notes
          Topics: Introduction to Fourier analysis, digital signal processing and Fourier series.
6.7 *Projects and Reports

Table of Symbols

Solutions to Selected Exercises



[ T O P ] [ H O M E

[ U N L ] [ A & S  C O L L E G E ] [ M A T H / S T A T  D E P T ]