(A1 <- matrix(c(2, 3, 5, 8), 2))
## [,1] [,2]
## [1,] 2 5
## [2,] 3 8
(L1 <- matrix(c(8, -3, -5, 2), 2))
## [,1] [,2]
## [1,] 8 -5
## [2,] -3 2
L1 %*% A1
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
A1 %*% L1
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
(A2 <- matrix(c(1, -1, 3, 1, 0, -1), 3))
## [,1] [,2]
## [1,] 1 1
## [2,] -1 0
## [3,] 3 -1
(L2 <- matrix(c(1, 2, 3, 5, 1, 1), 2))
## [,1] [,2] [,3]
## [1,] 1 3 1
## [2,] 2 5 1
(L2.2 <- matrix(c(4, 7, 15, 25, 4, 6), 2))
## [,1] [,2] [,3]
## [1,] 4 15 4
## [2,] 7 25 6
L2 %*% A2
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
L2.2 %*% A2
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
(A3 <- matrix(c(0, 0, 3, 2, 7, 5), 2))
## [,1] [,2] [,3]
## [1,] 0 3 7
## [2,] 0 2 5
R <- matrix(c(4, 5, -2, 8, -7, 3), 3)
A3 %*% R
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
\(|\,A\,|=\sum_{i=1}^n a_{ij}c_{ij}=\sum_{i=1}^n a_{ij}(-1)^{i+j}|\,M_{ij}\,|\), 여기서 \(c_{ij}\) 는 원소 \(a_{ij}\) 의 여인자.
\(A=\begin{bmatrix}1&2&3\\4&5&6\\7&8&10\end{bmatrix}\)에 대하여 첫번째 열에 있는 원소들의 여인자를 계산하면,
1의 여인자 : \((-1)^{1+1}\begin{vmatrix}5&6\\8&10\end{vmatrix}=5\times10-6\times8=2\),
4의 여인자 : \((-1)^{1+2}\begin{vmatrix}2&3\\8&10\end{vmatrix}=(-1)(2\times10-3\times8)=4\),
7의 여인자 : \((-1)^{3+1}\begin{vmatrix}2&3\\5&6\end{vmatrix}=2\times6-3\times5=-3\).
위의 여인자들과 각 열에 있는 원소들과의 곱을 취하면,
\(1\times(2)+4\times(4)+7\times(-3)=-3=|\,A\,|\),
\(2\times(2)+5\times(4)+8\times(-3)=0\),
\(3\times(2)+6\times(4)+10\times(-3)=0\).
두번째 열에 있는 원소들의 여인자는,
2의 여인자 : \((-1)^{1+2}\begin{vmatrix}4&6\\7&10\end{vmatrix}=(-1)(4\times10-6\times7)=2\),
5의 여인자 : \((-1)^{2+2}\begin{vmatrix}1&3\\7&10\end{vmatrix}=1\times10-3\times7=-11\),
8의 여인자 : \((-1)^{3+2}\begin{vmatrix}1&3\\4&6\end{vmatrix}=(-1)(1\times6-3\times4)=6\).
이들과 각 열에 있는 원소들과의 곱을 취하면,
\(1\times(2)+4\times(-11)+7\times(6)=0\),
\(2\times(2)+5\times(-11)+8\times(6)=-3=|\,A\,|\),
\(3\times(2)+6\times(-11)+10\times(6)=0\).
끝으로 세번째 열에 있는 원소들의 여인자는,
3의 여인자 : \((-1)^{1+3}\begin{vmatrix}4&5\\7&8\end{vmatrix}=4\times8-5\times7=-3\),
6의 여인자 : \((-1)^{2+3}\begin{vmatrix}1&2\\7&8\end{vmatrix}=(-1)(1\times8-2\times7)=6\),
10의 여인자 : \((-1)^{3+3}\begin{vmatrix}1&2\\4&5\end{vmatrix}=1\times5-2\times4=-3\).
이들과 각 열에 있는 원소들과의 곱을 취하면,
\(1\times(-3)+4\times(6)+7\times(-3)=0\),
\(2\times(-3)+5\times(6)+8\times(-3)=0\),
\(3\times(-3)+6\times(6)+10\times(-3)=-3=|\,A\,|\).
\(A=\begin{bmatrix}1&2&3\\4&5&6\\7&8&10\end{bmatrix}\) 의 원소들을 그들의 여인자들로 대체하여 얻는 행렬은 \(\begin{bmatrix}2&2&-3\\4&-11&6\\-3&6&-3\end{bmatrix}\).
이 행렬의 전치행렬에 \(|\,A\,|^{-1}=-(1/3)\) 을 곱하면,
\(-\frac{1}{3}\begin{bmatrix}2&4&-3\\2&-11&6\\-3&6&-3\end{bmatrix}\) 을 얻고, 이를 \(A\)의 왼쪽에서 곱하면,
\(-\frac{1}{3}\begin{bmatrix}2&4&-3\\2&-11&6\\-3&6&-3\end{bmatrix}\begin{bmatrix}1&2&3\\4&5&6\\7&8&10\end{bmatrix}=-\frac{1}{3}\begin{bmatrix}-3&0&0\\0&-3&0\\0&0&-3\end{bmatrix}=\begin{bmatrix}1&0&0\\0&1&0\\0&0&1\end{bmatrix}\)
이 행렬은 \(L\ A=I\) 뿐 아니라 \(A\ L=I\) 또한 만족하여 \(A^{-1}\)라고 할 수 있음.
(A4 <- matrix(c(1, 4, 7, 2, 5, 8, 3, 6, 10), 3))
## [,1] [,2] [,3]
## [1,] 1 2 3
## [2,] 4 5 6
## [3,] 7 8 10
(L4 <- matrix((-1/3)*c(2, 2, -3, 4, -11, 6, -3, 6, -3), 3))
## [,1] [,2] [,3]
## [1,] -0.6666667 -1.333333 1
## [2,] -0.6666667 3.666667 -2
## [3,] 1.0000000 -2.000000 1
L4 %*% A4
## [,1] [,2] [,3]
## [1,] 1 8.881784e-16 0
## [2,] 0 1.000000e+00 0
## [3,] 0 0.000000e+00 1
round(L4 %*% A4, digits = 4)
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
A4 %*% L4
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
Step 1. \(A=\begin{bmatrix}a_{11}&a_{12}&a_{13}\\a_{21}&a_{22}&a_{23}\\a_{31}&a_{32}&a_{33}\end{bmatrix}\) 에 대하여 \(c_{ij}\) 를 \(a_{ij}\)의 여인자라 하면,
Step 2. \(C=\begin{bmatrix}c_{11}&c_{12}&c_{13}\\c_{21}&c_{22}&c_{23}\\c_{31}&c_{32}&c_{33}\end{bmatrix}\) 는 여인자로 구성된 행렬
Step 3. \(C^t=\begin{bmatrix}c_{11}&c_{21}&c_{31}\\c_{12}&c_{22}&c_{32}\\c_{13}&c_{23}&c_{33}\end{bmatrix}\) 는 \(C\)의 전치 행렬로 \(A\)의 adjoint matrix라 함.
Step 4. \(C^t\)를 \(|\,A\,|\) 로 나눠줌으로써 \(A\) 의 역행렬 \(A^{-1}\)을 구하게 됨.
\(A^{-1}=|\,A\,|^{-1}C^t=|\,A\,|^{-1}\begin{bmatrix}c_{11}&c_{21}&c_{31}\\c_{12}&c_{22}&c_{32}\\c_{13}&c_{23}&c_{33}\end{bmatrix}\)
minor <- function(A, i, j){
det(A[-i, -j, drop=FALSE])
}
cofactor <- function(A, i, j){
(-1)^(i+j)*minor(A, i, j)
}
adjoint <- function(A){
n <- nrow(A)
t(outer(1:n, 1:n, Vectorize(
function(i, j) cofactor(A, i, j))))
}
minor(A4, 1, 1)
## [1] 2
minor(A4, 2, 1)
## [1] -4
minor(A4, 3, 1)
## [1] -3
minor(A4, 1, 2)
## [1] -2
minor(A4, 2, 2)
## [1] -11
minor(A4, 3, 2)
## [1] -6
minor(A4, 1, 3)
## [1] -3
minor(A4, 2, 3)
## [1] -6
minor(A4, 3, 3)
## [1] -3
cofactor(A4, 1, 1)
## [1] 2
cofactor(A4, 2, 1)
## [1] 4
cofactor(A4, 3, 1)
## [1] -3
cofactor(A4, 1, 2)
## [1] 2
cofactor(A4, 2, 2)
## [1] -11
cofactor(A4, 3, 2)
## [1] 6
cofactor(A4, 1, 3)
## [1] -3
cofactor(A4, 2, 3)
## [1] 6
cofactor(A4, 3, 3)
## [1] -3
adjoint(A4)
## [,1] [,2] [,3]
## [1,] 2 4 -3
## [2,] 2 -11 6
## [3,] -3 6 -3
adjoint(A4)/det(A4)
## [,1] [,2] [,3]
## [1,] -0.6666667 -1.333333 1
## [2,] -0.6666667 3.666667 -2
## [3,] 1.0000000 -2.000000 1
(adjoint(A4)/det(A4)) %*% A4
## [,1] [,2] [,3]
## [1,] 1.000000e+00 -3.552714e-15 -3.552714e-15
## [2,] 1.776357e-15 1.000000e+00 -3.552714e-15
## [3,] -8.881784e-16 -1.776357e-15 1.000000e+00
round((adjoint(A4)/det(A4)) %*% A4, digits = 4)
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
solve(A4)
## [,1] [,2] [,3]
## [1,] -0.6666667 -1.333333 1
## [2,] -0.6666667 3.666667 -2
## [3,] 1.0000000 -2.000000 1
(solve(A4) %*% A4)
## [,1] [,2] [,3]
## [1,] 1 0 0.000000e+00
## [2,] 0 1 -3.552714e-15
## [3,] 0 0 1.000000e+00
round(solve(A4) %*% A4, digits = 4)
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
\(A=\begin{bmatrix}2&5\\3&9\end{bmatrix}\)
(A5 <- matrix(c(2, 3, 5, 9), 2))
## [,1] [,2]
## [1,] 2 5
## [2,] 3 9
det(A5)
## [1] 3
(C5 <- matrix(c(9, -3, -5, 2), 2))
## [,1] [,2]
## [1,] 9 -5
## [2,] -3 2
C5/det(A5)
## [,1] [,2]
## [1,] 3 -1.6666667
## [2,] -1 0.6666667
(C5/det(A5)) %*% A5
## [,1] [,2]
## [1,] 1.000000e+00 0
## [2,] -2.220446e-16 1
round((C5/det(A5)) %*% A5, digits = 4)
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
adjoint(A5)
## [,1] [,2]
## [1,] 9 -5
## [2,] -3 2
adjoint(A5)/det(A5)
## [,1] [,2]
## [1,] 3 -1.6666667
## [2,] -1 0.6666667
(adjoint(A5)/det(A5)) %*% A5
## [,1] [,2]
## [1,] 1.000000e+00 5.329071e-15
## [2,] -4.440892e-16 1.000000e+00
round((adjoint(A5)/det(A5)) %*% A5, digits = 4)
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
solve(A5)
## [,1] [,2]
## [1,] 3 -1.6666667
## [2,] -1 0.6666667
solve(A5) %*% A5
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
round(solve(A5) %*% A5, digits = 4)
## [,1] [,2]
## [1,] 1 0
## [2,] 0 1
\(A=\begin{bmatrix}2&-1&3\\1&3&4\\-2&4&1\end{bmatrix}\)
(A6 <- matrix(c(2, 1, -2, -1, 3, 4, 3, 4, 1), 3))
## [,1] [,2] [,3]
## [1,] 2 -1 3
## [2,] 1 3 4
## [3,] -2 4 1
det(A6)
## [1] 13
adjoint(A6)
## [,1] [,2] [,3]
## [1,] -13 13 -13
## [2,] -9 8 -5
## [3,] 10 -6 7
adjoint(A6)/det(A6)
## [,1] [,2] [,3]
## [1,] -1.0000000 1.0000000 -1.0000000
## [2,] -0.6923077 0.6153846 -0.3846154
## [3,] 0.7692308 -0.4615385 0.5384615
(adjoint(A6)/det(A6)) %*% A6
## [,1] [,2] [,3]
## [1,] 1.000000e+00 0.000000e+00 0.000000e+00
## [2,] -3.330669e-16 1.000000e+00 -1.276756e-15
## [3,] -4.440892e-16 4.440892e-16 1.000000e+00
round((adjoint(A6)/det(A6)) %*% A6, digits = 4)
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
solve(A6)
## [,1] [,2] [,3]
## [1,] -1.0000000 1.0000000 -1.0000000
## [2,] -0.6923077 0.6153846 -0.3846154
## [3,] 0.7692308 -0.4615385 0.5384615
solve(A6) %*% A6
## [,1] [,2] [,3]
## [1,] 1.000000e+00 0 -8.881784e-16
## [2,] -3.330669e-16 1 -4.440892e-16
## [3,] 2.220446e-16 0 1.000000e+00
round(solve(A6) %*% A6, digits = 4)
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
\((B^{-1}A^{-1})(A\ B)=B^{-1}(A^{-1}A)B=B^{-1}I\ B=B^{-1}B=I\). 양변 우측에 \((A\ B)^{-1}\) 을 곱하면 \((A\ B)(A\ B)^{-1}=I\) 이므로 \(B^{-1}A^{-1}=(A\ B)^{-1}\).
\((A_1A_2\cdots A_r)^{-1}=A_r^{-1}A_{r-1}^{-1}\cdots A_2^{-1}A_1^{-1}\).
\(\begin{bmatrix}2&0&0\\0&4&0\\0&0&3\end{bmatrix}\)
(diag(c(2, 4, 3)))
## [,1] [,2] [,3]
## [1,] 2 0 0
## [2,] 0 4 0
## [3,] 0 0 3
solve(diag(c(2, 4, 3)))
## [,1] [,2] [,3]
## [1,] 0.5 0.00 0.0000000
## [2,] 0.0 0.25 0.0000000
## [3,] 0.0 0.00 0.3333333
(solve(diag(c(2, 4, 3)))) %*% diag(c(2, 4, 3))
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
\[(a\ I_n+b\ J_n)^{-1}=\frac{1}{a}(I_n-\frac{b}{a+n\ b}J_n)\]
\(P\ P^t=I\). 양변 좌측에 \(P^{-1}\) 을 곱하면 \(P^{-1}=P^t\). 이 식의 양변 우측에 \(P\) 를 곱하면 \(P^{-1}P=P^tP=I\). 즉, 직교행렬의 열들은 정직교.
\(P=\frac{1}{15}\begin{bmatrix}5&-14&2\\-10&-5&-10\\10&2&-11\end{bmatrix}\)
(P <- (1/15)*matrix(c(5, -10, 10, -14, -5, 2, 2, -10, -11), 3))
## [,1] [,2] [,3]
## [1,] 0.3333333 -0.9333333 0.1333333
## [2,] -0.6666667 -0.3333333 -0.6666667
## [3,] 0.6666667 0.1333333 -0.7333333
t(P)
## [,1] [,2] [,3]
## [1,] 0.3333333 -0.6666667 0.6666667
## [2,] -0.9333333 -0.3333333 0.1333333
## [3,] 0.1333333 -0.6666667 -0.7333333
det(P)
## [1] 1
P %*% t(P)
## [,1] [,2] [,3]
## [1,] 1.000000e+00 2.775558e-17 0.000000e+00
## [2,] 2.775558e-17 1.000000e+00 -5.551115e-17
## [3,] 0.000000e+00 -5.551115e-17 1.000000e+00
round(P %*% t(P), digits = 2)
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
solve(P)
## [,1] [,2] [,3]
## [1,] 0.3333333 -0.6666667 0.6666667
## [2,] -0.9333333 -0.3333333 0.1333333
## [3,] 0.1333333 -0.6666667 -0.7333333
save.image("chapter_5_class.rda")