Sage SUTH1 Sage Under The Hood, Round 1

We can parallel the above discussion about systems of linear equations and linear transformations using Sage. We begin with a matrix that we will use as a coefficient matrix for systems of equations, and then use the same matrix to define the associated linear transformation (acting on vectors placed to the right of the matrix).



We solve a linear system using the coefficient matrix, and compute an element of the pre-image of the linear transformation.





We compute a null space of the coefficient matrix and a kernel of the linear transformation, so as to understand the full solution set or the full preimage set.





We compute a column space of the coefficient matrix and an image (range) of the linear transformation to help us build an inconsistent system.





A vector that creates a system with no solution is a vector that has an empty pre-image.





Note that we could redo the above, replacing uses of “right” by “left” and uses of “column” by “row.” The output would not change.

We suggest in the text that one could develop the theory of linear transformations from scratch, and then obtain many of our initial results about systems of equations and matrices as a consequence. In Sage it is the reverse. Sage implements many advanced concepts from various areas of mathematics by translating fundamental computations into the language of linear algebra. In turn, many of Sage's linear algebra routines ultimately depend on very fast algorithms for basic operations on matrices, such as computing an echelon form, a null space, or a span.