Matrix Action 
Perpframes, Aligners and Hangers 
Matrix Subspaces  
Linear Systems, Pseudo-Inverse 
Condition Number 
Matrix Norm, Rank One 
Data Compression 
Noise Filtering 
Todd Will
UW-La Crosse


Bonus Facts 

Matrix Subspaces

In the last section you battled to show that every matrix A could be written as A=(hanger)(stretcher)(aligner)

What's the pay off? 

Fundamental equations

2x2 Example

Here is an SVD of a 2 x 2 matrix : 
where the two perpframes are shown below. 

Now watch what the matrix A does to an ellipse lined up on the perpframe [Graphics:subspacegr4.gif]


The matrix stretches the ellipse and transfers it from the [Graphics:subspacegr8.gif] perpframe to the [Graphics:subspacegr9.gif] perpframe. 

If you look carefully at the "during" plot you'll see that A sends [Graphics:subspacegr10.gif] to [Graphics:subspacegr11.gif] and [Graphics:subspacegr12.gif] to [Graphics:subspacegr13.gif]

More generally A, 

  • stretches vectors parallel to [Graphics:subspacegr14.gif] by a factor of 3 and rotates them in the direction of [Graphics:subspacegr15.gif],
  • stretches vectors parallel to [Graphics:subspacegr16.gif] by a factor of [Graphics:subspacegr17.gif] and rotates them in the direction of [Graphics:subspacegr18.gif]

You can verify this by computing what each factor of A does. 

Check what each factor of A does to [Graphics:subspacegr19.gif]


[Graphics:subspacegr21.gif] (The aligner matrix brings [Graphics:subspacegr22.gif] to the y-axis.) 

[Graphics:subspacegr23.gif] (The stretcher matrix stretches the y-axis by a factor of [Graphics:subspacegr24.gif].) 

[Graphics:subspacegr25.gif] (The hanger rotates the y-axis to the direction of [Graphics:subspacegr26.gif].) 


If you build a 2x2 matrix A=(hanger)(stretcher)(aligner) using 
  • a 2D perpframe [Graphics:subspacegr27.gif] for your [Graphics:subspacegr28.gif][Graphics:subspacegr29.gif],

  • a 2D perpframe [Graphics:subspacegr30.gif] for your [Graphics:subspacegr31.gif],

  • numbers [Graphics:subspacegr32.gif] and [Graphics:subspacegr33.gif] for your stretcher [Graphics:subspacegr34.gif]
Then [Graphics:subspacegr35.gif] and [Graphics:subspacegr36.gif]

These two equations are the fundamental equations of matrices of the form (hanger)(stretcher)(aligner). 

In words they say that A 

  • stretches vectors in the direction of [Graphics:subspacegr37.gif] by a factor of [Graphics:subspacegr38.gif] and rotates them to the direction of [Graphics:subspacegr39.gif]
  • stretches vectors in the direction of [Graphics:subspacegr40.gif] by a factor of [Graphics:subspacegr41.gif] and rotates them to the direction of [Graphics:subspacegr42.gif]

Proof: Outlined above--follow the action of each factor of A on [Graphics:subspacegr43.gif]

3 x 3 matrices.

The following plot shows the perpframe [Graphics:subspacegr44.gif] in blue and the perpframe [Graphics:subspacegr45.gif] in red. 
See what the matrix [Graphics:subspacegr46.gif] does to the surface lined up on [Graphics:subspacegr47.gif]
The surface is stretched and rotated to the perpframe [Graphics:subspacegr48.gif]

Just as in the 2x2 case, the matrix A obeys the fundamental equations: [Graphics:subspacegr49.gif] 

In fact, matrices of the form (hanger)(stretcher)(aligner) always obey these fundamental equations, regardless of their dimension. 

Orthonormal bases for fundamental subspaces.

Suppose the SVD for a matrix [Graphics:subspacegr50.gif] is [Graphics:subspacegr51.gif]
This decomposition presents orthonormal bases for 



The Column space of A, Col[A], is the span of the columns of A. 

[Graphics:subspacegr53.gif]              (The column way to multiply A v.)

