개인공부/선형대수학

행렬의 영공간

수학가형 2021. 12. 25. 01:05

1. 행렬의 영공간

정의: 행렬 A의 영공간을 N(A)로 표시하며 방정식 Av = 0 의 모든 해 v의 집합을 의미한다. 행렬이 n개의 열을 가질 때, N(A) 는 R^n의 원소이다.

이에 대해 몇 가지 논의할 것이 있다. 첫 번째로, 영공간은 부분공간인가? 결론부터 말하자면 그렇다. 방정식 Av = 0을 만족하는 특정한 해 벡터 u, w 가 있다고 가정하면, Au = Aw = 0 이고 A(u + w) = 0 을 만족한다. 스칼라 c, d에 대해 A(cu) = cAu = 0 이므로, A(cu + dw) = 0 이다.

따라서 N(A)는 두 벡터의 선형결합 cu + dw 로 표시 가능하고,방정식의 자명한 해 v = 0을 반드시 포함한다. 따라서 행렬의 영공간은 무조건 부분공간이다.

두 번째로, 방정식 Av = b의 해 v의 집합은 부분공간인가? 저번 포스트에서 부분공간은 항상 영공간 Z를 포함해야 한다고 배웠다. 즉 해당 집합이 영벡터 v = 0을 포함해야 하는데, v = 0 이려면 무조건 b = 0 이어야 한다.(역은 성립하지 않을 수 있다.) 즉 영벡터가 아닌 벡터 b에 대해 방정식 Av = b 의 해들의 집합은 부분공간을 이루지 않는다.

예시는 다음과 같다:

영공간을 직선이나 평면의 방정식이 아닌 벡터들의 선형결합으로 표현할수 있으며 영공간을 묘사하는 데는 이것이 더욱 효율적이다. 이제 행렬 A의 영공간 N(A)를 벡터의 선형결합 형태 cv + du 꼴로 표현하면 다음과 같다:

 

 

 

2. 영공간을 벡터로 표현하기: 피봇 변수와 자유 변수

위에서 든 예시처럼 영공간 N(A)를 벡터들의 선형결합으로 알맞게 표현하기 위해서는 특별한 해(special solution, 특수해와 헷갈릴 수 있으므로 이 단어에 대해서는 영어로 사용) s들을 잘 찾아야 함을 알 수 있다. 만약 s_2를 (-3, 0, 1)이 아닌 (-4, 2, 0)으로 두었다면 방정식의 모든 해를 표현할 수 없을 것이다. (또 다른 해 벡터 (-3, 0 ,1)을 묘사할 수 없다)

 

이번 파트에서는 선형결합에 필요한 special solution 들을 보다 효율적으로 찾는 방법을 공부한다. 우선 몇 가지 개념들을 간단히 확인하고 그 다음 풀이방법을 배운 다음, 마지막으로 왜 이렇게 푸는지 공부한다.

 

사다리꼴 행렬

사다리꼴 행렬 U(echelon form matrix, REF) 는 소거법을 통해 얻는 상삼각 행렬과 비슷한 형태이다. 행렬이 사다리꼴 행렬일 조건은 다음과 같다.

사다리꼴 행렬 U의 조건:

#모든 성분이 0인 행은 무조건 행렬의 맨 아래에 위치한다.

#0이 아닌 성분이 하나라도 존재하는 행의 경우, 0이 아닌 성분들 중 가장 첫번째로 존재하는 성분을 "선행 계수" 라고 하는데, 이 선행 계수는 무조건 그 위의 행의 선행 계수 오른쪽에 있어야 한다. 다른 말로, 각 열의 피봇은 이전 열의 피봇보다 아래에 위치한다.

 

다음은 사다리꼴 행렬의 예시이다.

 

기약행 사다리꼴 행렬

기약행 사다리꼴 행렬 R(reduced row echelon matrix, RREF) 이란 사다리꼴 행렬에서 소거법을 계속 진행하여 얻을 수 있는 행렬이다. 조건은 다음과 같다.

기약행 사다리꼴 행렬 R의 조건:

#모든 성분이 0인 행은 무조건 행렬의 맨 아래에 위치한다.

#피봇이 존재하는 열에 대해, 모든 피봇은 1이며 피봇을 제외한 원소들은 0이다.

 

다음은 기약행 사다리꼴 행렬의 예시이다.

 

 

자유 변수와 피봇 변수

자유 변수(free variable) 피봇 변수(pivot variable)는 행렬의 영공간을 벡터의 선형결합 형태로 나타내는 데 있어 매우 중요한 개념들이다. 행렬 - 벡터 곱 Av의 계산과정으로 시작한다.

 

 

정리하자면 다음과 같다:

자유 변수: 행렬 - 벡터 곱 Av 에서 벡터 v의 원소들 중 피봇이 존재하지 않는 열에 대응하는 변수. 방정식 Av = 0의 special solution의 개수는 자유 변수의 개수와 같다.

피봇 변수: 행렬 - 벡터 곱 Av 에서 벡터 v의 원소들 중 피봇이 존재하는 열에 대응하는 변수

 

이제 방정식의 알맞은 special solution을 찾을 수 있다. 이를 통해 행렬의 영공간을 효율적으로 찾을수 있으며. 일반적인 방법을 공부하고 몇 가지 예시를 확인한다.

예시로 2X4 행렬 A의 영공간을 벡터의 선형결합으로 표현하면 다음과 같다:

 

 

 

 

3. 방정식 Av = 0의 영공간 해 표현하기

행렬의 영공간 N(A)는 방정식 Av = 0의 special solution들의 임의의 선형결합으로 표현된다. 영공간의 정의로부터 N(A)내부의 모든 벡터는 방정식 Av = 0을 푼다. 

 

