본문으로 건너뛰기
AZ Tools

행렬 계산기 (정확한 분수)

12 × 12까지의 행렬에 대해 행렬식, 역행렬, RREF와 계수, 전치, 곱, A x = b를 반올림된 소수가 아닌 정확한 분수로 구합니다.

한 줄에 한 행, 원소는 공백이나 쉼표로 구분합니다. 0.1, 1/3, -2.5e3, [[1,2],[3,4]] 모두 정확하게 읽습니다.
행렬식
계수(rank)
3
결과
3/41/21/4
1/211/2
1/41/23/4

모든 계산은 브라우저에서 정확한 유리수로 합니다. 소수로 보기를 켜기 전까지는 반올림이 없습니다. 행렬은 로컬 스토리지에 남습니다.

사용법

  1. 연산을 고른 뒤 행렬 A를 한 줄에 한 행씩 입력하거나 붙여넣으세요. 공백, 쉼표, [[1,2],[3,4]] 같은 괄호 표기 모두 됩니다.
  2. A × B나 A x = b는 두 번째 칸도 채우세요. b는 열 하나, 또는 A의 행 수만큼 원소가 있는 한 줄로 씁니다.
  3. 결과를 정확한 분수로 읽거나, 소수로 보기를 켜서 같은 값을 반올림해 봅니다.
  4. 특이행렬이면 행렬식이 0이고 계수가 독립인 행의 수를 알려 주며, RREF가 어떤 행인지 보여 줍니다.
  5. A x = b의 해가 여러 개면, 표시된 해에 자유 방향들의 어떤 결합을 더해 나머지 해를 얻습니다.

자세한 설명

펼치기

행렬을 붙여넣으면 행렬식, 역행렬, 기약 행사다리꼴(RREF)과 계수, 전치, 다른 행렬과의 곱, A x = b의 해를 구합니다. 모든 단계가 정확한 유리수 연산이라는 점이 스프레드시트나 numpy와의 차이입니다. 부동소수점 소거는 셋째 행이 앞의 두 행의 합인 [[2, 4, 6], [1, 3, 5], [3, 7, 11]]의 행렬식을 3.55e-15로 돌려주지만, 여기서는 0이 나오고 원소가 수천조 단위인 가짜 역행렬 대신 역행렬이 없다고 알려 줍니다. 조건수가 나쁜 행렬의 교과서적 예인 6 × 6 힐베르트 행렬은 역행렬이 전부 정수이며(첫 행이 36, −630, 3360 …) numpy는 그 첫 원소를 36.0000000049로 돌려줍니다. 여기서는 정수가 정수로, 행렬식은 1/186313420339200000이라는 분수로 나옵니다. 소수도 정확히 읽으므로 0.1은 가장 가까운 이진 분수가 아니라 정확히 10분의 1이며, 1/3 같은 분수도 바로 입력할 수 있습니다. A x = b는 무작정 풀지 않고 분류합니다. A의 열 계수가 가득 차면 해가 하나, b가 A의 열공간 밖에 있으면 해가 없음(서로 다른 두 계수로 보고), 자유 변수가 있으면 특수해 하나와 영공간의 기저를 함께 보여 주어 모든 해를 적어 냅니다. 정확한 연산에는 대가가 있습니다. 크거나 까다로운 행렬에서는 분수가 길어지므로 크기를 12 × 12로 제한했고, 분수가 쓸모보다 정확할 때는 스위치 하나로 소수로 볼 수 있습니다.

자주 묻는 질문

스프레드시트는 3.55e-15인데 왜 여기서는 0인가요?

스프레드시트는 이진 부동소수점으로 소거하며, 나눗셈마다 반올림이 생기고 그 오차가 완전히 상쇄되지 않습니다. 행들이 종속인 행렬의 행렬식은 정확히 0이고, 정확한 유리수 연산은 그 값을 그대로 지킵니다. 부동소수점이 내놓는 아주 작은 0 아닌 행렬식은 대개 특이하다는 뜻이지만 숫자 자체는 그렇다고 말해 주지 않습니다. 여기서는 모호함이 없습니다.

소수와 분수도 입력할 수 있나요?

네. 정수, 2.5e-3처럼 지수가 붙은 소수, -7/12 같은 분수를 모두 정확한 유리수로 읽습니다. 소수는 적힌 그대로 받아들이므로 0.1은 정확히 10분의 1입니다. 결과는 분수로 보거나, 소수로 보기를 켜서 유효숫자 10자리로 반올림해 볼 수 있습니다.

RREF는 무엇을 알려 주나요?

기약 행사다리꼴은 행렬마다 유일합니다. 0이 아닌 행들은 행공간의 깔끔한 기저이고, 그 개수가 계수입니다. 선행 1이 있는 열이 피벗 열이며, 원래 행렬에서 서로 독립인 열 묶음을 알려 줍니다. 여기서 역행렬과 A x = b의 해를 구하는 방법이기도 합니다.

A x = b의 해가 무수히 많을 때는 어떻게 나타내나요?

자유 변수를 모두 0으로 둔 특수해 하나와, 자유 변수마다 영공간 벡터 하나를 보여 줍니다. 모든 해는 특수해에 그 벡터들의 어떤 결합을 더한 것입니다. A의 열 계수가 가득 차면 영공간이 없어 해가 유일하고, [A | b]의 계수가 A의 계수보다 크면 해가 없습니다.

크기가 왜 12 × 12로 제한되나요?

정확한 분수는 커지기 때문입니다. 까다로운 행렬을 소거하면 분자와 분모가 수백 자리가 될 수 있고, 계산량도 함께 늘어납니다. 12 × 12면 수업 과제나 작은 모델, 수치 결과를 손으로 확인하는 데 충분하면서 모든 연산이 즉시 끝납니다. 큰 수치 문제에는 부동소수점이 맞는 도구이고, 이 도구는 그 작은 사례를 검산하는 용도입니다.

관련 도구