34강에서 극한과 함숫값이 별개임을 확인했습니다. 은 에서 극한이 이지만 은 정의되지 않았습니다.
그런데 다항식에서는 그냥 대입하면 됐습니다. 두 경우의 차이가 무엇입니까. 이 강의는 극한과 함숫값이 일치하는 상황에 이름을 붙이고, 그 이름이 왜 미적분학 전체에서 가장 중요한 조건이 되는지 봅니다.
연속은 뒤에서 계속 가정으로 등장합니다. 36강의 중간값 정리와 최대·최소 정리가 연속을 요구하고, 49강의 미적분의 기본정리도 연속을 요구합니다. 그러니 이 조건이 무엇을 보장하고 무엇을 막아 주는지 정확히 알아야 합니다. 막아 주는 것을 알려면 연속이 아닌 예를 봐야 하므로 이 강의는 반례를 많이 다룹니다.
문제. 다음 세 함수가 에서 어떻게 다른지 설명하세요.
(가)
(나)
(다) h(x)=\begin{cases}\dfrac{x^{2}-1}{x-1},&x\ne 1\\ 5,&x=1\end
생각의 실마리. 세 함수는 에서 값이 모두 같습니다. 다른 것은 에서 벌어지는 일뿐입니다. 각각에서 함숫값이 있는지, 극한이 있는지, 둘이 같은지를 따로 확인해 봅니다.
풀이. 세 항목을 각각 확인합니다.
(가) 로 함숫값이 있습니다. 로 극한도 있습니다. 두 값이 같습니다.
(나) 은 분모가 이라 정의되지 않습니다. 극한은 에서 약분해 입니다. 함숫값이 없습니다.
(다) 로 함숫값이 있습니다. 극한은 인 주변만 보므로 여전히 입니다. 둘이 다릅니다.
세 경우가 갈리는 지점이 분명합니다. (가)만 함숫값과 극한이 모두 있고 서로 같습니다.
이 문제에서 배우는 것: 연속의 정의.
함수 가 점 에서 연속이라는 것을 다음과 같이 정의합니다.
이 한 줄이 실제로는 세 가지를 동시에 요구합니다.
(나)는 1번이 깨졌고 (다)는 3번이 깨졌습니다. 연속성을 확인할 때는 항상 이 셋을 순서대로 봅니다.
과 로 적으면 다음과 같습니다.
34강의 극한 정의와 비교하면 두 곳이 달라졌습니다.
| 극한 | 연속 | |
|---|---|---|
| 왼쪽 조건 | ||
| 목표값 | 임의의 | 반드시 |
가 사라진 것이 핵심입니다. 극한은 를 일부러 빼고 봤지만 연속은 를 포함해서 봅니다. 일 때 은 언제나 참이므로 조건을 빼도 실제로 달라지는 것은 없지만, 가 정의되어 있어야 문장이 성립한다는 점에서 요구가 강해집니다.
연속을 말로 옮기면 이렇습니다. 입력을 조금만 바꾸면 출력도 조금만 바뀝니다. 이 출력의 허용 오차이고 가 입력의 허용 오차입니다. 이 성질이 있어야 근삿값을 넣고 근삿값을 얻는 계산이 뜻을 가집니다.
바로 확인.
확인 1-1. 는 에서 연속입니까?
답. 아닙니다. 극한은 이고 함숫값은 이라 세 번째 조건이 깨집니다.
확인 1-2. 확인 1-1의 함수를 에서 연속이 되도록 고치세요.
답. 로 바꾸면 됩니다. 그러면 과 같아집니다.
확인 1-3. 연속의 정의에서 극한 정의와 달라진 두 곳을 쓰세요.
답. 조건에서 가 빠졌고, 목표값이 임의의 이 아니라 반드시 입니다.
문제. 다음 세 함수의 에서의 불연속을 각각 설명하고, 세 경우가 어떻게 다른지 정리하세요.
(가) (단 )
(나) (단 )
(다) (단 )
생각의 실마리. 문제 1에서 연속의 세 조건을 세웠습니다. 세 함수 모두 함숫값은 정의되어 있으므로 1번 조건은 통과합니다. 그렇다면 극한 쪽에서 무엇이 잘못되는지 봅니다. 극한이 있는데 값이 다른 경우, 좌우가 달라 극한이 없는 경우, 값이 한없이 커지는 경우로 갈립니다.
풀이. (가) 34강 문제 4에서 을 증명했습니다. 극한은 존재하지만 이므로 다릅니다. 함숫값을 로 고치기만 하면 연속이 됩니다.
(나) 34강 문제 2에서 좌극한이 , 우극한이 로 달라 극한이 없음을 확인했습니다. 함숫값을 무엇으로 바꿔도 연속이 되지 않습니다. 좌우 두 값 중 하나만 맞출 수 있기 때문입니다.
(다) 에서 이 한없이 커지므로 극한이 없습니다. 함숫값을 바꿔 고칠 수 없고, 심지어 함수가 그 점 근처에서 유계도 아닙니다.
세 경우를 정리하면 고칠 수 있는가와 좌우가 각각 수렴하는가로 갈립니다.
이 문제에서 배우는 것: 불연속의 분류.
| 종류 | 조건 | 예 | 고칠 수 있는가 |
|---|---|---|---|
| 제거가능 불연속 | 극한은 존재하는데 와 다르거나 정의되지 않습니다 | \dfrac{\sin x} | 함숫값 하나만 고치면 됩니다 |
| 도약 불연속 | 좌극한과 우극한이 각각 존재하지만 다릅니다 | \dfrac{\lvert x\rvert} | 고칠 수 없습니다 |
| 무한 불연속 | 한쪽 이상이 무한대로 발산합니다 | 고칠 수 없습니다 |
이 분류에 들어가지 않는 경우도 있습니다. 34강 문제 5의 은 좌극한과 우극한이 모두 존재하지 않으면서 유계이므로 위 셋 중 어디에도 딱 맞지 않습니다. 이런 경우를 진동 불연속이라고 부르기도 합니다.
제거가능 불연속이라는 이름이 뜻하는 바를 정확히 새깁니다. 점 하나의 값만 바꿔서 연속으로 만들 수 있다는 뜻이며, 그 새 값은 반드시 극한값이어야 합니다. (가)에서 로 두면
이 되어 전체에서 연속입니다. 이렇게 만든 함수는 뒤에서 자주 쓰이며, 함수를 정의역 끝까지 매끄럽게 이어 붙이는 표준 방법입니다.
바로 확인.
확인 2-1. 의 에서의 불연속은 어떤 종류이고 어떻게 고칩니까?
답. 제거가능 불연속입니다. 극한이 이므로 로 정의하면 연속이 됩니다.
확인 2-2. 의 에서의 불연속은 어떤 종류입니까?
답. 무한 불연속입니다. 좌우가 각각 음의 무한대와 양의 무한대로 발산합니다.
확인 2-3. 도약 불연속을 함숫값 하나를 바꿔 고칠 수 없는 이유를 쓰세요.
답. 좌극한과 우극한이 다르므로 극한 자체가 없고, 함숫값은 하나뿐이라 두 값을 동시에 맞출 수 없기 때문입니다.
문제. 다음 함수들이 연속인 점을 모두 구하세요.
(1)
(2)
(3)
생각의 실마리. 매번 정의로 확인하는 것은 비효율적입니다. 기본 함수가 연속임을 인정하고, 연속함수를 조합해도 연속이라는 규칙을 쓰면 판정이 계산으로 끝납니다. 대신 조합 규칙에 붙는 조건을 확인해야 합니다. 나눗셈에서는 분모, 근호에서는 안쪽 부호입니다.
풀이. (1) 분자와 분모가 모두 다항식이므로 각각 연속입니다. 몫은 분모가 이 아닌 점에서 연속이므로 분모의 근을 찾습니다.
따라서 과 를 뺀 모든 실수에서 연속입니다. 두 점은 분자가 이 아니므로 무한 불연속입니다.
(2) 근호 안이 이상이어야 하므로 정의역이 , 즉 입니다. 이 구간에서 이 연속이고 가 이상에서 연속이므로 합성도 연속입니다. 구간 전체에서 연속이며, 끝점 에서는 한쪽 연속입니다.
(3) 이 모든 실수에서 연속이고 도 모든 실수에서 연속이므로 합성은 모든 실수에서 연속입니다.
이 문제에서 배우는 것: 연속함수의 연산.
와 가 에서 연속이면 다음이 모두 에서 연속입니다.
증명은 34강의 극한법칙을 그대로 옮기면 됩니다. 예를 들어 곱의 경우
입니다. 연속의 정의가 극한의 언어로 쓰여 있으므로 극한법칙이 곧바로 연속의 법칙이 됩니다.
합성에 대해서는 한 줄이 더 필요합니다.
가 에서 연속이고 가 에서 연속이면 는 에서 연속입니다.
28강에서 정의한 합성이 여기서 성질을 물려받습니다. 순서에 주의합니다. 의 연속성은 가 아니라 에서 필요합니다.
기본 함수의 연속성을 정리해 둡니다. 이후에는 이 목록을 인용해 판정합니다.
| 함수 | 연속인 범위 |
|---|---|
| 다항함수 | 모든 실수 |
| 유리함수 | 분모가 이 아닌 점 |
| \sqrt | |
| , | 모든 실수 |
| a^ | 모든 실수 |
| 모든 실수 |
이 목록과 연산 규칙을 합치면 초등함수는 정의된 곳에서 모두 연속이라고 말할 수 있습니다. 그래서 실전에서 불연속을 찾을 때는 정의되지 않는 점과 조각별로 정의된 함수의 경계점만 확인하면 됩니다.
바로 확인.
확인 3-1. 가 연속인 점을 모두 구하세요.
답. 분모가 이 되는 과 을 뺀 모든 실수입니다.
확인 3-2. 의 정의역과 연속인 범위를 쓰세요.
답. 정의역은 이고 그 범위 전체에서 연속입니다. 에서는 우측 연속입니다.
확인 3-3. 가 연속인 범위를 쓰고 근거를 쓰세요.
답. 입니다. 가 에서 연속이고 이 모든 실수에서 연속이므로 합성이 연속입니다.
문제. 가 모든 실수에서 연속이 되도록 와 를 정하세요.
생각의 실마리. 각 조각은 다항식이라 그 안에서는 저절로 연속입니다. 문제가 될 수 있는 곳은 조각이 바뀌는 경계점 와 뿐입니다. 각 경계에서 좌극한, 우극한, 함숫값 셋이 모두 같아야 한다는 조건을 세웁니다.
풀이. 경계점 두 곳만 확인합니다.
에서. 좌극한은 왼쪽 식으로 계산해 입니다. 우극한과 함숫값은 가운데 식으로 계산해 입니다. 연속이려면
에서. 좌극한은 가운데 식으로 입니다. 우극한과 함숫값은 오른쪽 식으로 입니다. 연속이려면
두 식을 연립합니다. 7강의 소거법으로 두 번째에서 첫 번째를 빼면
첫 식에 넣으면 입니다.
검산합니다. 에서 로 맞고, 에서 로 맞습니다.
이 문제에서 배우는 것: 구간에서의 연속과 경계점 처리.
조각별로 정의된 함수의 연속을 확인하는 절차는 다음과 같습니다.
경계점에서 셋이 모두 같아야 한다는 것이 조건의 전부이며, 미지수가 있으면 그것이 방정식이 됩니다.
구간에서의 연속도 정리해 둡니다. 가 열린구간 의 모든 점에서 연속이면 그 구간에서 연속이라고 합니다. 닫힌구간 에서는 끝점을 따로 다룹니다.
| 위치 | 요구 조건 |
|---|---|
| 내부의 점 | |
| 왼쪽 끝점 | (우측 연속) |
| 오른쪽 끝점 | (좌측 연속) |
끝점에서 한쪽만 요구하는 이유는 바깥쪽에는 함수가 정의되어 있지 않기 때문입니다. 문제 3의 (2)에서 이 에서 좌측 연속이라고 한 것이 이 경우입니다.
이 구별은 36강에서 결정적입니다. 최대·최소 정리가 닫힌구간을 요구하는데, 끝점을 포함하지 않으면 정리가 무너지기 때문입니다.
바로 확인.
확인 4-1. 이 연속이 되는 를 구하세요.
답. 에서 좌극한이 이고 우극한이 이므로 입니다.
확인 4-2. 조각별 함수에서 연속을 확인할 때 어디만 보면 됩니까?
답. 조각이 바뀌는 경계점만 보면 됩니다. 각 조각 내부는 초등함수라 자동으로 연속입니다.
확인 4-3. 닫힌구간의 끝점에서 한쪽 연속만 요구하는 이유를 쓰세요.
답. 끝점 바깥에는 함수가 정의되어 있지 않아 그쪽에서 다가가는 극한을 말할 수 없기 때문입니다.
문제. 34강 심화 3의 디리클레 함수 에 대하여
(1) 가 모든 점에서 불연속임을 보이세요.
(2) 는 에서만 연속임을 보이세요.
생각의 실마리. (1)은 34강 심화 3에서 극한이 어디서도 존재하지 않음을 이미 보였습니다. 연속의 두 번째 조건이 깨지므로 결론이 바로 나옵니다. (2)는 34강 심화 5에서 본 것과 같은 구조입니다. 앞에 곱해진 가 값의 차이를 눌러 주는지 봅니다.
풀이. (1) 34강 심화 3에서 임의의 에 대해 가 존재하지 않음을 보였습니다. 연속의 두 번째 조건이 깨지므로 는 모든 점에서 불연속입니다.
(2) 먼저 에서 연속임을 보입니다. 의 값이 아니면 이므로
입니다. 임의의 에 대해 으로 잡으면 일 때 이므로 연속입니다.
이제 에서 불연속임을 보입니다. 에 수렴하는 유리수 수열 과 무리수 수열 을 잡습니다. 그러면
입니다. 이므로 두 극한이 다르고, 34강 문제 5의 판정에 의해 가 존재하지 않습니다. 따라서 불연속입니다.
이 문제에서 배우는 것: 연속의 국소성.
이 두 예가 알려 주는 것은 연속이 점마다 따로 정해지는 성질이라는 사실입니다. 한 점에서 연속인지 아닌지는 그 점의 아주 가까운 주변만 보고 정해집니다. 그래서 다음과 같은 일이 모두 가능합니다.
| 상황 | 예 |
|---|---|
| 모든 점에서 연속 | 다항함수 |
| 한 점에서만 불연속 | (값을 채운 것) |
| 모든 점에서 불연속 | 디리클레 함수 |
| 한 점에서만 연속 |
네 번째가 특히 직관을 거스릅니다. 그래프를 그릴 수 없는 함수이기 때문입니다. "연속이면 붓을 떼지 않고 그릴 수 있다"는 설명은 직관을 돕는 비유일 뿐 정의가 아닙니다. 정의는 어디까지나 과 이며, 이 예들이 정의가 비유보다 넓다는 것을 보여 줍니다.
(2)의 증명에서 쓴 부등식이 요령이었습니다. 의 값을 모르더라도 이라는 유계성만으로 충분했습니다. 정확한 값을 알 필요 없이 크기만 눌러 잡으면 되는 이 방식은 34강 심화 5와 같으며, 해석학에서 계속 쓰입니다.
바로 확인.
확인 5-1. 가 유계인데도 어디서도 연속이 아닌 이유를 쓰세요.
답. 유계는 값의 크기를 제한할 뿐이고 연속은 값의 변화를 제한합니다. 는 값이 과 사이에 있지만 아무리 좁은 구간에서도 두 값을 모두 취하므로 변화가 억제되지 않습니다.
확인 5-2. 는 어디서 연속입니까?
답. 에서만 연속입니다. 이므로 에서 연속이고, 에서는 두 수열이 과 으로 갈리므로 불연속입니다.
확인 5-3. "연속이면 붓을 떼지 않고 그릴 수 있다"가 정의가 아닌 이유를 예로 드세요.
답. 는 에서 연속이지만 그래프를 그릴 수 없습니다. 비유는 직관을 돕지만 정의를 대신하지 못합니다.
| 개념 | 정의 |
|---|---|
| 점에서 연속 | |
| 세 조건 | 존재, 극한 존재, 두 값이 일치 |
| 과 | |
| 우측 연속 | |
| 구간에서 연속 | 내부는 양쪽, 끝점은 안쪽 방향만 |
| 불연속 종류 | 특징 | 고칠 수 있는가 |
|---|---|---|
| 제거가능 | 극한은 있는데 값이 다릅니다 | 값 하나를 고칩니다 |
| 도약 | 좌우 극한이 각각 있으나 다릅니다 | 고칠 수 없습니다 |
| 무한 | 한쪽 이상이 발산합니다 | 고칠 수 없습니다 |
| 진동 | 좌우 극한이 없고 유계입니다 | 고칠 수 없습니다 |
| 판정 절차 | 무엇을 봅니까 |
|---|---|
| 초등함수 | 정의되지 않는 점만 봅니다 |
| 유리함수 | 분모의 근을 봅니다 |
| 근호와 로그 | 정의역 조건을 봅니다 |
| 조각별 함수 | 경계점만 봅니다 |
| 합성함수 | 안쪽은 에서, 바깥쪽은 에서 확인합니다 |
문제 6. 은 어디서 연속입니까?
답. 다항함수이므로 모든 실수에서 연속입니다.
문제 7. 의 불연속점과 그 종류를 쓰세요.
답. 이며 무한 불연속입니다.
문제 8. 의 에서의 불연속을 분류하고 고치세요.
답. 약분하면 이므로 극한이 입니다. 제거가능 불연속이며 으로 정의하면 연속이 됩니다.
문제 9. 이 에서 연속인지 판정하세요.
답. 좌극한이 이고 우극한과 함숫값이 이므로 연속입니다.
문제 10. 이 연속이 되는 를 구하세요.
답. 극한이 이므로 입니다.
문제 11. 의 불연속점을 모두 쓰세요.
답. (은 정수)이며 모두 무한 불연속입니다.
문제 12. 의 정의역과 연속 범위를 쓰세요.
답. 이므로 또는 이고, 그 범위 전체에서 연속입니다. 에서는 각각 한쪽 연속입니다.
문제 13. 은 에서 연속입니까?
답. 연속입니다. 좌극한과 우극한이 모두 이고 함숫값도 입니다. 절댓값은 뾰족하지만 연속입니다.
문제 14. 의 불연속을 분류하세요.
답. 에서 도약 불연속입니다. 좌극한이 , 우극한이 입니다.
문제 15. (단 )의 에서의 불연속을 분류하세요.
답. 진동 불연속입니다. 좌우 극한이 모두 존재하지 않지만 함수는 유계입니다.
문제 16. 와 가 에서 연속이면 도 연속입니까?
답. 일 때만 연속입니다. 이면 가 에서 정의되지 않습니다.
문제 17. 이 연속이고 일 때 와 를 구하세요.
답. 에서 입니다. 에서 이므로 입니다.
문제 18. 연속함수의 합성이 연속임을 서술할 때 안쪽과 바깥쪽의 연속성을 어느 점에서 요구합니까?
답. 안쪽 는 에서, 바깥쪽 는 에서 연속이어야 합니다.
심화 1. 연속의 과 정의에서 의 를 빼도 되는 이유를 설명하세요.
답. 일 때 조건이 자동으로 성립하기 때문입니다.
풀이. 를 넣으면 결론이 이 되고, 이므로 언제나 참입니다. 따라서 를 포함하든 빼든 전체 명제의 진리값이 같습니다.
다만 두 정의가 요구하는 바는 다릅니다. 연속은 가 식에 등장하므로 가 정의되어 있어야 문장을 적을 수조차 없습니다. 극한은 를 쓰지 않으므로 그런 요구가 없습니다.
남는 것. 같은 조건을 빼도 되지만 그 조건이 있던 자리가 두 개념의 차이를 만듭니다. 문제 1에서 (나)가 극한은 있는데 연속이 아니었던 이유가 이것입니다. 정의를 비교할 때는 명제의 진리값만이 아니라 그 명제를 쓸 수 있는 조건까지 봐야 합니다.
심화 2. 가 에서 연속이고 이면 의 어떤 근방 전체에서 임을 증명하세요.
답. 부호가 국소적으로 유지됩니다.
풀이. 으로 잡습니다. 연속이므로 어떤 이 있어서 인 모든 에서
입니다. 절댓값을 풀면 입니다.
남는 것. 을 아무 값이나 잡은 것이 아니라 결론이 나오도록 골랐습니다. 로 잡아야 아래 경계가 양수로 남습니다. 을 고르는 이 감각이 해석학 증명의 핵심이며, 36강에서 중간값 정리를 증명할 때 이 결과가 그대로 쓰입니다.
심화 3. 가 에서 연속이고 모든 유리수 점에서 이면 가 항등적으로 임을 보이세요.
답. 구간 전체에서 입니다.
풀이. 임의의 를 잡습니다. 29강에서 확인한 대로 유리수는 실수 위에 빽빽하므로 에 수렴하는 유리수 수열 이 존재합니다. 가 연속이므로 34강 문제 5의 수열 판정에 의해
입니다. 가 임의였으므로 모든 점에서 입니다.
남는 것. 연속함수는 빽빽한 집합 위의 값만으로 완전히 결정됩니다. 유리수는 셀 수 있는데도 실수 전체의 값을 정해 버립니다. 이것이 연속이라는 조건의 힘이며, 디리클레 함수가 이 성질을 갖지 못하는 이유는 연속이 아니기 때문입니다. 두 연속함수가 모든 유리수에서 같으면 모든 실수에서 같다는 따름 정리도 여기서 나옵니다.
심화 4. 토메 함수 는 모든 무리수에서 연속이고 모든 유리수에서 불연속임을 설명하세요.
답. 연속인 점과 불연속인 점이 모두 무한히 많은 예입니다.
풀이. 유리수 에서는 인데, 에 수렴하는 무리수 수열에서 값이 이므로 극한이 와 다릅니다. 불연속입니다.
무리수 에서는 입니다. 임의의 에 대해 이 되도록 를 크게 잡습니다. 분모가 이하인 기약분수는 주변의 유한한 구간에 유한개뿐이므로, 그 점들을 모두 피하도록 를 작게 잡을 수 있습니다. 그 범위의 에서는 무리수면 이고 유리수면 분모가 보다 커서 입니다. 따라서 연속입니다.
남는 것. 문제 5에서 "한 점에서만 연속"인 예를 보았는데, 여기서는 연속인 점이 무리수 전체입니다. 연속인 점의 집합이 어떤 모양일 수 있는지가 상당히 복잡하다는 것을 보여 줍니다. 참고로 정반대는 불가능합니다. 모든 유리수에서 연속이고 모든 무리수에서 불연속인 함수는 존재하지 않음이 알려져 있습니다.
심화 5. 와 가 연속일 때 도 연속임을 증명하세요.
답. 최댓값을 절댓값으로 표현하면 바로 나옵니다.
풀이. 두 실수에 대해 다음 항등식이 성립합니다.
확인해 봅니다. 이면 이므로 오른쪽이 입니다. 이면 이므로 오른쪽이 입니다.
따라서
이고, 합과 차와 상수배가 연속을 보존하며 도 연속이므로 합성까지 연속입니다.
남는 것. 경우를 나눠 증명하려 하면 경계에서 두 조각이 만나는 지점을 따로 다뤄야 해 번거롭습니다. 항등식으로 바꿔 이미 아는 연산으로 표현하면 경우 나누기가 사라집니다. 이 수법은 최솟값에도 통합니다. 입니다.
심화 6. 연속함수가 유계라고 말할 수 있습니까? 반례를 들고, 어떤 조건을 붙이면 참이 되는지 말하세요.
답. 일반적으로는 거짓이며 닫힌구간 조건이 필요합니다.
풀이. 반례가 여럿 있습니다. 는 전체에서 연속이지만 유계가 아닙니다. 정의역을 유한한 구간으로 좁혀도 안 됩니다. 는 열린구간 에서 연속이지만 에서 한없이 커지므로 유계가 아닙니다.
닫힌구간 에서 연속이면 유계가 됩니다. 이것이 36강에서 증명할 최대·최소 정리의 앞부분입니다.
남는 것. 두 반례가 각각 무엇을 알려 주는지 구분합니다. 첫 번째는 구간이 유한해야 한다는 것이고, 두 번째는 끝점을 포함해야 한다는 것입니다. 36강의 정리에 "닫힌"과 "유계인" 두 조건이 모두 붙는 이유가 이 두 반례에 하나씩 대응합니다. 정리의 가정은 장식이 아니라 각각이 막고 있는 반례가 있습니다.
연속은 극한으로 정의되므로 코드로 증명할 수 없습니다. 대신 불연속점 근처에서 값이 어떻게 갈리는지, 그리고 경계점에서 두 조각이 실제로 만나는지 확인합니다.
import numpy as np
h = np.array([1e-1, 1e-2, 1e-3, 1e-4])
# 문제 2: 세 가지 불연속이 어떻게 다른지 봅니다.
print(np.round(np.sin(h) / h, 6)) # [0.998334 0.999983 1. 1. ]
print(np.abs(h) / h, np.abs(-h) / (-h))
# [1. 1. 1. 1.] [-1. -1. -1. -1.]
print(1 / h**2) # [1.e+02 1.e+04 1.e+06 1.e+08]
# 문제 3: 유리함수의 불연속점은 분모의 근입니다.
x = np.linspace(0, 3, 3001)
den = x**2 - 3*x + 2
print(np.round(x[np.abs(den) < 1e-12], 6)) # [1. 2.]
# 문제 4: 경계점에서 세 값이 만나는지 확인합니다.
a, b = 10/3, -5/3
left2, mid2 = 2.0**2 + 1, a*2 + b
mid5, right5 = a*5 + b, 3*5.0
print(np.isclose(left2, mid2), np.isclose(mid5, right5)) # True True
print(round(mid2, 10), round(mid5, 10)) # 5.0 15.0
# 문제 5: x*D(x) 는 0 에서만 값이 붙습니다.
def D(v): # 유한 소수는 유리수로 취급합니다
return 1.0 if float(v).is_integer() or abs(v * 1000 - round(v * 1000)) < 1e-12 else 0.0
rat = np.array([0.5, 0.1, 0.01, 0.001]) # 유리수 표본
irr = np.array([np.sqrt(2) / 10**k for k in range(1, 5)]) # 무리수 표본
print([round(float(v * D(v)), 6) for v in rat]) # [0.5, 0.1, 0.01, 0.001]
print([round(float(v * D(v)), 6) for v in irr]) # [0.0, 0.0, 0.0, 0.0]
# 0 근처에서는 두 표본 모두 0 으로 눌립니다.
small_r = np.array([1e-3, 1e-4, 1e-5])
print([round(float(v * 1.0), 6) for v in small_r]) # [0.001, 0.0001, 1e-05]
print(bool(np.all(np.abs(small_r * 1.0) <= np.abs(small_r)))) # True
# 심화 5: max(u, v) 를 절댓값으로 표현한 항등식
u = np.array([-3.0, 1.0, 2.5, 7.0])
v = np.array([4.0, 1.0, -2.5, 0.0])
print(bool(np.allclose(np.maximum(u, v), (u + v + np.abs(u - v)) / 2))) # True
print(bool(np.allclose(np.minimum(u, v), (u + v - np.abs(u - v)) / 2))) # True
출력이 주석과 모두 일치합니다. 첫 세 줄이 세 가지 불연속을 나란히 보여 줍니다. 는 값이 로 모여 제거가능이고, 는 좌우가 과 로 갈려 도약이며, 은 값이 까지 치솟아 무한 불연속입니다.
다섯 번째 검산에는 한계가 있습니다. 부동소수점으로는 무리수를 정확히 저장할 수 없으므로 여기서 쓴 는 진짜 디리클레 함수가 아니라 유한 소수만 유리수로 판정하는 흉내입니다. 실제 디리클레 함수는 어떤 프로그램으로도 계산할 수 없습니다. 문제 5의 결론은 손으로 한 증명에서만 나오며, 코드는 그 모양을 짐작하게 해 줄 뿐입니다.
정답.
| 기호 | 읽는 법 | 뜻 |
|---|---|---|
| 가 에서 연속 | continuous at | 입니다 |
| 제거가능 불연속 | removable | 값 하나를 고치면 연속이 됩니다 |
| 도약 불연속 | jump | 좌우 극한이 각각 있으나 다릅니다 |
| 무한 불연속 | infinite | 한쪽 이상이 발산합니다 |
| 디리클레 함수 | 유리수에서 , 무리수에서 입니다 | |
| 에서 연속 | 닫힌구간에서 연속 | 내부는 양쪽, 끝점은 안쪽 방향입니다 |
다음 36강에서는 연속이라는 조건이 실제로 무엇을 보장하는지 봅니다. 닫힌구간에서 연속인 함수는 중간값을 반드시 취하고 최댓값과 최솟값을 반드시 가집니다. 심화 6에서 확인한 두 반례가 그 정리의 가정이 왜 필요한지 그대로 설명합니다.