선형대수학 및 텐서 해석
Linear Algebra & Tensors
[1단계] 선형대수학의 첫 번째 문: 공간, 행렬, 그리고 변환
이론적 기초 — 공간을 숫자로 보는 눈을 뜨다
먼저 아주 근본적인 질문으로 시작하자. 너는 지금 3차원 공간에 살고 있다. 앞-뒤, 좌-우, 위-아래. 그런데 컴퓨터는, 물리학자는, AI는 이 공간을 어떻게 "다룰" 수 있을까? 답은 놀랍도록 단순하다: 숫자로 인코딩한다. 어떤 점의 위치를 (x, y, z)라는 세 숫자의 묶음으로 표현하면, 이제 '공간'은 '숫자들의 집합'이 된다. 이것이 선형대수학의 출발점이다. 7살 아이에게 설명한다면 이렇게 말할 수 있다: 체스판 위 말의 위치를 "가로 3칸, 세로 5칸"이라고 말하면 누구나 알아들을 수 있다. **좌표계(coordinate system)**는 공간 속 점들을 숫자들의 묶음으로 표현하는 약속이다. 이 약속이 없으면 "조금 왼쪽"처럼 모호하게만 말할 수 있다. 그런데 핵심 질문이 하나 등장한다: "어떤 좌표계를 써야 가장 효율적인가?" 이 질문이 나중에 배울 **기저(basis)**의 개념으로 이어진다는 것을 지금 기억해두어라.
역사를 짚어보면, 이 모든 것의 씨앗은 **연립방정식(system of linear equations)**에 있었다. 고대 바빌로니아인들은 2,000년 전에 이미 "밀 3자루와 보리 2자루의 총 가격은?"류의 연립방정식을 점토판에 새겼다. 17세기 라이프니츠(Leibniz)는 계수를 조직적으로 다루는 방법을 고민했고, 19세기 가우스(Carl Friedrich Gauss)는 오늘날 우리가 배울 체계적 소거법을 확립했다. 그리고 20세기에 들어서 선형대수학은 물리학, 컴퓨터 과학, 통계학, 딥러닝 전반의 공통 언어가 됐다. MIT의 Gilbert Strang은 그의 명저 Introduction to Linear Algebra(5th ed., 2016)에서 "선형대수학은 응용수학의 중심이며, 가장 실용적인 수학의 언어"라고 단언한다. 이것은 과장이 아니다 — 네가 앞으로 배울 텐서, 머신러닝, 3D 그래픽 엔진은 전부 이 1단계에 뿌리를 두고 있다.
자, 그렇다면 이 모든 것을 관통하는 핵심 DNA가 무엇인지 먼저 잡아야 한다. 그것은 바로 **선형성(linearity)**이다. 'linear'는 "직선적으로 비례하는"이라는 뜻이다. f(x) = 2x라는 함수를 보자. x가 3이면 6이고, x가 6이면 12로 정확히 두 배다. 또한 f(1+2) = f(3) = 6 = f(1) + f(2) = 2 + 4. 이 두 가지 성질을 수식으로 쓰면: (1) 비례성(homogeneity): f(cx) = c·f(x) 와 (2) 가산성(additivity): f(x+y) = f(x)+f(y). 이 둘이 동시에 성립할 때 우리는 그 사상(mapping)이 "선형"이라고 말한다. 이 두 조건은 앞으로 배울 모든 것 — 벡터 공간, 행렬, 선형 변환 — 의 정의에 반복적으로 등장한다. 선형대수학의 진짜 정체는 "선형성이라는 제약 아래서 공간이 어떤 구조를 갖는가"를 연구하는 학문이다.
[노트 기록] 선형성의 두 조건: ① f(cx) = c·f(x) (비례성), ② f(x+y) = f(x)+f(y) (가산성). 이 둘을 하나로 합치면 f(ax+by) = a·f(x) + b·f(y). 이 식이 이번 단계 전체의 열쇠다.
연립방정식을 기하학적으로 보면 모든 것이 명료해진다. 방정식 2x + y = 5는 2D 평면 위의 직선 하나다. x - y = 1을 추가하면 또 다른 직선이 생긴다. 두 직선이 한 점에서 만나면 → 해 하나. 평행하면 → 해 없음. 일치하면 → 해 무한히 많음. 행렬과 가우스 소거법은 이 기하학적 직관을 n개의 변수, n개의 방정식으로 확장하는 체계적 도구다. n=100, n=1000일 때도 같은 원리로 작동한다는 것이 핵심이다. 이 기하학적 이미지를 머릿속에 항상 유지하면서 읽어가라.
본 내용 1 — 벡터 공간: 공간의 추상화
벡터(vector)라는 말을 들으면 아마 물리 시간에 배운 "방향과 크기를 가진 화살표"를 떠올릴 것이다. 맞다, 그 이미지로 출발하자. 그런데 수학자들은 이것을 훨씬 더 추상적으로 확장했다. "화살표처럼 더하기와 스칼라 곱하기가 가능한 모든 것"이 벡터가 될 수 있다. 놀랍게도 다항식 p(x) = 3x²+2x+1도 벡터로 다룰 수 있고, 행렬 자체도 벡터가 될 수 있다. 지금은 이것이 당혹스러워도 괜찮다. 우선 "벡터 = 화살표"로 시작하자.
**벡터 공간(Vector Space)**은 "벡터들의 집합 V와, 두 연산(덧셈 +, 스칼라 곱셈 ·)이 특정 공리를 만족하는 구조"다. Paul Halmos의 Finite-Dimensional Vector Spaces(1974)는 이 공리들을 엄밀히 나열하지만, 지금 가장 중요한 것은 **폐쇄성(closure)**이다: 두 벡터를 더해도 V 안에 있어야 하고, 스칼라를 곱해도 V 안에 있어야 한다. 예를 들어 ℝ² (2D 벡터 전체의 집합)는 벡터 공간이다. (1,2) + (3,4) = (4,6) ∈ ℝ². 2·(1,2) = (2,4) ∈ ℝ². 폐쇄성 만족. 또한 반드시 영벡터(zero vector) 0이 V 안에 있어야 하고, 모든 벡터 v에 대해 -v가 존재해야 한다.
여기서 스스로 생각해볼 질문: "x > 0이고 y > 0인 2D 벡터들만 모은 집합은 벡터 공간일까?" 잠깐 멈추고 폐쇄성을 확인해봐라. (1,1)에 -2를 곱하면 (-2,-2)인데, 이것은 집합 밖에 있다. 따라서 스칼라 곱에 대한 폐쇄성이 깨진다 → 벡터 공간 아님. 이렇게 "왜 벡터 공간이 아닌가?"를 논증하는 것이 공리(axiom)의 역할을 체득하는 최고의 방법이다.
**부분공간(Subspace)**도 잡고 가자. 벡터 공간 V의 부분집합 W가 V의 두 연산 아래서 그 자체로 벡터 공간이 될 때 W를 부분공간이라 한다. 가장 중요한 판별 조건은 세 가지다: ① 0 ∈ W (원점 포함), ② u+v ∈ W (덧셈 폐쇄), ③ cu ∈ W (스칼라 곱 폐쇄). ℝ³에서 원점을 지나는 평면은 부분공간이다. 원점을 지나지 않는 평면은? ① 조건부터 실패한다. 원점을 포함하지 않으면 부분공간이 될 수 없다 — 이것을 기하학적으로 그림으로 그려보며 이해하라.
[노트 기록] 벡터 공간 V의 부분공간 W 판별: ① 0 ∈ W, ② u, v ∈ W → u+v ∈ W, ③ u ∈ W, c ∈ ℝ → cu ∈ W. 세 조건 모두 확인!
본 내용 2 — 선형 독립, 기저, 차원: 공간의 뼈대 찾기
공간이 벡터들의 집합이라는 것을 알았다. 이제 문제: 공간을 기술하는 데 얼마나 많은 벡터가 필요하고, 어떤 벡터들이 가장 "효율적인 뼈대"가 될 수 있을까?
**선형 결합(Linear Combination)**부터 시작하자. 벡터 v₁, v₂, ..., vₖ에 스칼라 c₁, c₂, ..., cₖ를 곱하고 더한 것 c₁v₁ + c₂v₂ + ··· + cₖvₖ을 이들의 선형 결합이라 한다. v₁ = (1,0), v₂ = (0,1)이면 2v₁ + 3v₂ = (2,3)이다. 이 두 벡터로 ℝ² 위의 모든 점을 표현할 수 있다. 그런데 v₃ = (1,1)을 추가하면 어떨까? v₃ = v₁ + v₂이므로 v₃는 새로운 정보를 주지 못한다. 이것이 선형 종속(Linearly Dependent) 상황이다. 반대로, 어떤 벡터도 나머지들의 선형 결합으로 표현되지 않는다면, 그 벡터들은 **선형 독립(Linearly Independent)**이다.
[노트 기록] 선형 독립의 정의: c₁v₁ + c₂v₂ + ··· + cₖvₖ = 0 이 성립하려면 반드시 c₁ = c₂ = ··· = cₖ = 0이어야 할 때, 이 벡터들은 선형 독립. 하나라도 0이 아닌 cᵢ가 존재하면 선형 종속.
선형 독립의 의미를 씹어보자. c₁v₁ + c₂v₂ = 0이고 c₁ ≠ 0이라면 v₁ = -(c₂/c₁)v₂, 즉 v₁이 v₂의 배수다. 선형 종속 = 정보의 중복이다. 좋은 뼈대는 중복이 없어야 하고, 동시에 공간 전체를 커버할 수 있어야 한다. 이 두 조건을 동시에 만족하는 것이 바로 **기저(Basis)**다.
**기저(Basis)**의 정의: 벡터 공간 V의 기저는 "(1) 선형 독립이고, (2) V를 생성(span)하는" 벡터들의 집합이다. 조건 (1)은 "중복 없음", 조건 (2)는 "충분함"이다. ℝ²의 표준 기저는 e₁=(1,0), e₂=(0,1)이다. 그런데 u₁=(1,1), u₂=(1,-1)도 ℝ²의 기저가 될 수 있다. 스스로 확인해보라 — 임의의 (a,b)를 c₁u₁ + c₂u₂로 표현할 수 있는가? c₁과 c₂를 a, b로 나타내는 식을 세워보라. 기저는 유일하지 않다.
**차원(Dimension)**은 어떤 기저를 택하든 기저 벡터의 개수는 항상 같다는 놀라운 사실에 기반한다. 이것은 자명하지 않고 수학적 증명이 필요한 정리다 (Strang, Ch.2, Basis Theorem). dim(ℝⁿ) = n이고, 기저는 항상 정확히 n개의 벡터로 구성된다. 4차원 공간에는 4개의 기저 벡터가 필요하다 — 우리가 시각화할 수 없더라도, 수학은 완벽하게 다룰 수 있다.
[노트 기록] dim(V) = 기저의 벡터 개수. 기저는 다양하지만 차원은 유일하다. V의 기저는 n개의 선형 독립 벡터 or n개의 span하는 벡터.
본 내용 3 — 행렬 연산과 가우스 소거법: 연립방정식을 정복하다
벡터 공간의 개념을 잡았으니, 이제 연립방정식을 행렬로 표현하고 체계적으로 푸는 법을 배울 차례다. 앞서 우리는 방정식 2x + y = 5, x - y = 1이 두 직선의 교점을 찾는 문제라는 것을 봤다. 이것을 행렬로 쓰면:
[2 1] [x] [5]
[1 -1] [y] = [1]
즉 Ax = b 형태다. 여기서 A는 계수행렬, x는 미지수 벡터, b는 우변 벡터다. 이 표현은 앞으로 계속 등장한다.
행렬 덧셈과 스칼라 곱은 직관적이다. 같은 위치 원소끼리 더하고, 스칼라는 모든 원소에 곱한다. 그런데 행렬 곱셈은 주의가 필요하다. m×n 행렬 A와 n×p 행렬 B의 곱 AB는 m×p 행렬이 된다. (AB)ᵢⱼ = A의 i번째 행과 B의 j번째 열의 내적이다. 그리고 절대로 잊어서는 안 되는 것: AB ≠ BA (일반적으로). 행렬 곱셈은 교환법칙이 성립하지 않는다. 이것이 초보자의 가장 흔한 실수다. 또한 (AB)ᵀ = BᵀAᵀ — 전치(transpose)할 때 순서가 뒤집힌다. 왜 그런지 2×2 행렬로 직접 계산해보고 확인하라.
[노트 기록] 행렬 곱셈 주의사항: AB ≠ BA (교환법칙 ✗). (AB)ᵀ = BᵀAᵀ (전치 시 순서 뒤집기). A(BC) = (AB)C (결합법칙 ✓). A(B+C) = AB+AC (분배법칙 ✓).
이제 **가우스 소거법(Gaussian Elimination)**이다. 핵심 아이디어는 세 가지 **기본 행 연산(Elementary Row Operations)**만으로 행렬을 단순한 형태로 바꾸는 것이다: (1) 두 행 교환(Row swap), (2) 한 행에 0이 아닌 스칼라 곱하기(Scaling), (3) 한 행의 배수를 다른 행에 더하기(Row addition). 이 세 연산은 연립방정식의 해를 변화시키지 않는다. 목표는 **행 사다리꼴(Row Echelon Form, REF)**로 만드는 것이다 — 각 행의 첫 번째 0이 아닌 원소(피벗, pivot)가 위 행의 피벗보다 오른쪽에 위치하도록.
구체적인 예를 보자. 다음 연립방정식을 푼다:
x + 2y + z = 3 → [1 2 1 | 3]
2x + 5y + 2z = 7 → [2 5 2 | 7]
3x + 8y + 4z = 12 → [3 8 4 | 12]
R2 ← R2 - 2R1, R3 ← R3 - 3R1을 적용하면 [0 1 0 | 1], [0 2 1 | 3]이 된다. 이어서 R3 ← R3 - 2R2를 적용하면 [0 0 1 | 1]이 된다. 이제 REF 완성. **후방 대입(back substitution)**으로 z=1, y=1, x=0을 얻는다. 모든 연립방정식이 이 알고리즘 하나로 풀린다 — 변수가 100개라도.
눈치밥 핵심 ①: 가우스 소거 중 어떤 행이 전부 0이 되면? 그 방정식이 다른 방정식들의 선형 결합이라는 뜻이다. 이때 우변(b)의 해당 위치도 0이면 해 무한히 많음(자유변수 존재), 0이 아니면 모순 → 해 없음. 이 판단을 소거 중 즉시 해야 한다.
여기서 **rank(계수)**를 정의한다. **rank(A)**는 A를 REF로 만들었을 때 피벗의 개수, 즉 0이 아닌 행의 수다. rank는 행렬이 "실제로" 몇 차원의 공간을 다루는지를 말한다. n×n 행렬에서 rank = n이면 모든 방정식이 독립적이고, rank < n이면 중복이 있다는 뜻이다. 문제를 받으면 rank를 먼저 체크하는 것이 이 단계의 가장 중요한 습관이다.
[노트 기록] rank(A) = REF로 만들었을 때 피벗의 수 = 선형 독립인 행(또는 열)의 최대 수. rank-nullity 정리: rank(A) + nullity(A) = n (열의 수). nullity는 Ax=0의 해 공간의 차원.
본 내용 4 — 선형 변환: 행렬을 함수로 보다
이제 행렬을 완전히 새로운 눈으로 볼 시간이다. 앞서 선형성의 두 조건을 기억하는가 — f(cx) = cf(x)와 f(x+y) = f(x)+f(y). 이 조건을 만족하는 함수 T: V → W를 선형 변환(Linear Transformation) 또는 **선형 사상(Linear Map)**이라 한다.
놀라운 사실이 있다. 유한 차원 벡터 공간 사이의 모든 선형 변환은 행렬 곱셈으로 표현된다. 즉 T(x) = Ax인 행렬 A가 반드시 존재한다. 이것이 선형대수학의 심장부다. 행렬은 숫자들의 표가 아니라, 공간을 변환하는 함수다. Ax = b는 "b라는 위치를 만드는 원래 입력 x를 찾아라"는 뜻이기도 하다.
기하학적으로 무슨 일이 일어나는지 생각해보자. 행렬
A = [2 0]
[0 3]
을 벡터에 곱하면 x방향으로 2배, y방향으로 3배 늘어난다 (스케일링). 행렬
R = [0 -1]
[1 0]
은 90° 반시계 회전이다. 스스로 e₁=(1,0)과 e₂=(0,1)에 각각 R을 곱해보라. 어디로 이동하는가? 행렬의 j번째 열 = T(eⱼ) = j번째 표준 기저 벡터의 변환 결과. 이 규칙 하나로 임의의 선형 변환을 행렬로 코딩할 수 있다.
[노트 기록] 선형 변환 T의 행렬 A: A의 j번째 열 = T(eⱼ). 회전 θ의 행렬: [[cosθ, -sinθ], [sinθ, cosθ]]. 이 공식은 이번 프로젝트에서 쓴다.
핵(Kernel)과 치역(Image): Ker(T) = {x | T(x) = 0}은 "0으로 보내지는 벡터들의 집합(영공간, null space)"이고, Im(T)는 "T가 만들 수 있는 모든 출력의 집합(열공간, column space)"이다. 차원 정리(Rank-Nullity Theorem): dim(V) = dim(Ker(T)) + dim(Im(T)). 풀어쓰면, n = nullity + rank. 입력 공간의 차원 중 일부는 사라지고(null space), 나머지는 살아남아 출력(column space)을 만든다. 이것은 아름다운 보존 법칙이다.
본 내용 5 — 행렬식과 역행렬: 가역성을 3초에 판단하다
앞서 Ax = b라는 방정식을 봤다. 그렇다면 "이 방정식이 항상 유일한 해를 갖는가?"라는 질문에 3초 내에 답할 수 있어야 한다. 그 판단의 도구가 **행렬식(Determinant)**과 **역행렬(Inverse Matrix)**이다.
행렬식은 정방행렬에만 정의되며, 행렬이 표현하는 선형 변환이 공간을 얼마나 "늘리거나 줄이는가"를 나타내는 스칼라다. 기하학적으로, det(A)는 A의 열벡터들이 만드는 평행다면체의 **부호 있는 부피(signed volume)**다. 2×2의 경우:
A = [a b] → det(A) = ad - bc
[c d]
두 열벡터 (a,c)와 (b,d)가 만드는 평행사변형의 부호 있는 넓이가 ad-bc다. 이것이 왜 중요한가? det(A) = 0이면 두 열벡터가 평행하다는 뜻이고, 선형 변환이 공간을 "납작하게 찌그러뜨린다"는 뜻이며, 즉 정보를 잃는다는 뜻이다. 정보를 잃으면 원래 상태로 되돌릴 수 없다 — 역행렬이 존재하지 않는다.
[노트 기록] 2×2 역행렬 공식: A = [[a,b],[c,d]]이면, A⁻¹ = (1/(ad-bc)) × [[d,-b],[-c,a]]. det(A) = ad-bc = 0이면 역행렬 없음 (singular matrix). 이것이 눈치밥 스킬 ④.
3×3 행렬식은 여인수 전개(Cofactor Expansion)로 계산한다. 한 행을 따라 각 원소에 해당 부호(+ 또는 -)를 곱하고 2×2 소행렬식을 계산해 합산한다:
det [a b c] [e f] [d f] [d e]
[d e f] = a·det[h i] - b·det[g i] + c·det[g h]
[g h i]
하지만 실용적으로는 가우스 소거로 상삼각행렬을 만든 뒤 대각 원소들의 곱이 훨씬 빠르다 (행 교환 시마다 부호가 바뀜). 이것이 가우스 소거법과 행렬식이 연결되는 지점이다.
역행렬은 AA⁻¹ = A⁻¹A = I (단위행렬)을 만족하는 행렬이다. 역행렬이 존재하는 행렬을 **가역(invertible) 또는 비특이(nonsingular)**라 한다. n×n 역행렬을 구하는 방법: 첨가행렬 [A | I]에 가우스-조르당 소거를 적용해 [I | A⁻¹]을 얻는다. 이것이 이번 단계의 모든 개념이 하나로 합류하는 순간이다 — 기본 행 연산, 단위행렬, 역행렬이 연결된다.
[노트 기록] 가역성의 동치 조건 (이 중 하나만 참이면 모두 참): ① det(A) ≠ 0, ② rank(A) = n, ③ Ax = 0의 해는 x = 0뿐, ④ Ax = b가 모든 b에 대해 유일한 해를 가짐, ⑤ A의 열들이 선형 독립. (Strang, Introduction to Linear Algebra, 5th ed., "Invertible Matrix Theorem")
눈치밥 스킬 총정리: 행렬 A를 받으면 (1) 크기 확인 (정방인가?), (2) rank 체크 (REF 또는 대각선 관찰), (3) det 확인 (rank=n이면 det≠0, 가역). 2×2이면 ad-bc를 즉시 계산. 3×3 이상이면 상삼각 변환 후 대각 곱. 0행이 나오면 → 가역 아님 → det=0 → rank 부족. 이 판단 흐름이 3초 내에 이루어지도록 드릴이 필요하다.
프로젝트 — 예제 중심 훈련 (약 40분)
지금부터 네 가지 문제 세트를 준다. 각 문제는 풀이 과정(계산, 논증, 판단 근거)을 손으로 직접 써가며 푸는 것이 중요하다. 정답은 없다. 네가 생각한 과정이 평가의 대상이다.
[프로젝트 A] 벡터 공간 탐험 (약 10분)
아래 집합들을 각각 검토하고, 벡터 공간 또는 부분공간이 되는지 여부와 그 이유를 논증하라. 단순히 "아니다"가 아니라, 어떤 공리(조건)가 깨지는지 구체적으로 명시하라.
문제 A-1. W₁ = {(x, y) ∈ ℝ² | x + y = 0}. (힌트: x+y=0을 만족하는 두 점을 골라 더해보라.)
문제 A-2. W₂ = {(x, y) ∈ ℝ² | x + y = 1}.
문제 A-3. W₃ = {(x, y, z) ∈ ℝ³ | x = 2y}. 만약 W₃가 부분공간이라면, dim(W₃)는 얼마인가? 기저를 하나 명시하라.
문제 A-4. 행렬들의 집합 M = {A ∈ ℝ²ˣ² | Aᵀ = A} (대칭행렬 전체). M은 ℝ²ˣ²의 부분공간인가? 만약 그렇다면 dim(M)은 얼마이고 기저는 무엇인가?
[프로젝트 B] 가우스 소거법 마스터 (약 15분)
아래 연립방정식들을 첨가행렬로 표현하고 가우스 소거를 적용하라. 피벗의 위치, rank, 해의 형태(유일/무한/없음)를 명시하고, 해가 있으면 구하라.
문제 B-1.
x + 2y - z = 1
2x + 4y - 2z = 2
3x + 6y - 3z = 3
(소거 중 0행이 등장할 것이다. 어떤 의미인가?)
문제 B-2.
x + y + z = 6
2x + 3y + z = 10
3x + 4y + 2z = 17
문제 B-3. 다음 첨가행렬에서 k의 값에 따라 해의 형태(유일/무한/없음)가 어떻게 달라지는지 분석하라.
[1 2 | 3]
[2 k | 6]
k는 어떤 값일 때 해가 없는가? 유일한가? 무한한가?
문제 B-4. 다음 행렬의 역행렬을 가우스-조르당 소거([A|I] → [I|A⁻¹])로 구하라.
A = [1 2]
[3 7]
계산 후, 2×2 역행렬 공식 (ad-bc 방법)으로 검산하라. 두 결과가 일치하는가?
[프로젝트 C] 선형 변환 설계 (약 10분)
선형 변환은 행렬로 표현된다. 아래 각 변환을 행렬로 표현하라. 앞서 배운 규칙 — A의 j번째 열 = T(eⱼ) — 을 적용하라.
문제 C-1. ℝ²에서 x축을 기준으로 대칭이동(reflection)하는 변환 T₁의 행렬을 구하라. (힌트: T₁(1,0) = ? T₁(0,1) = ?)
문제 C-2. ℝ²에서 원점을 중심으로 45° 반시계 회전하는 변환 T₂의 행렬을 구하라. (cos45° = sin45° = √2/2)
문제 C-3. T₁ 다음에 T₂를 적용하는 합성 변환 T₂∘T₁의 행렬은 무엇인가? 그리고 T₂ 다음에 T₁을 적용하는 T₁∘T₂의 행렬은 다른가? 실제로 계산해서 비교하고, 이것이 행렬 곱셈의 어떤 성질과 연결되는지 설명하라.
문제 C-4. 어떤 선형 변환 T: ℝ³ → ℝ²의 행렬 A가 다음과 같다.
A = [1 0 1]
[0 1 1]
rank(A)는 얼마인가? dim(Ker(T))는 얼마인가? (Rank-Nullity 정리를 사용하라.) Ker(T)의 기저를 하나 구하라.
[프로젝트 D] 3초 판단 드릴 (약 5분)
아래 각 행렬에 대해 (1) rank, (2) det, (3) 역행렬 존재 여부를 최대한 빠르게 판단하라. 단, 풀이 과정 없이 "눈치밥"으로 판단한 근거 한 줄씩만 써라.
D-1.
A = [1 2]
[2 4]
D-2.
B = [3 0 0]
[0 5 0]
[0 0 2]
(대각행렬의 특성을 이용하라.)
D-3.
C = [1 2 3]
[4 5 6]
[7 8 9]
(힌트: 세 번째 행을 보라. 첫 번째 행과 두 번째 행으로 만들 수 있는가?)
D-4.
D = [2 1 0]
[0 3 1]
[0 0 4]
(상삼각행렬의 det 계산법을 쓰라.)
D-5. 어떤 행렬 E의 가우스 소거 결과가 다음과 같다.
[2 1 3]
[0 0 5]
[0 0 0]
rank(E)는 얼마인가? E가 3×3 정방행렬이라면 역행렬이 존재하는가? Ea = b에서 어떤 b값에 대해서만 해가 존재하는가?
평가 기준 안내
프로젝트 A~D의 풀이를 스스로 채점해볼 때 다음 기준으로 평가하라.
| 평가 항목 | 배점 | 내용 |
|---|---|---|
| 선형 연산 능력 | 30점 | B, C 프로젝트의 계산 정확도 |
| rank/det 판단 | 25점 | D 프로젝트의 3초 판단 정확도와 근거 |
| 논리 전개 | 15점 | A 프로젝트의 논증 완결성 |
| 엔진 설계 (다음 단계 준비) | 30점 | C 프로젝트의 변환 행렬 설계와 합성 이해 |
이번 1단계에서 다룬 내용을 한 문장으로 요약하면 이렇다: 공간은 벡터 공간으로 추상화되고, 그 뼈대는 기저와 차원이 결정하며, 가우스 소거는 연립방정식을 체계적으로 해결하고, 행렬은 공간을 변환하는 함수이며, 행렬식은 그 변환이 정보를 보존하는지 3초 내에 판단하는 척도다. 이 1단계가 완벽히 체화되면, 2단계의 고유값(eigenvalue) — "행렬이 방향을 바꾸지 않는 특별한 벡터" — 이 자연스럽게 이어진다. 지금 배운 rank, 행렬식, 선형 독립이 고유값 계산의 직접적인 도구로 다시 등장한다.