[공통수학1 시리즈 3편] 2변수 다항식과 행렬
1. 1변수에서 2변수로
1.1 왜 2변수가 필요한가?
현실 세계의 많은 현상은 여러 변수의 관계로 표현됩니다. 단순히 하나의 변수만으로는 설명하기 어려운 복잡한 관계를 다루기 위해 2변수 다항식이 필요합니다.
실제 적용 예시:
| 분야 | 변수 | 다항식 예시 |
|---|---|---|
| 물리학 | 위치 | (전기장 분포) |
| 경제학 | 가격, 수요 | (비용 함수) |
| 이미지 처리 | 좌표 | 각 픽셀의 밝기를 2차원 배열로 표현 |
| 기상학 | 위도, 경도 | 기온 분포 |
2변수 다항식은 이러한 다차원적 관계를 수학적으로 정형화하는 강력한 도구입니다.
1.2 2변수 다항식의 구조
2변수 다항식의 일반적인 형태는 다음과 같습니다:
구성 요소 분석:
| 항 | 차수 | 차수 | 총 차수 | 계수 |
|---|---|---|---|---|
| 2 | 1 | 3 | 3 | |
| 1 | 2 | 3 | 2 | |
| 1 | 0 | 1 | 5 | |
| 0 | 1 | 1 | 7 | |
| 0 | 0 | 0 | 1 |
핵심 특징:
- 각 항은 와 의 차수를 각각 가짐
- 2차원 배열(행렬) 형태로 자연스럽게 표현 가능
- 의 차수 → 행(row), 의 차수 → 열(column)로 매핑
2. 2변수 다항식의 배열 표현
2.1 2차원 배열의 개념
의 차수를 행(row)로, 의 차수를 열(column)로 하는 2차원 배열로 표현합니다.
2차원 배열 = 행렬(Matrix):
2변수 다항식을 2차원 배열로 표현하는 것은 수학적으로 행렬(matrix)로 볼 수 있습니다.
행렬의 의미:
- 행(row): 의 차수에 따른 분류 ()
- 열(column): 의 차수에 따른 분류 ()
- 원소: 해당 항의 계수
행렬 연산과의 연결: 다항식의 덧셈은 행렬의 덧셈과 정확히 동일합니다:
이는 고등학교 공통수학1에서 배우는 행렬 단원과 직결됩니다.
예시:
행렬 표현 (행=y, 열=x):
| 0 | 2 | 0 | |
| 3 | 0 | 7 | |
| 0 | 5 | 1 |
행렬 형태:
인덱스 해석 (행=y, 열=x):
- : 의 계수 (상수항)
- : 의 계수 ()
- : 의 계수 ()
- : 의 계수 ()
- : 의 계수 ()
시각화:
아래 도구에서 2변수 다항식을 입력하고 행렬로 변환되는 과정을 실시간으로 확인할 수 있습니다.
2변수 다항식 입력
형식: ax^2y+bxy^2+cx+dy+e (예: 3x^2y+2xy^2+5x+7y+1)
입력 식 미리보기
3x^{2}y+2xy^{2}+5x+7y+1
동류항은 자동으로 합쳐집니다
변환 과정
다항식을 입력하고 '변환하기' 버튼을 클릭하세요
2.2 행렬로 보는 다항식
행렬은 2변수 다항식의 가장 자연스러운 표현 방식입니다.
왜 행렬이 적합한가?
- 구조적 대응: 행과 열이 두 변수의 차수를 직접 표현
- 연산의 일치: 행렬 연산이 다항식 연산과 정확히 대응
- 컴퓨터 효율: 2차원 배열은 메모리에서 효율적으로 접근 가능
Python (NumPy)으로 표현:
import numpy as np
# P(x, y) = 3x²y + 2xy² + 5x + 7y + 1
# 행(row): y 차수 (y², y¹, y⁰)
# 열(col): x 차수 (x², x¹, x⁰)
P = np.array([
[0, 2, 0], # y² 행: 0·x²y² + 2·xy² + 0·y²
[3, 0, 7], # y¹ 행: 3·x²y + 0·xy + 7·y
[0, 5, 1] # y⁰ 행: 0·x² + 5·x + 1
])
print(f"행렬 shape: {P.shape}") # (3, 3)
print(f"P[1, 0] (x²y 계수): {P[1, 0]}") # 3
print(f"P[0, 1] (xy² 계수): {P[0, 1]}") # 2
3. 2변수 다항식의 연산
3.1 행렬의 덧셈
2변수 다항식의 덧셈은 행렬의 요소별 덧셈과 동일합니다.
예시:
행렬 표현:
요소별 덧셈:
결과 다항식:
Python 코드:
import numpy as np
P = np.array([
[0, 0, 0], # y² 행: x², x¹, x⁰
[0, 1, 3], # y¹ 행: x²(0), xy(1), 3y(3)
[2, 0, 1] # y⁰ 행: 2x²(2), x(0), 상수(1)
])
Q = np.array([
[0, 0, 2], # y² 행: 2y²는 x⁰y²
[0, -1, 0], # y¹ 행: -xy는 -1*x¹y¹
[1, 0, 4] # y⁰ 행: x²(1), x(0), 상수(4)
])
# 행렬 덧셈 (요소별)
result = P + Q
print("P + Q 결과:")
print(result)
# [[0 0 2] ← 2y²
# [0 0 3] ← 3y (xy 항은 소거)
# [3 0 5]] ← 3x² + 5
3.2 실제 활용
2변수 다항식과 행렬 표현은 다양한 실제 문제에 적용됩니다.
이미지 처리:
- RGB 이미지: 각 채널을 2차원 배열로 표현
- 필터링: 커널(행렬)과의 곱셈으로 흐림/선명 효과 적용
# 이미지 밝기 조정 (단순화 예시)
image = np.array([...]) # 2D brightness array
brightness_adjusted = image + 20 # 행렬 스칼라 덧셈
물리 시뮬레이션:
- 공간의 각 점 에서의 물리량 표현
- 열 분포, 압력 분포 등을 2D 그리드로 모델링
경제 모델링:
- 두 재료의 사용량에 따른 비용 함수
- 생산량과 가격의 관계 분석
3.3 연습 문제
아래 퀴즈에서 2변수 다항식을 행렬로 변환하고 연산하는 연습을 할 수 있습니다.
2변수 다항식 퀴즈
정답 입력 (행렬 형식)
추가 연습 문제:
문제 1: 다음 다항식을 행렬로 표현하시오.
정답 보기
| 0 | 0 | -1 | |
| 0 | 3 | -2 | |
| 2 | 5 | 4 |
문제 2: 위 와 의 합을 행렬 덧셈으로 구하시오.
정답 보기
결과:
🎯 직접 연습하기:
아래 도구에서 두 2변수 다항식의 덧셈과 뺄셈을 직접 연습할 수 있습니다.
2변수 다항식 덧셈/뺄셈 연습
행렬 변환부터 연산 과정 확인까지 3단계
2변수 다항식 덧셈/뺄셈 연습
주어진 2변수 다항식을 행렬로 변환하세요 (최대 3차)
4. 마치며
2변수로 확장하면서 수학의 표현력이 크게 늘어났습니다. 단순한 직선의 세계를 넘어 곡면과 복잡한 관계를 다룰 수 있게 되었습니다.
핵심 정리:
- 2변수 다항식은 현실의 다차원적 관계를 표현하는 강력한 도구
- 행렬이라는 도구를 통해 복잡한 다변수 관계를 체계적으로 다룰 수 있음
- 행렬 연산은 다항식 연산과 완벽하게 대응
이제 행렬을 통한 다항식 표현의 기초를 이해했습니다. 이 개념은 선형대수학, 컴퓨터 그래픽스, 머신러닝 등 더 넓은 분야로 확장됩니다.
다음 편 예고: 3변수, 4변수… n변수로의 확장과 텐서의 개념
n변수로 확장하면 3차원, 4차원 배열이 필요해지며, 이를 일반화한 개념이 텐서(Tensor)입니다. 텐서는 현대 AI와 딥러닝의 핵심 수학적 도구로, 다음 편에서 살펴 보겠습니다.
💬 댓글
이 글에 대한 의견을 남겨주세요