기약행사다리꼴(RREF)·계수 계산기 쉽게 이해하기 — 개념과 원리
행렬을 기약행사다리꼴(RREF)로 바꾸고 계수(rank)와 퇴화차수(nullity)를 구하는 계산기입니다. RREF는 연립일차방정식의 구조를 가장 깔끔하게 보여 줍니다. 어떤 미지수가 결정되고 어떤 미지수가 자유로운지, 방정식이 모순 없이 풀리는지, 벡터들이 일차독립인지를 한눈에 알 수 있습니다. 데이터 분석에서는 계수로 중복된 변수나 측정값을 찾아냅니다.
계산 방법
행 교환, 0이 아닌 수를 행에 곱하기, 한 행의 배수를 다른 행에 더하기의 세 가지 기본 행 연산으로 가우스-조르당 소거를 합니다. 열마다 0이 아닌 피벗을 골라 1로 만들고, 같은 열의 나머지 성분은 모두 0으로 만듭니다. 그 결과는 다음 조건을 만족합니다.
- 0이 아닌 행은 선행 1(피벗)로 시작합니다.
- 아래 행의 피벗은 위 행의 피벗보다 오른쪽에 있습니다.
- 피벗이 있는 열의 다른 성분은 0이고, 영행은 맨 아래에 놓입니다.
계수 = 피벗의 개수, 퇴화차수 = 열의 수 − 계수입니다(차원 정리).
원리
기본 행 연산은 Ax = 0의 해집합과 행공간을 바꾸지 않습니다. 그래서 정보는 그대로 두고 읽기 쉬운 모양으로만 바꿀 수 있습니다. 피벗 하나는 진짜로 독립적인 방정식 하나를 뜻하고, 영행은 다른 방정식들의 일차결합이었던 방정식을 드러냅니다. 피벗이 없는 열은 자유변수에 대응하며 자유변수 하나마다 영공간의 차원이 1씩 늘어납니다. 한 행렬의 RREF는 하나뿐이므로 어떤 순서로 계산해도 결과가 같습니다.
예제 풀이
- 기본 입력: A = [1 2 3; 4 5 6; 7 8 9]
- R2 − 4R1 = [0 −3 −6], R3 − 7R1 = [0 −6 −12]
- R2를 −3으로 나누면 [0 1 2], R3 + 6R2 = [0 0 0]
- R1 − 2R2 = [1 0 −1]
- RREF = [1 0 −1; 0 1 2; 0 0 0], 피벗이 2개이므로 계수 2, 퇴화차수 3 − 2 = 1입니다.
x₃ = t로 두면 x₁ = t, x₂ = −2t이므로 영공간은 (1, −2, 1)이 생성합니다.
결과 해석
n×n 행렬의 계수가 n이면 역행렬이 있고, n보다 작으면 행렬식이 0입니다. 첨가행렬 [A | b]에서 b를 붙여도 계수가 늘지 않으면 해가 존재합니다. 이때 계수가 미지수 개수와 같으면 해가 하나뿐이고, 작으면 퇴화차수만큼의 자유 매개변수를 갖는 무수히 많은 해가 있습니다.
흔한 실수
- 행사다리꼴(REF)에서 멈춰 피벗이 1이 아니거나 피벗 위가 0이 아닌 상태로 읽는 경우
- 0이 아닌 행이 아니라 0이 아닌 성분의 개수를 세는 경우
- 1e-16 같은 아주 작은 값을 0이 아닌 수로 보는 경우(반올림 오차입니다)
자주 묻는 질문
A와 Aᵀ의 계수는 같나요?
같습니다. 행계수와 열계수는 항상 일치합니다.
퇴화차수가 0이면 무슨 뜻인가요?
Ax = 0의 해가 x = 0뿐이라는 뜻으로, 열벡터들이 일차독립입니다.
계산 순서에 따라 RREF가 달라지나요?
달라지지 않습니다. 모든 행렬의 RREF는 유일합니다.
출처: Gilbert Strang, Introduction to Linear Algebra, Wellesley-Cambridge Press · David C. Lay, Linear Algebra and Its Applications, Pearson