이 글에서 정리하는 내용
저는 이 글에서 행렬을 처음 배우는 분도 흐름으로 이해할 수 있도록, 행렬의 정의부터 합·차·스칼라곱·행렬곱·전치, 가우스 소거법, 행렬의 종류, 부울행렬까지 한 번에 정리하겠습니다. 단순히 공식을 외우는 방식이 아니라 왜 이런 연산이 필요한지, 어떤 상황에서 어떤 행렬을 구분해야 하는지까지 함께 묶어서 설명하겠습니다.
행렬은 무엇이고 어떻게 읽는가

처음 이 대상을 보면 숫자를 네모칸에 넣어 둔 표처럼 보이지만, 저는 이를 단순한 표보다 조금 더 넓게 이해하는 편이 좋다고 생각합니다. 이것은 데이터를 일정한 규칙으로 정리해서 계산 가능한 형태로 바꾼 표현입니다. 학생 점수표, 좌표 정보, 연결 관계, 이미지 픽셀 데이터처럼 서로 관련된 숫자를 구조적으로 다뤄야 할 때 이런 배열이 등장합니다. 그래서 이 단원은 숫자를 예쁘게 배치하는 법을 배우는 것이 아니라, 데이터를 계산 가능한 구조로 다루는 법을 배우는 과정이라고 보면 이해가 훨씬 쉬워집니다.
들어가기 앞서, 자주 나오는 기호를 읽는 법
m × n : m행 n열
aᵢⱼ : i행 j열의 원소
Aᵀ : A의 전치
R₁ ↔ R₂ : 1행과 2행을 교환
R₂ → R₂-3R₁ : 2행에 1행의 3배를 빼서 바꾸기
초심자는 기호를 읽는 순간부터 멈추는 경우가 많습니다. 그래서 저는 계산보다 먼저 읽는 법을 익히는 편이 훨씬 효율적이라고 봅니다. 특히 Aᵀ는 전치, aᵢⱼ는 i행 j열의 원소, R 표기는 기본행연산이라는 뜻만 익혀도 뒤쪽 내용이 훨씬 부드럽게 이어집니다.
행과 열, m × n, aij를 읽는 법
A = [ 1 2 3
4 5 6 ]
2 × 3 행렬
행(row) = 가로줄 개수 2개
열(column) = 세로줄 개수 3개
a₁₂ = 1행 2열의 원소 = 2
a₂₃ = 2행 3열의 원소 = 6
Aᵀ = 행과 열을 바꾼 전치행렬
이 배열은 가로줄인 행과 세로줄인 열로 이루어집니다. 위의 A는 2행 3열이므로 2 × 3 크기입니다. 여기서 aij는 i행 j열에 있는 원소를 뜻합니다. 초심자가 가장 자주 헷갈리는 부분이 바로 이 표기인데, 저는 이 기호를 볼 때 항상 앞의 숫자는 행, 뒤의 숫자는 열이라고 읽습니다. 예를 들어 a12는 1행 2열, a23는 2행 3열입니다. 이 기본 읽기만 익숙해져도 뒤에서 나오는 대각원소, 전치행렬, 대칭행렬까지 훨씬 편하게 따라갈 수 있습니다.
또 m × n이라는 표기는 시험에서 자주 나옵니다. 이 표기를 제대로 읽지 못하면 덧셈이 가능한지, 곱셈이 가능한지조차 판단이 어려워집니다. 그래서 저는 이 단원을 시작할 때 계산보다 먼저 크기를 읽는 습관을 만드는 것이 중요하다고 봅니다.
실세계 데이터를 행렬로 보는 방법
학생 3명의 점수를 행렬로 표현한 예
S = [ 90 80
75 95
88 70 ]
행 = 학생
열 = 과목
1행 1열은 1번 학생의 1과목 점수
예를 들어 학생별 점수를 정리하면 이런 배열이 됩니다. 행을 학생으로 보고, 열을 과목으로 보면 각 칸의 숫자는 특정 학생의 특정 과목 점수를 뜻합니다. 이런 식으로 행과 열에 의미를 부여하면 이것은 갑자기 외워야 할 수학 기호가 아니라, 현실 데이터를 구조적으로 표현하는 도구로 보이기 시작합니다. 저는 이 감각을 먼저 잡아 두면 뒤에서 연산을 배우더라도 왜 더하고, 왜 곱하고, 왜 전치하는지 훨씬 덜 막힌다고 생각합니다.
행렬의 기본 연산 이해하기
연산은 종류가 여러 개 있지만, 처음에는 모두 하나로 섞여 보이기 쉽습니다. 저는 이 부분을 합·차·스칼라곱처럼 같은 자리끼리 계산하는 연산과, 곱셈처럼 구조 자체를 연결하는 연산으로 나누어 이해하는 것이 가장 쉽다고 봅니다. 전치는 계산이라기보다 행과 열의 관점을 바꾸는 연산으로 이해하면 자연스럽습니다.
합, 차, 스칼라곱
A = [ 1 2 ] B = [ 3 4 ]
[ 5 6 ] [ 7 8 ]
A + B = [ 4 6 ]
[ 12 14 ]
2A = [ 2 4 ]
[ 10 12 ]
합과 차는 같은 위치에 있는 원소끼리 계산합니다. 그래서 두 대상의 크기가 반드시 같아야 합니다. 2 × 2 배열과 2 × 3 배열은 모양이 다르기 때문에 더할 수 없습니다. 이 규칙은 생각보다 단순합니다. 숫자표 두 개를 완전히 같은 칸 구조로 맞춰 놓고 같은 칸끼리 더한다고 생각하면 됩니다. 스칼라곱은 전체에 하나의 숫자를 곱하는 연산입니다. 예를 들어 2A는 A의 모든 원소에 2를 곱한 결과입니다. 저는 스칼라곱을 전체를 확대하거나 축소하는 느낌으로 이해하면 편하다고 봅니다.
여기서 중요한 것은 합과 차는 위치가 같아야 하고, 스칼라곱은 모든 원소가 함께 바뀐다는 점입니다. 즉 합과 차는 두 배열의 모양 비교가 핵심이고, 스칼라곱은 하나의 배열에 외부 숫자가 작용하는 방식입니다.
곱셈과 전치
A = [ 1 2 3 ] B = [ 1 4 ]
[ 4 5 6 ] [ 2 5 ]
[ 3 6 ]
AB = [ 14 32 ]
[ 32 77 ]
Aᵀ = [ 1 4 ]
[ 2 5 ]
[ 3 6 ]
이 곱셈은 초심자가 가장 많이 막히는 부분입니다. 합처럼 같은 자리를 더하는 방식이 아니라, 앞 배열의 한 행과 뒤 배열의 한 열을 묶어서 계산합니다. 그래서 앞 배열의 열 수와 뒤 배열의 행 수가 같아야 합니다. 위 예시에서 A는 2 × 3이고 B는 3 × 2이므로 곱이 가능합니다. 결과는 앞의 행 개수와 뒤의 열 개수를 따라가서 2 × 2 크기가 됩니다. 저는 이 규칙을 외울 때 항상 앞의 안쪽 수가 맞아야 곱할 수 있다고 기억합니다.
전치는 행과 열을 서로 바꾸는 연산입니다. A가 2 × 3이면 Aᵀ는 3 × 2가 됩니다. 이 전치 개념은 뒤에서 대칭과 역대칭을 설명할 때 핵심 기준이 됩니다. 그래서 전치는 단순한 보조 연산이 아니라, 형태를 판단하는 중요한 기준으로 이해하는 편이 좋습니다.
| 연산 | 핵심 조건 |
|---|---|
| 합·차 | 두 행렬의 크기가 같아야 합니다. |
| 곱 | 앞 행렬의 열 수와 뒤 행렬의 행 수가 같아야 합니다. |
가우스 소거법과 기본행연산
이 단원은 연산만 배우고 끝나지는 않습니다. 연립방정식을 더 체계적으로 풀기 위해 이 구조를 사용하게 되는데, 이때 등장하는 것이 확장행렬과 기본행연산, 그리고 가우스 소거법입니다. 저는 이 부분을 연립방정식을 계산하기 쉬운 형태로 정리해 나가는 과정이라고 이해하면 가장 자연스럽다고 생각합니다.
기본행연산 3가지는 무엇을 하는가
R₁ ↔ R₂ : 두 행을 서로 바꾸기
R₂ → 2R₂ : 한 행에 0이 아닌 상수 곱하기
R₂ → R₂ - 3R₁ : 한 행에 다른 행의 상수배를 더하기
기본행연산은 세 가지만 기억하면 됩니다. 첫째는 두 행을 서로 바꾸는 행 교환입니다. 둘째는 한 행 전체에 0이 아닌 상수를 곱하는 행 스케일링입니다. 셋째는 한 행에 다른 행의 상수배를 더하는 행 대체입니다. 이 세 연산은 연립방정식의 해를 바꾸지 않으면서 식의 모양만 더 풀기 쉬운 형태로 바꾸는 역할을 합니다. 그래서 저는 기본행연산을 문제를 바꾸는 것이 아니라, 같은 문제를 더 읽기 쉬운 형태로 다시 정리하는 과정이라고 설명하는 편이 가장 쉽다고 봅니다.
확장행렬과 가우스 소거법의 흐름
x + y = 3
2x + y = 5
[ 1 1 | 3 ]
[ 2 1 | 5 ]
R₂ → R₂ - 2R₁
[ 1 1 | 3 ]
[ 0 -1 | -1 ]
R₂ → -R₂
[ 1 1 | 3 ]
[ 0 1 | 1 ]
R₁ → R₁ - R₂
[ 1 0 | 2 ]
[ 0 1 | 1 ]
연립방정식을 숫자만 모아 적은 형태가 확장행렬입니다. 이렇게 바꿔 놓으면 식 전체를 보지 않고도 규칙적으로 계산을 진행할 수 있습니다. 가우스 소거법은 기본행연산을 이용해 아래쪽을 0으로 만들고, 선도원소가 점점 오른쪽으로 이동하도록 정리하는 과정입니다. 마지막 결과가 해를 바로 읽기 쉬운 형태가 되면 x와 y 값을 쉽게 구할 수 있습니다. 위 예시에서는 x = 2, y = 1이 됩니다.
여기서 행제형이라는 말도 함께 등장합니다. 초심자 입장에서는 정의를 길게 외우기보다, 0만 있는 행은 아래쪽에 모이고 각 행의 첫 번째 0이 아닌 원소는 아래로 갈수록 더 오른쪽으로 이동한다는 점을 먼저 떠올리면 충분합니다. 즉 해를 읽기 쉬운 계단 모양으로 정리된 상태라고 이해하면 됩니다. 먼저 흐름을 이해한 뒤에 정의를 다시 보면 훨씬 덜 어렵습니다.
종류 구분하기
종류는 이름이 많아서 처음에는 외울 것이 많아 보입니다. 하지만 저는 기준을 두 개만 잡으면 훨씬 정리하기 쉽다고 생각합니다. 첫째는 행 수와 열 수가 같은지, 둘째는 전치했을 때 어떤 성질이 나타나는지입니다. 이 두 기준만 익혀도 정방, 대칭, 역대칭의 차이가 한 번에 정리됩니다.
정방, 대칭, 역대칭
정방행렬
[ 2 1 ]
[ 3 4 ]
대칭행렬 Aᵀ = A
[ 1 2 ]
[ 2 5 ]
역대칭행렬 Aᵀ = -A
[ 0 3 ]
[ -3 0 ]
정방행렬은 행 수와 열 수가 같은 형태입니다. 예를 들어 2 × 2, 3 × 3 같은 배열이 모두 여기에 들어갑니다. 정방행렬에서는 주대각선과 대각원소라는 표현이 자주 나옵니다. 왼쪽 위에서 오른쪽 아래로 이어지는 대각선이 주대각선이고, 그 위의 원소들이 대각원소입니다.
대칭행렬은 전치해도 원래 모습과 같습니다. 즉 aij와 aji가 서로 같습니다. 반대로 역대칭행렬은 전치하면 부호가 반대로 바뀝니다. 그래서 대각원소는 모두 0이 됩니다. 저는 이 둘을 구분할 때 그대로면 대칭, 부호가 뒤집히면 역대칭이라고 기억하는 것이 가장 빠르다고 봅니다.
부울 구조는 왜 중요한가

