최대 공약수

수론에서, 정수들의 최대 공약수(最大公約數, 문화어: 련속나눔셈; 영어: greatest common divisor/factor, 약자 GCD/GCF)는 모든 정수들의 약수가 되는 양의 정수 가운데 가장 큰 하나다. (가장 큰 하나가 없는 경우는 모든 정수가 0인 경우뿐이며, 이 경우 최대 공약수를 0으로 정의한다.) 정수 집합의 약수 관계에 대한 (완비) 원격자에서의 상한이다. 기호는 또는 .
최대 공약수는 임의의 정수에 대하여 정의된다.[1]:14, Theorem 1.2 일부 문헌에서는 0이 아닌 정수를 하나 이상 포함하는 경우에만 최대 공약수를 정의한다. (이는 최대 공약수가 문자 그대로 가장 큰 공통의 약수가 되는 경우이다.) 일부 문헌에서는 0이 아닌 정수를 요구하며, 다른 일부 문헌에서는 양의 정수를 요구하기도 한다.
다항식이나 가환환의 원소에 대해서도 정의할 수 있다. 정수의 최대 공약수를 음이 아닌 정수로 정하는 것처럼, 다항식의 최대 공약수는 (0 또는) 일계수 다항식으로 정한다. 가환환의 원소의 경우, 추가적인 데이터가 없는 한 최대 공약수를 표준적으로 고르는 방법은 정해져 있지 않다.
정의
정수들의 공약수(公約數, 영어: common divisor/factor)는 동시에 그들 모두의 약수인 정수다. 두 정수 의 공약수는 의 약수이자 의 약수인 정수이다. 두 정수 의 최대 공약수는 다음과 같은 여러 정의가 있으며, 이들은 서로 동치이다.[1]:14, Theorem 1.2
- 이거나 인 경우, , 의 가장 큰 공약수. 인 경우, 0.
- 1은 공약수이므로 공약수 집합은 공집합이 아니다. 0이 아닌 정수의 약수 집합은 유한 집합이므로, 0이 아닌 정수를 하나 이상 포함하는 두 정수의 공약수 집합도 유한 집합이다. 따라서, 최대 원소가 존재한다. 두 정수 모두 0인 경우, 공약수 집합은 모든 정수의 집합이므로 최대 원소가 존재하지 않으며, 따라서 별도로 정의한다.
- , 의 공약수이며, , 의 모든 공약수의 배수인 유일한 음이 아닌 정수
- , 의 공약수이며, , 의 모든 공약수의 배수인 정수는 항상 의 꼴로 나타난다. 따라서, 이 가운데 음이 아닌 정수는 유일하다. 이 정의는 임의의 두 정수에 대하여 유효하므로, 경우를 나눌 필요가 없다.
- , 의 공약수이며, , 의 정수 계수 선형 결합으로 나타낼 수 있는 유일한 음이 아닌 정수
- 마찬가지로, , 의 공약수이며, , 의 정수 계수 선형 결합으로 나타낼 수 있는 정수는 의 꼴로 나타나며, 이 가운데 음이 아닌 하나를 고른다. 이 정의는 유클리드 호제법에 의한다. 이 정의는 임의의 두 정수에 대하여 유효하므로, 경우를 나눌 필요가 없다.
- 이거나 인 경우, , 의 정수 계수 선형 결합인 최소 양의 정수. 인 경우, 0.
- 이는 베주 항등식을 통한 정의이다. 두 정수 모두 0인 경우, , 의 정수 계수 선형 결합은 0뿐이므로, 별도로 정의한다.
보다 일반적으로, 유한 개의 정수 의 공약수는 모든 의 배수인 정수이다. 유한 개의 정수 의 최대 공약수 는 다음과 같은 서로 동치인 정의가 있다. 이는 항상 유일하게 존재한다.
- 가장 큰 공약수. (단, 인 경우 .)
- 공약수이며, 모든 공약수의 배수인 유일한 음이 아닌 정수
- 공약수이며, 정수 계수 선형 결합인 유일한 음이 아닌 정수
- 0이 아닌 정수를 포함하는 경우, 정수 계수 선형 결합인 최소 양의 정수. (단, 인 경우 .)
-
- 이 정의는 재귀적이며, 두 정수의 최대 공약수의 정의에 의존한다.
보다 일반적으로, (무한 집합일 수 있는) 임의의 정수 집합 의 최대 공약수 를 정의할 수 있다. 유한 개의 정수에 대한 정의들은 재귀적 정의를 제외하면 무한 개의 정수에 대해서도 (적절한 수정을 거치면) 유효하다. 이 경우, 모든 정수가 0인 경우는 이거나 인 경우에 해당한다.
일부 문헌에서는 최대 공약수의 정의를 적어도 하나 이상의 정수가 0이 아닌 경우로 제한한다. 일부 문헌은 0이 아닌 정수의 경우로 제한한다. 일부 문헌은 양의 정수로 제한한다.
최대 공약수가 1인 정수들을 서로소라고 한다.
성질
약수 관계와의 관계
약수 관계는 최대 공약수를 통해 다음과 같이 나타낼 수 있다.
이는 격자의 순서론적 구조와 대수적 구조 사이의 관계의 특수한 경우이다.
항등식
임의의 정수들에 대하여, 다음과 같은 항등식들이 성립한다.
- (멱등 법칙)
- (교환 법칙)
- (결합 법칙)
- (흡수 법칙)
- (흡수 법칙)
-
- 즉, 1은 격자 의 최소 원소이다.
- [1]:22, Exercise 21
- (곱에 대한 분배 법칙)
- 특히, 이거나 인 경우
- 특히, 이거나 인 경우
- (최소 공배수에 대한 분배 법칙)
- (최소 공배수에 대한 분배 법칙)
- 이 두 항등식에 따라, 는 분배 격자이다.
- 이거나 이며, 또한 이거나 인 경우,
- 특히, 인 경우
- 특히, 인 경우
- 인 경우,
소인수 분해와의 관계
소인수분해가 주어진 양의 정수들의 최대 공약수는 소인수의 최소 지수를 취하여 얻어진다. 두 정수의 경우, 두 양의 정수의 소인수분해가 다음과 같다고 하자.
그렇다면, 최대 공약수는 다음과 같다.
계산
최대 공약수는 각 정수의 약수를 구하고, 공통되는 약수를 구하고, 가장 큰 하나를 구하면 얻을 수 있다. 예를 들어 12와 18의 경우, 12의 모든 약수는 (±) 1, 2, 3, 4, 6, 12이며, 18의 모든 약수는 (±) 1, 2, 3, 6, 9, 18이므로, 공약수는 (±) 1, 2, 3, 6이다. 가장 큰 6이 바로 최대 공약수이다. 최대 공약수를 구하는 방법은 그 밖에 소인수분해를 통한 방법과 유클리드 호제법을 통한 방법이 있다.
소인수분해
두 수 192와 72의 최대 공약수를 소인수 분해를 이용하여 구하여 보자. 일단 두 수를 소인수 분해한다.
구하고 나면, 두 소인수 분해 결과의 중복되는 부분을 찾아 서로 곱한다. 두 결과에서 2가 세 번 중복되어 나오고 3이 한번 중복되어 나왔다. 즉 최대 공약수가 24라는 결론이 나온다.
그러나 일반적으로 소인수 분해를 효율적으로 빠른 시간 내에 하는 방법은 알려져 있지 않다. 더 빠른 시간 안에 구하는 방법에는 호제법이 있다.
유클리드 호제법
똑같이 두 수 192와 72의 최대 공약수를 이번에는 호제법으로 구하여 보자. 일단 192을 72로 나누어 나머지를 구한다.
이는 192을 72로 나누어 나온 나머지가 48라는 것을 의미한다. 이번에는 72을 나머지인 48로 나눈다.
이와 같은 연산을 나머지가 0이 될 때까지 반복한다.
나머지가 0이 되었으므로 연산을 중지한다. 이때, 나머지가 0이 되기 바로 직전의 연산에서의 나머지가 원래 두 수의 최대 공약수가 된다.
이를 수식화 한 것은 호제법 문서를 참조하라.
예
임의의 양의 정수 에 대하여,
이다.
관련 개념
임의의 환 위에서 최대 공약수를 정의할 수 있다. 가환 환에서 두 원소 와 에 대하여 가 최대 공약수라 함은 가 두 원소의 약수이며 동시에 임의의 공약수는 의 약수가 됨을 말한다. 그러나 이렇게 정의할 경우 최대 공약수는 유일하지 않을 수도 있고 두 원소가 영이아니라 하더라도 존재하지 않을 수도 있다. 정역에서는 일단 존재한다면 최대 공약수들은 서로 동반된(associated)다. 또한 유일 인수분해정역에서는 영이 아닌 두 원소의 경우 항상 최대 공약수가 존재한다.
같이 보기
참고 문헌
- ↑ 가 나 다 Apostol, Tom Mike (1976). 《Introduction to analytic number theory》 (영어). Undergraduate Texts in Mathematics. 뉴욕: Springer-Verlag. doi:10.1007/978-1-4757-5579-4. ISBN 978-1-4419-2805-4. ISSN 0172-6056. MR 0434929. Zbl 0335.10001.
외부 링크
모듈:Authority_control 159번째 줄에서 Lua 오류: attempt to index field 'wikibase' (a nil value).
- CS1 - 영어 인용 (en)
- 스크립트 오류가 있는 문서
- 문화어 표기를 포함한 문서
- 영어 표기를 포함한 문서
- 위키데이터 속성 P18을 사용하는 문서
- 위키데이터 속성 P41을 사용하는 문서
- 위키데이터 속성 P94를 사용하는 문서
- 위키데이터 속성 P117을 사용하는 문서
- 위키데이터 속성 P154를 사용하는 문서
- 위키데이터 속성 P213을 사용하는 문서
- 위키데이터 속성 P227을 사용하는 문서
- 위키데이터 속성 P242를 사용하는 문서
- 위키데이터 속성 P244를 사용하는 문서
- 위키데이터 속성 P245를 사용하는 문서
- 위키데이터 속성 P268을 사용하는 문서
- 위키데이터 속성 P269를 사용하는 문서
- 위키데이터 속성 P271을 사용하는 문서
- 위키데이터 속성 P347을 사용하는 문서
- 위키데이터 속성 P349를 사용하는 문서
- 위키데이터 속성 P350을 사용하는 문서
- 위키데이터 속성 P373을 사용하는 문서
- 위키데이터 속성 P380을 사용하는 문서
- 위키데이터 속성 P396을 사용하는 문서
- 위키데이터 속성 P409를 사용하는 문서
- 위키데이터 속성 P428을 사용하는 문서
- 위키데이터 속성 P434를 사용하는 문서
- 위키데이터 속성 P435를 사용하는 문서
- 위키데이터 속성 P436을 사용하는 문서
- 위키데이터 속성 P454를 사용하는 문서
- 위키데이터 속성 P496을 사용하는 문서
- 위키데이터 속성 P549를 사용하는 문서
- 위키데이터 속성 P650을 사용하는 문서
- 위키데이터 속성 P651을 사용하는 문서
- 위키데이터 속성 P691을 사용하는 문서
- 위키데이터 속성 P716을 사용하는 문서
- 위키데이터 속성 P781을 사용하는 문서
- 위키데이터 속성 P791을 사용하는 문서
- 위키데이터 속성 P864를 사용하는 문서
- 위키데이터 속성 P865를 사용하는 문서
- 위키데이터 속성 P886을 사용하는 문서
- 위키데이터 속성 P902를 사용하는 문서
- 위키데이터 속성 P906을 사용하는 문서
- 위키데이터 속성 P947을 사용하는 문서
- 위키데이터 속성 P950을 사용하는 문서
- 위키데이터 속성 P966을 사용하는 문서
- 위키데이터 속성 P982를 사용하는 문서
- 위키데이터 속성 P1003을 사용하는 문서
- 위키데이터 속성 P1004를 사용하는 문서
- 위키데이터 속성 P1005를 사용하는 문서
- 위키데이터 속성 P1006을 사용하는 문서
- 위키데이터 속성 P1015를 사용하는 문서
- 위키데이터 속성 P1045를 사용하는 문서
- 위키데이터 속성 P1048을 사용하는 문서
- 위키데이터 속성 P1053을 사용하는 문서
- 위키데이터 속성 P1146을 사용하는 문서
- 위키데이터 속성 P1153을 사용하는 문서
- 위키데이터 속성 P1157을 사용하는 문서
- 위키데이터 속성 P1186을 사용하는 문서
- 위키데이터 속성 P1225를 사용하는 문서
- 위키데이터 속성 P1248을 사용하는 문서
- 위키데이터 속성 P1273을 사용하는 문서
- 위키데이터 속성 P1315를 사용하는 문서
- 위키데이터 속성 P1323을 사용하는 문서
- 위키데이터 속성 P1330을 사용하는 문서
- 위키데이터 속성 P1362를 사용하는 문서
- 위키데이터 속성 P1368을 사용하는 문서
- 위키데이터 속성 P1375를 사용하는 문서
- 위키데이터 속성 P1407을 사용하는 문서
- 위키데이터 속성 P1556을 사용하는 문서
- 위키데이터 속성 P1584를 사용하는 문서
- 위키데이터 속성 P1695를 사용하는 문서
- 위키데이터 속성 P1707을 사용하는 문서
- 위키데이터 속성 P1736을 사용하는 문서
- 위키데이터 속성 P1886을 사용하는 문서
- 위키데이터 속성 P1890을 사용하는 문서
- 위키데이터 속성 P1907을 사용하는 문서
- 위키데이터 속성 P1908을 사용하는 문서
- 위키데이터 속성 P1960을 사용하는 문서
- 위키데이터 속성 P1986을 사용하는 문서
- 위키데이터 속성 P2041을 사용하는 문서
- 위키데이터 속성 P2163을 사용하는 문서
- 위키데이터 속성 P2174를 사용하는 문서
- 위키데이터 속성 P2268을 사용하는 문서
- 위키데이터 속성 P2349를 사용하는 문서
- 위키데이터 속성 P2418을 사용하는 문서
- 위키데이터 속성 P2456을 사용하는 문서
- 위키데이터 속성 P2484를 사용하는 문서
- 위키데이터 속성 P2558을 사용하는 문서
- 위키데이터 속성 P2750을 사용하는 문서
- 위키데이터 속성 P2980을 사용하는 문서
- 위키데이터 속성 P3223을 사용하는 문서
- 위키데이터 속성 P3233을 사용하는 문서
- 위키데이터 속성 P3348을 사용하는 문서
- 위키데이터 속성 P3372를 사용하는 문서
- 위키데이터 속성 P3407을 사용하는 문서
- 위키데이터 속성 P3430을 사용하는 문서
- 위키데이터 속성 P3544를 사용하는 문서
- 위키데이터 속성 P3562를 사용하는 문서
- 위키데이터 속성 P3563을 사용하는 문서
- 위키데이터 속성 P3601을 사용하는 문서
- 위키데이터 속성 P3723을 사용하는 문서
- 위키데이터 속성 P3788을 사용하는 문서
- 위키데이터 속성 P3829를 사용하는 문서
- 위키데이터 속성 P3863을 사용하는 문서
- 위키데이터 속성 P3920을 사용하는 문서
- 위키데이터 속성 P3993을 사용하는 문서
- 위키데이터 속성 P4038을 사용하는 문서
- 위키데이터 속성 P4055를 사용하는 문서
- 위키데이터 속성 P4114를 사용하는 문서
- 위키데이터 속성 P4143을 사용하는 문서
- 위키데이터 속성 P4186을 사용하는 문서
- 위키데이터 속성 P4423을 사용하는 문서
- 위키데이터 속성 P4457을 사용하는 문서
- 위키데이터 속성 P4534를 사용하는 문서
- 위키데이터 속성 P4535를 사용하는 문서
- 위키데이터 속성 P4581을 사용하는 문서
- 위키데이터 속성 P4613을 사용하는 문서
- 위키데이터 속성 P4955를 사용하는 문서
- 위키데이터 속성 P5034를 사용하는 문서
- 위키데이터 속성 P5226을 사용하는 문서
- 위키데이터 속성 P5288을 사용하는 문서
- 위키데이터 속성 P5302를 사용하는 문서
- 위키데이터 속성 P5321을 사용하는 문서
- 위키데이터 속성 P5368을 사용하는 문서
- 위키데이터 속성 P5504를 사용하는 문서
- 위키데이터 속성 P5587을 사용하는 문서
- 위키데이터 속성 P5736을 사용하는 문서
- 위키데이터 속성 P5818을 사용하는 문서
- 위키데이터 속성 P6213을 사용하는 문서
- 위키데이터 속성 P6734를 사용하는 문서
- 위키데이터 속성 P6792를 사용하는 문서
- 위키데이터 속성 P6804를 사용하는 문서
- 위키데이터 속성 P6829를 사용하는 문서
- 위키데이터 속성 P7293을 사용하는 문서
- 위키데이터 속성 P7303을 사용하는 문서
- 위키데이터 속성 P7314를 사용하는 문서
- 위키데이터 속성 P7902를 사용하는 문서
- 위키데이터 속성 P8034를 사용하는 문서
- 위키데이터 속성 P8189를 사용하는 문서
- 위키데이터 속성 P8381을 사용하는 문서
- 위키데이터 속성 P8671을 사용하는 문서
- 위키데이터 속성 P8980을 사용하는 문서
- 위키데이터 속성 P9070을 사용하는 문서
- 위키데이터 속성 P9692를 사용하는 문서
- 위키데이터 속성 P9725를 사용하는 문서
- 위키데이터 속성 P9984를 사용하는 문서
- 위키데이터 속성 P10020을 사용하는 문서
- 위키데이터 속성 P10299를 사용하는 문서
- 위키데이터 속성 P10608을 사용하는 문서
- 위키데이터 속성 P10832를 사용하는 문서
- 위키데이터 속성 P11249를 사용하는 문서
- 위키데이터 속성 P11646을 사용하는 문서
- 위키데이터 속성 P11729를 사용하는 문서
- 위키데이터 속성 P12204를 사용하는 문서
- 위키데이터 속성 P12362를 사용하는 문서
- 위키데이터 속성 P12754를 사용하는 문서
- 위키데이터 속성 P13049를 사용하는 문서
- 곱셈적 함수