영공간 해 v_n을 표현하는 방법은 간단하다. 방정식의 special solution이 u와 v이면, N(A) = cv + du 이다. 단순히 상수 c와 v만 적절한 변수로 바꾸어주면 된다.

special solution을 찾을 때 하나의 자유 변수를 1로 두고 나머지를 0으로 둔다고 했다. 이때 1로 설정한 자유 변수에 해당하는 변수를 해당 상수로 설정하면 된다.

*스칼라를 이런 식으로 설정해주지 않더라도(즉 위의 예시에서 v_n = v_4 v + v_3 u 로 두어도) 방정식 Av = 0을 풀어낸다. 하지만 굳이 조건에 맞추어 표현하는 이유는 위와 같이 다른 변수로 설정했을 시 방정식의 특수해와 완전해를 표현하는 데 있어 문제가 생기기 때문이다.

 

 

 

 

 

4. 셈에 대한 정리

마지막으로 행렬의 영공간에 대한 중요한 정리를 알아보고, 열공간과 영공간의 차원에 대해 정확히 정의한다.

 

정리 1: 행렬 - 벡터 곱으로 표현한 연립방정식 Av = 0에서, 방정식보다 미지수가 더 많다면(A가 mXn 행렬일 때 n > m인 경우) 영공간 N(A)에는 영벡터가 아닌 해가 반드시 존재한다. 이는 피봇이 존재하지 않는 자유 열이 존재함과 동치이다.

당연한 이야기이므로 따로 설명은 하지 않겠다.

 

정리 2: n개의 열과 m개의 행을 가지는 행렬에 대해, 피봇을 가지는 열이 r개이면 다음이 성립한다.

C(A)의 차원 = 행렬의 계수 = 피봇을 가지는 열의 개수 = r

N(A)의 차원 = 행렬의 퇴화차수(nulity) = 자유 열의 개수 = n - r

언급했듯이, C(A)의 차원(demension)은 m이 아닌 r로 정의된다. C(A)의 벡터들이 R^m 에 속한다고 해서 C(A)가 반드시 m차원인 것은 아니라는 것이다.(이는 다른 벡터공간도 마찬가지이다) 열공간의 모든 벡터들은 서로 직교하는 열들 즉 피봇을 가지는 열벡터들만 가지고 표현이 가능하기 때문에 r차원이 맞다.

 

이해를 위해 3차원 좌표공간을 생각한다. 이 좌표공간의 모든 위치들은 최소 3개의 서로 직교하는 단위벡터 i, j, k 의 선형결합으로 표현 가능하다. 그래서 3차원인 것이다. 하지만 3차원 좌표계 내부의 평면은 2차원이다. 가령 평면 x + 2y + 3z =0 을 생각했을 때, 평면 위의 점들의 위치벡터들은 대부분이 세 개의 성분 (x , y, z)를 가지고 있지만, 이 벡터들은 모두 두 개의 벡터 u, v의 선형결합으로 표현이 가능하다. 따라서 3차원 공간 내부의 평면 또한 2차원인 것이다.

 

N(A)에 대해서도 마찬가지이다.

 


헷갈리는 점

 

Q. special solution을 찾을 때, 왜 하나의 자유 변수를 1로 두고 나머지를 0으로 두는 계산을 하는지?

 

A. 영공간 N(A)는 방정식 Av = 0의 모든 해 벡터 v의 집합이다. "A가 가역일 경우 방정식 Av = 0의 해는 v = 0이 유일하다." 이 문장이 의미하는 바는 무엇일까? 가역 행렬의 경우, RREF 형태는 단위행렬 I이다. 단위행렬의 열들은 하나의 성분이 1이고 나머지가 0이다. 이들은 서로 직교하며 따라서 스칼라가 0이 아닌 그 어떠한 선형결합도 영벡터를 만들 수 없다.

 

비가역 행렬 A'에서 생각해보면 A'의 RREF 형태는 [I A"] 형태로, 무조건 행렬 안에 단위 행렬이 포함되는 형태이다. 위에서 언급했듯이, 단위 행들의 열들의 선형결합으로 영벡터를 만드는 방법은 모든 스칼라가 0인 경우로 유일하다. 하지만 v = 0 뿐만이 아닌 모든 해를 찾아야 한다. 피봇 열들의 선형결합으로는 다른 해를 찾을 수 없기 때문에, 자유 열들 또한 사용하여 v = 0이 아닌 다른 해들을 찾아야 한다. 방정식 Rv = 0을 보면

각 열과 변수들에 집중한다. v = 0이 아닌 다른 해들 또한 찾아야 한다. v = 0이 아닌 다른 해들을 찾으려면 피봇 변수에 대응하는 열(피봇 열)들 뿐 아니라 자유 변수에 대응하는 열(자유 열)들의 결합 또한 반드시 고려해야 한다. 포스트 초반부를 참고하자.

각 자유 열을 하나씩만 사용하여 선형결합을 만들 것이다. 한 개의 자유 열만을 고려한 선형결합들(= 모든 special solution)을 찾으면, 나머지 결합들 즉 2개 이상의 자유 열을 사용하는 선형결합들은 이미 찾은 special solution의 선형결합으로 표현이 가능하며, 가장 적은 개수의 special solution으로 모든 해를 표현 가능함이 분명하고 최소한으로 필요한 special solution의 개수는 자유 변수의 개수와 같음 또한 알 수 있다.


 

연습 문제

(5.2절 연습문제 14번)3X5 행렬의 첫번째 열과 마지막 열이 같다.(단 영벡터는 아니다) 확실한 자유 변수와 그에 대한 special solution 을 구하라.

 

(5.2절 연습문제 36번)