부울행렬은 원소가 0과 1만으로 이루어진 형태입니다. 겉으로 보면 단순해 보이지만, 컴퓨터과학과 연결되는 힘이 매우 큽니다. 왜냐하면 0과 1은 없음과 있음, 거짓과 참, 연결 안 됨과 연결됨처럼 관계를 표현하기에 아주 적합하기 때문입니다. 그래서 저는 부울행렬을 숫자 계산용 도구라기보다 관계 표현용 구조라는 관점으로 이해하는 편이 더 좋다고 생각합니다.
0과 1로 관계를 표현하기
세 정점의 연결 관계를 나타낸 부울 예시
B = [ 0 1 1
1 0 0
1 0 0 ]
1 = 연결되어 있음
0 = 연결되어 있지 않음
예를 들어 어떤 정점끼리 연결되어 있는지를 나타낼 때, 연결되어 있으면 1, 아니면 0으로 두면 부울 형태가 됩니다. 이렇게 하면 관계를 아주 단순한 형태로 저장할 수 있습니다. 학생 사이의 친구 관계, 웹 페이지 링크 관계, 네트워크 연결 관계처럼 컴퓨터과학에서 자주 다루는 구조를 이런 방식으로 표현할 수 있습니다.
부울 연산은 무엇이 다른가
A = [ 1 0 ] B = [ 1 1 ]
[ 0 1 ] [ 0 1 ]
부울합: 같은 자리에서 OR 사용
A ∨ B = [ 1 1 ]
[ 0 1 ]
부울곱: 곱은 AND, 합은 OR처럼 계산
부울 구조에서는 일반 숫자 배열처럼 더하고 곱하는 대신, 보통 논리연산의 관점으로 생각합니다. 같은 자리끼리 합칠 때는 OR처럼 보고, 곱을 계산할 때는 AND와 OR의 조합으로 생각합니다. 처음에는 생소하지만, 사실은 숫자 계산이라기보다 관계가 존재하는지를 묻는 계산이라고 이해하면 훨씬 쉽습니다. 저는 이 개념이 이 단원과 논리 단원을 연결해 주는 다리 역할을 한다고 봅니다.
정리
이 장의 핵심은 내용을 정의로 끊어 외우는 것이 아니라 하나의 흐름으로 묶는 데 있습니다. 먼저 행과 열, 크기, 원소 표기를 읽을 수 있어야 하고, 그다음 합·차·스칼라곱·곱셈·전치처럼 기본 연산이 각각 어떤 규칙을 가지는지 구분할 수 있어야 합니다. 그 위에 기본행연산과 가우스 소거법을 얹으면 연립방정식을 풀 수 있게 되고, 정방행렬·대칭행렬·역대칭행렬을 통해 성질을 분류할 수 있게 됩니다. 마지막으로 부울행렬까지 이해하면 이것이 단순 계산 도구를 넘어서 관계를 표현하는 구조라는 점도 자연스럽게 연결됩니다.
저는 이 단원을 공부할 때 공식만 따로 외우기보다, 데이터를 표현하는 도구에서 출발해 연산과 활용으로 이어지는 흐름을 계속 확인하는 것이 가장 중요하다고 생각합니다. 이 흐름만 잡히면 이후의 선형대수나 컴퓨터과학 내용도 훨씬 덜 낯설게 느껴집니다.
많이 받는 질문
Q. 합은 쉬운데 곱이 특히 어려운 이유는 무엇인가요?
합은 같은 위치의 원소끼리 계산하면 끝나지만, 곱은 한 행과 한 열을 묶어 계산해야 해서 구조를 함께 봐야 하기 때문입니다. 그래서 같은 크기인지보다 앞 배열의 열 수와 뒤 배열의 행 수가 맞는지가 더 중요합니다.
Q. 가우스 소거법은 꼭 이런 형태로만 해야 하나요?
식 자체를 가지고도 풀 수 있지만, 연립방정식이 길어질수록 확장행렬로 바꾸는 편이 훨씬 규칙적으로 정리됩니다. 그래서 가우스 소거법은 계산 실수를 줄이고 해를 체계적으로 찾는 데 유리합니다.
Q. 부울행렬은 일반적인 경우와 완전히 다른 것인가요?
형태는 비슷하지만 원소가 0과 1만으로 제한되고, 연산을 관계나 논리의 관점에서 해석한다는 점이 다릅니다. 그래서 숫자를 계산하는 느낌보다 연결 여부나 참·거짓을 다루는 구조로 이해하는 것이 더 적절합니다.