안녕하세요,,

오늘은 유클리드 호제법입니다.

유클리드 호제법은 지난번과 같이 문자와 집합 기호로 여러분을 혼동시키지 않기 위해 최대한 말로 풀어 설명하도록 하겠습니다.(그래도 이해가 안 갈수 있습니다. 괜찮아요 님만 그런거 아닙니다)

시작해 볼까요?

 

유클리드 호제법

 

유클리드 호제법은 a = bq + r 일때 (a,b) = (b,r) 이라는 정리입니다.

시작부터 멘붕이 오네요. 다시 설명하겠습니다.

'a를 b로 나눈 몫이 q, 나머지가 r 일때 a와 b의 최대공약수는 b와 r의 최대공약수와 같다' 라는 뜻이었습니다.

증명합시다.

 

pf)

먼저 a 와 b의 최대공약수를 d, b와 r의 최대공약수를 e라고 합시다.

 

i) 그렇다면 d|a, d|b 이므로

  d|a-bq, a-bq = r 이므로 d|r

  ->d는 b와 r의 공약수, e는 b와 r의 최대공약수

  ∴ d|e (최대공약수의 약수가 공약수이기 때문)

ii) 두번째로 위와 똑같은 방법으로 e에 적용시킬 겁니다.

  e|b, e|r => e|bq+r => e|a

  -> e는 a, b 의 공약수 / d는 a, b의 최대공약수

  ∴ e|d

iii) d|e, e|d이므로 d = e 로 증명 끝.

 

<더 쉽게>

 

127과 47의 최대공약수를 구하고 싶으면 위와 같이 셋팅을 한 다음에 계산을 하면 됩니다.

파란색 화살표는 |와 | 사이에 있는 두 수를 나누었을 때의 몫이고, 화살표가 가리키는 숫자 옆(| 안에 있는 숫자)는 나머지입니다.

이 나누는 과정을 반복하면 두 수가 서로소 인지를 판별할 수 있습니다.

 

이번거는 어렵지 않았을 겁니다. '|' 기호만 들어가서 좀 햇갈릴 수 있을 뿐이지 개념은 중 1꺼 밖에 안 씁니다.

그래서! 유클리드 알고리즘도 같이 소개하려고 합니다.

 

유클리드 알고리즘

 

유클리드 알고리즘은 유클리드 호제법을 알고리즘화 한 것입니다.

공식으로 나타내면,,

(a,b) = (b,r) = ... = (r',r'')에서 r''이 0이 되는 경우 = (a,b) = r'

어려운거 다 압니다.

쉽게 말하면 아까 한 유클리드 호제법을 0이 될 때 까지 반복한다는 것입니다.

이걸 이용해서 코드를 짤 수 있는데요, 코드는 인터넷 찾아보면 나옵니다(쓰기 귀찮아요)

 

 

 

저의 궁극적인 목표는 정수를 이용해서 코드업 1298번을 푸는 겁니다.

1298번을 푸는 데에는 '확장 유클리드 알고리즘'이 필요한데요..

뭔가 이름이 비슷한 걸 보니 연관성이 있을 것 같고, 실제로 연관성이 있습니다.

이번 글에 그걸 몰아넣기에는 좀 그렇고, 다음 글에 확장 유클리드 알고리즘과 디오판틴 부정방정식을 푸는 방법으로 찾아뵙겠습니다.

안녕히 계세요,,

 

 

'수학' 카테고리의 다른 글

나눗셈 정리  (0) 2020.08.18

안녕하세요,,

오늘은 나눗셈 정리에 대해서 알아볼까 합니다.

나눗셈 정리는 정수의 가장 기초적인 정리입니다.

정수는 상당히 어려울 수 있는(그리고 귀찮을 수 있는) 분야입니다.

그리고 제가 설명할 정수는 수(상) 까지는 수학이 되어 있어야 이해할 수 있는 부분입니다.

그럼 시작해 보겠습니다.

 

 

 **나눗셈 정리**

 

나눗셈 정리는 아마 여러분이 다 알지만 증명을 해 보지는 않은 그런 정리일 것입니다.

정리는 매우 간단합니다.

 

정리) 어떤 수를 다른 한 수로 나누었을 때의 몫과 나머지는 하나이다.

 - 이걸 좀 더 멋있게 쓰면...

   "임의의 정수 a, b (단, b>0)에 대하여 a=bq+r,0r<인 q,r 이 유일하게 존재한다." 정도가 되겠네요.

 

증명해 보겠습니다.

 

pf)

i) 존재성 증명

집합 S를 다음과 같이 정의하겠습니다.

S = {b-aq | b-aq>=0, q는 정수}

이때 자연수의 정렬성(S가 정수집합이고, 공집합이 아니면 S의 최소원소가 존재한다.)에 의해

S가 공집합이 아님을 증명하면 q와 r이 존재함을 증명할 수 있습니다.

여기서 자연수의 정렬성 증명은 생략하겠습니다.(자연수의 정렬성 증명만 한판을 써야되요 ㅋㅋㅋ)

 

q = -|b| 라 하면

b-aq >= b-(-|b|) >= b + |b| >=0

따라서 S는 0이 아닙니다.

by 자연수의 정렬성, S의 최소원소 r이 존재한다고 할 수 있습니다.

여기서 만약 r이 0이라면 0이 최소원소입니다.

하지만 r이 0이 아니라면 r < a 라는 것을 증명해야 합니다.

귀류법 사용하면

r >= a라 하자.

r > r-a  = b-aq-a = b-a(q+1) = S의 원소 이므로 r이 최소원소임에 모순이다.

-> r<a

이제 존재성이 증명되었습니다.

 

ii) 유일성 증명

b = aq1 +r1, b = aq2 + r2라고 합시다.(귀류법)

0<=r1, r2 < a 이므로

-a < r1 - r2 < a

r1 - r2 = a(q2 - q1) 이므로

-1 < q2-q1 < 1, q2, q1 은 정수이므로 q2-q1은 0이다.

-> q2 = q1, r2 = r1 이므로 q와 r은 유일하다

 

이렇게 증명이 끝났습니다.

다음에는 유클리드 호제법과 유클리드 알고리즘에 대하여 설명하겠습니다.

 

 

오타와 잘못된 점 지적은 환영입니다.

'수학' 카테고리의 다른 글

유클리드 호제법  (0) 2020.08.20

+ Recent posts