[Graphics:subspacegr54.gif]     (Since the a's are a basis.)

[Graphics:subspacegr55.gif]      (Linearity)

[Graphics:subspacegr56.gif]          (Fundamental Equations)


This shows shows that Col[A] = span[Graphics:subspacegr9.gif]

Since [Graphics:subspacegr9.gif] are perpendicular unit vectors they are an orthonormal basis for Col[A]. 


The nullspace of A, N[A], is the set of vector that A sends to the zero vector. 

Suppose [Graphics:subspacegr58.gif]

Then [Graphics:subspacegr59.gif] 


[Graphics:subspacegr61.gif]                     (Linearity and Fundamental Equations.)



Now, [Graphics:subspacegr64.gif] tells you that [Graphics:subspacegr65.gif] and so [Graphics:subspacegr66.gif]

This tells you that any vector in N[A] is a linear combination of [Graphics:subspacegr67.gif] and [Graphics:subspacegr68.gif], i.e. [Graphics:subspacegr69.gif]

On the other hand, [Graphics:subspacegr70.gif], so [Graphics:subspacegr71.gif]


The row space of A is the span of the rows of A, which is the same as the column space of [Graphics:subspacegr72.gif]

So finding a basis for the row space of A is the same as finding a basis for the columns space of [Graphics:subspacegr73.gif]

Here's a look at [Graphics:subspacegr74.gif]




Now you have [Graphics:subspacegr78.gif] written as (hanger)(stretcher)(aligner), 

                               i.e., you have an SVD of [Graphics:subspacegr79.gif]

So from what you did above you know 

  •  [Graphics:subspacegr80.gif] is an orthonormal basis for the [Graphics:subspacegr81.gif]

  • [Graphics:subspacegr82.gif] is an orthonormal basis for [Graphics:subspacegr83.gif]


The proofs above easily generalize to show that 
  • the columns of the hanger matrix corresponding to non-zero singular values are an orthonormal basis for Col[A]. 

  • the rows of the aligner matrix corresponding to non-zero singular values are an orthonormal basis for Row[A]. 

  • the rows of the aligner matrix corresponding to zero singular values are an orthonormal basis for N[A].

  • the columns of the hanger matrix corresponding to zero singular values are an orthonormal basis for [Graphics:subspacegr84.gif].

Bonus Facts.


The rank of A is usually defined as  the dimension of the column space.

Since the columns of the hanger matrix corresponding to non-zero singular values form a basis for the column space, you know that the rank of A is equal to the number of non-zero singular values.

Similarly, since the nullity of A is the dimension of the null space, the number of zero singular values equals the nullity of A. 


Theorem: rank[A]+nullity[A] 



=(number of non-zero singular values)+(number of zero singular values)

=(total number of singular values)



Theorem: [Graphics:subspacegr85.gif] 



=(number on non-zero singular values of A) 

[Graphics:subspacegr86.gif](number of non-zero singular values of [Graphics:subspacegr87.gif] )


(1) Since the stretcher matrix for [Graphics:subspacegr89.gif] is the transpose of the stretcher matrix for A, the singular values for A and [Graphics:subspacegr90.gif] are identical. 


1. Go with the 3x4 matrix [Graphics:subspacegr91.gif].    Based on the SVD of A: 


give orthonormal bases for 

a. the column space of A 

b. the row space of A 

c. the nullspace of A 

d. the nullspace of [Graphics:subspacegr93.gif]

2. Let [Graphics:subspacegr94.gif].     Here is an SVD for A. 


Based on the SVD, give an orthonormal basis for the subspace spanned by [Graphics:subspacegr96.gif] 

3. Let [Graphics:subspacegr97.gif]. Here is an SVD for A. 


Based on the SVD of A and the fundamental equations, compute 

a. [Graphics:subspacegr99.gif] 

b. [Graphics:subspacegr100.gif] 

If you check your answer by using [Graphics:subspacegr101.gif], you may not get agreement since the SVD for A has been rounded to two decimals. 

© 1999 Todd Will
Last Modified: 03-Mar-1999
Hit Counter