행렬(matrix)은 숫자를 직사각형 모양의 표로 정리한 거예요. 예를 들어 두 반의 국어·영어·수학 평균 점수를 표로 만들면, 그게 바로 2행 3열짜리 행렬이에요. 가로줄을 행(row), 세로줄을 열(column)이라고 부르고, i행 j열에 있는 숫자를 그 행렬의 (i,j) 성분이라고 해요. 행이 m개, 열이 n개면 "m×n 행렬"이라고 표현해요.

행렬끼리 더하고 빼는 건 어렵지 않아요. 크기가 같은 두 행렬을 같은 위치끼리 계산하면 돼요. 어떤 수 k를 행렬 전체에 곱하는 실수배(kA)도 모든 성분에 k를 곱하기만 하면 되고요. 여기까지는 우리가 알던 계산 방식과 비슷해요.

1 2 3 4 × 5 6 7 8 AB ≠ BA
행렬의 곱셈은 순서를 바꾸면 결과가 달라져요

하지만 곱셈은 완전히 다른 규칙으로 정의돼요. m×n 행렬 A와 p×q 행렬 B를 곱하려면 먼저 A의 열의 수(n)와 B의 행의 수(p)가 같아야 해요. 그래야 AB를 계산할 수 있고, 결과는 m×q 행렬이 돼요. AB의 (i,j) 성분은 A의 i행과 B의 j열을 순서대로 곱해서 모두 더한 값이에요.

가장 신기한 점은, 이 곱셈이 순서를 바꾸면 결과가 달라진다는 거예요. 우리가 아는 숫자 곱셈은 3×5든 5×3이든 항상 15로 같지만, 행렬은 AB와 BA가 일반적으로 서로 달라요. 심지어 한쪽만 정의되고 다른 쪽은 정의조차 안 되는 경우도 있어요. 이건 행렬이 단순한 숫자가 아니라, 변환이나 관계 같은 걸 표현하기 때문이에요 — "먼저 A를 적용하고 그다음 B를 적용한다"와 "먼저 B를 적용하고 그다음 A를 적용한다"는 순서가 다르면 당연히 다른 결과가 나올 수 있는 거죠.

행렬은 실생활에서도 아주 유용하게 쓰여요. 예를 들어 세 도시 사이에 직항 노선이 있으면 1, 없으면 0으로 표시한 표를 인접행렬이라고 하는데, 이 행렬을 자기 자신과 곱하면(M²) "정확히 한 번 경유해서 갈 수 있는 방법의 수"를 한 번에 계산할 수 있어요. SNS의 팔로우 관계, 지하철 노선도, 웹페이지 사이의 링크 구조도 모두 행렬로 표현하고 분석할 수 있어요. 컴퓨터 그래픽에서 물체를 회전·확대하는 계산이나, 인공지능이 대량의 데이터를 처리하는 계산도 결국 행렬 연산이 기본 언어예요.