# Ma305, hw 06. # Xuyang Tian # March, 28. # # Ex 3.6, Problem 28. # Find a basis for, and the demension of , the null space of the given matrix. # > with(linalg): > read(`xREF.mpl`): > A := matrix (2,4,[2,1,-1,1,4,-2,-2,1]); [ 2 1 -1 1 ] A := [ ] [ 4 -2 -2 1 ] > AT := transpose(A); [ 2 4 ] [ ] [ 1 -2 ] AT := [ ] [ -1 -2 ] [ ] [ 1 1 ] > REF := xref(AT,2,'TT'); [ 2 4 ] [ ] [ 0 -4 ] REF := [ ] [ 0 0 ] [ ] [ 0 0 ] > T := transpose(TT); [ 1 -1/2 1/2 -3/8 ] [ ] [ 0 1 0 -1/4 ] T := [ ] [ 0 0 1 0 ] [ ] [ 0 0 0 1 ] > CEF := evalm (A &* T); [ 2 0 0 0 ] CEF := [ ] [ 4 -4 0 0 ] # The rank of A is 2, hence the last 2 columns of T are a basis for the null space, and the # dimension is 2. # The basis is: > Basis := submatrix(T,1..4, 3..4); [ 1/2 -3/8 ] [ ] [ 0 -1/4 ] Basis := [ ] [ 1 0 ] [ ] [ 0 1 ] > -------------------------------------------------------------------------------- # # Ex 3.7. Problem 6,8. # Prob 6. Find a basis for RS(A) and CS(A) and determine its rank. > A := matrix(5,8,[0,2,-3,4,1,2,1,7,0,0,3,-2,0,4,-5,3,0,0,0,0,0,6,-2,2,0,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0]); [ 0 2 -3 4 1 2 1 7 ] [ ] [ 0 0 3 -2 0 4 -5 3 ] [ ] A := [ 0 0 0 0 0 6 -2 2 ] [ ] [ 0 0 0 0 0 0 2 1 ] [ ] [ 0 0 0 0 0 0 0 0 ] # So the basis for the RS(A) is : > BasisOfRS(A) := submatrix(A,1..4, 1..8); [ 0 2 -3 4 1 2 1 7 ] [ ] [ 0 0 3 -2 0 4 -5 3 ] BasisOfRS(A) := [ ] [ 0 0 0 0 0 6 -2 2 ] [ ] [ 0 0 0 0 0 0 2 1 ] # Calculate the Column Space by calculating the CEF of (A). > AT := transpose(A); [ 0 0 0 0 0 ] [ ] [ 2 0 0 0 0 ] [ ] [ -3 3 0 0 0 ] [ ] [ 4 -2 0 0 0 ] AT := [ ] [ 1 0 0 0 0 ] [ ] [ 2 4 6 0 0 ] [ ] [ 1 -5 -2 2 0 ] [ ] [ 7 3 2 1 0 ] > REF := xref(AT, 5,'TT'); [ 2 0 0 0 0 ] [ ] [ 0 3 0 0 0 ] [ ] [ 0 0 6 0 0 ] [ ] [ 0 0 0 2 0 ] REF := [ ] [ 0 0 0 0 0 ] [ ] [ 0 0 0 0 0 ] [ ] [ 0 0 0 0 0 ] [ ] [ 0 0 0 0 0 ] > T := transpose (TT); [ 0 0 0 0 0 1 0 0 ] [ ] [ 1 3/2 -3 1 -1/2 0 -1 -9/2 ] [ ] [ 0 1 -4/3 11/9 0 0 2/3 -7/6 ] [ ] [ 0 0 0 0 0 0 1 0 ] T := [ ] [ 0 0 0 0 1 0 0 0 ] [ ] [ 0 0 1 1/3 0 0 0 -1/2 ] [ ] [ 0 0 0 1 0 0 0 -1/2 ] [ ] [ 0 0 0 0 0 0 0 1 ] > CEF := evalm (A &* T); [ 2 0 0 0 0 0 0 0 ] [ ] [ 0 3 0 0 0 0 0 0 ] [ ] CEF := [ 0 0 6 0 0 0 0 0 ] [ ] [ 0 0 0 2 0 0 0 0 ] [ ] [ 0 0 0 0 0 0 0 0 ] > CS(A) := ("); [ 2 0 0 0 0 0 0 0 ] [ ] [ 0 3 0 0 0 0 0 0 ] [ ] CS(A) := [ 0 0 6 0 0 0 0 0 ] [ ] [ 0 0 0 2 0 0 0 0 ] [ ] [ 0 0 0 0 0 0 0 0 ] # So the basis for CS(A) is : # > BasisOfCS(A) := submatrix(CS(A),1..5,1..4); [ 2 0 0 0 ] [ ] [ 0 3 0 0 ] [ ] BasisOfCS(A) := [ 0 0 6 0 ] [ ] [ 0 0 0 2 ] [ ] [ 0 0 0 0 ] # Rank (A) = dimension of (RS(A)) = dimension of (CS(A)) = 4. -------------------------------------------------------------------------------- # # Problem 8. # > A := matrix(4,3,[3,2,-1,6,3,5,-3,-1,-6,0,-1,7]); [ 3 2 -1 ] [ ] [ 6 3 5 ] A := [ ] [ -3 -1 -6 ] [ ] [ 0 -1 7 ] > REF := xref(A,3); [ 3 2 -1 ] [ ] [ 0 -1 7 ] REF := [ ] [ 0 0 0 ] [ ] [ 0 0 0 ] # So the basis for its row space is : > BasisOfRS(A) := submatrix(REF,1..2,1..3); [ 3 2 -1 ] BasisOfRS(A) := [ ] [ 0 -1 7 ] > AT := transpose(A); [ 3 6 -3 0 ] [ ] AT := [ 2 3 -1 -1 ] [ ] [ -1 5 -6 7 ] > REF := xref(AT,4,'TT'); [ 3 6 -3 0 ] [ ] REF := [ 0 -1 1 -1 ] [ ] [ 0 0 0 0 ] > T := transpose(TT); [ 1 -2/3 -13/3 ] [ ] T := [ 0 1 7 ] [ ] [ 0 0 1 ] > CEF := evalm (A &* T); [ 3 0 0 ] [ ] [ 6 -1 0 ] CEF := [ ] [ -3 1 0 ] [ ] [ 0 -1 0 ] # So the basis for the Column Space is: > BasisOfCS(A) := submatrix(CEF, 1..4,1..2); [ 3 0 ] [ ] [ 6 -1 ] BasisOfCS(A) := [ ] [ -3 1 ] [ ] [ 0 -1 ] # Rank (A) = dimension of (RS(A)) = dimension of (CS(A)) = 2. -------------------------------------------------------------------------------- > A:=matrix(5,5,[3,0,1,3,1,-6,-2,3,-8,-8,-1,2,0,-1,1,10,0,6,9,1,0,-2,-3,1,1]); [ 3 0 1 3 1 ] [ ] [ -6 -2 3 -8 -8 ] [ ] A := [ -1 2 0 -1 1 ] [ ] [ 10 0 6 9 1 ] [ ] [ 0 -2 -3 1 1 ] > AT:=transpose(A); [ 3 -6 -1 10 0 ] [ ] [ 0 -2 2 0 -2 ] [ ] AT := [ 1 3 0 6 -3 ] [ ] [ 3 -8 -1 9 1 ] [ ] [ 1 -8 1 1 1 ] > REF:=xref(AT, 5,'TT'); [ 3 -6 -1 10 0 ] [ ] [ 0 -2 2 0 -2 ] [ ] REF := [ 0 0 16/3 8/3 -8 ] [ ] [ 0 0 0 0 0 ] [ ] [ 0 0 0 0 0 ] > T:=transpose(TT); [ 1 0 -1/3 -9/8 -5/8 ] [ ] [ 13 ] [ 0 1 5/2 -1/16 - ---- ] [ 16 ] T := [ ] [ 0 0 1 3/8 7/8 ] [ ] [ 0 0 0 1 0 ] [ ] [ 0 0 0 0 1 ] > CEF:=evalm(A&*T); [ 3 0 0 0 0 ] [ ] [ -6 -2 0 0 0 ] [ ] CEF := [ -1 2 16/3 0 0 ] [ ] [ 10 0 8/3 0 0 ] [ ] [ 0 -2 -8 0 0 ] > b:=matrix(5,1,[-11,47,6,-23,-16]); [ -11 ] [ ] [ 47 ] [ ] b := [ 6 ] [ ] [ -23 ] [ ] [ -16 ] > y:=linsolve(CEF,b); [ -11/3 ] [ ] [ -25/2 ] [ ] y := [ 41/8 ] [ ] [ _t[1] ] [ ] [ _t[2] ] > x:=evalm(T&*y); [ - 43/8 - 9/8 _t[1] - 5/8 _t[2] ] [ ] [ 13 ] [ 5/16 - 1/16 _t[1] - ---- _t[2] ] [ 16 ] x := [ ] [ 41/8 + 3/8 _t[1] + 7/8 _t[2] ] [ ] [ _t[1] ] [ ] [ _t[2] ] > evalm(A&*x); [ -11 ] [ ] [ 47 ] [ ] [ 6 ] [ ] [ -23 ] [ ] [ -16 ] -------------------------------------------------------------------------------- # # Ex 3.8 Problem 22. # Find the transition matrix from B to C and find [x]c. # > S := matrix(3,6,[-6,-1,-1,1,-2,2,-2,1,-1,1,-1,1,1,5,1,1,0,2]); [ -6 -1 -1 1 -2 2 ] [ ] S := [ -2 1 -1 1 -1 1 ] [ ] [ 1 5 1 1 0 2 ] > transition := matrix(3,6,[1,0,0,-6/39,-16/39,18/39,0,1,0,12/39,-1/78,33/78,0,0,1,-15/39,37/78,27/78]); [ 16 ] [ 1 0 0 -2/13 - ---- 6/13 ] [ 39 ] [ ] [ 11 ] transition := [ 0 1 0 4/13 -1/78 ---- ] [ 26 ] [ ] [ 37 ] [ 0 0 1 -5/13 ---- 9/26 ] [ 78 ] # So the transition matrix P is: > P := submatrix(transition,1..3,4..6); [ 16 ] [ -2/13 - ---- 6/13 ] [ 39 ] [ ] [ 11 ] P := [ 4/13 -1/78 ---- ] [ 26 ] [ ] [ 37 ] [ -5/13 ---- 9/26 ] [ 78 ] > Xb := matrix(3,1,[-3,2,4]); [ -3 ] [ ] Xb := [ 2 ] [ ] [ 4 ] > Xc := evalm (P &* Xb); [ 58 ] [ ---- ] [ 39 ] [ ] [ 29 ] Xc := [ ---- ] [ 39 ] [ ] [ 136 ] [ --- ] [ 39 ] > #