반복 로그
1. 개요
반복 로그는 주어진 수에 로그 함수를 반복적으로 적용하여 결과가 1 이하가 될 때까지의 반복 횟수를 의미한다. 으로 표기하며, 재귀적 또는 반복적으로 정의할 수 있다. 컴퓨터 과학에서는 이진 로그를 반복하는 을 사용하기도 한다. 반복 로그는 알고리즘 분석 및 계산 복잡도 이론에서 일부 알고리즘의 시간 및 공간 복잡도를 나타내는 데 사용되며, 로그 함수보다 훨씬 느리게 증가한다.
| 정의 | 급증의 역함수 |
|---|---|
| 함수 종류 | 수학 함수, 컴퓨터 과학 함수 |
| 정의 | 반복 로그 함수는 밑이 b인 로그 함수를 적용해야 x가 1보다 작거나 같아지는 횟수이다. |
|---|---|
| 표기 | log* x 또는 log* (x) |
| 수식 | log* x := 0 (x ≤ 1) log* x := 1 + log* (log x) (x > 1) |
| 예시 | log* (2) ≈ 1.44, log* (4) ≈ 2.44, log* (16) ≈ 3.44 |
| 시간 복잡도 분석 | 알고리즘의 시간 복잡도를 분석하는 데 유용하게 사용된다. |
|---|---|
| 예시 | 최소 스패닝 트리 알고리즘, 병합 정렬 |
| 아커만 함수 | 매우 빠르게 증가하는 함수이며, 반복 로그 함수와 밀접한 관련이 있다. |
|---|---|
| 지수 함수 | 반복 로그 함수의 역함수이다. |
-
점근 해석 -
마스터 정리
마스터 정리는 분할 정복 알고리즘의 시간 복잡도 분석 도구로서, 점화식을 세 가지 경우로 나누어 재귀 알고리즘의 효율성을 파악하고, 다양한 정렬 및 일반 알고리즘 분석에 활용되지만, 특정 조건에서는 적용이 제한될 수 있습니다. -
점근 해석 -
섭동 이론
섭동 이론은 정확히 풀리는 문제에 작은 변화가 있을 때 급수로 표현하여 근사해를 구하는 방법으로, 초기 해에 보정항을 더하는 방식으로 고전역학, 양자역학 등 다양한 분야에서 활용되며 섭동 형태와 적용 차수에 따라 구분된다. -
로그 -
상용로그
상용로그는 10을 밑으로 하는 로그로, 십진법에 기반하여 log x 또는 lg x로 표기되며, 지표를 통해 진수의 자릿수 파악이 용이하여 과학적 측정에 활용되고 헨리 브리그스의 공로로 '브리그스의 로그'라고도 불린다. -
로그 -
자연로그
자연로그는 밑이 e인 로그 함수로, ln(x) 등으로 표기되며 직교쌍곡선 아래 면적으로 정의되거나 지수 함수의 역함수로 정의될 수 있고, 다양한 수학적 성질과 함께 여러 분야에서 활용되며 복소 로그 함수로 확장되기도 한다.
2. 정의
반복 로그는 주어진 수에 대해 로그 함수를 반복적으로 적용하여 그 결과가 1 이하가 될 때까지의 반복 횟수를 의미한다. 에 대한 반복 로그는 (로그 스타 )으로 표기한다.
반복 로그는 실수 전체에서 정의되며, 음이 아닌 정수를 값으로 갖는다. 양의 실수에 대해서는, 평면에서 축 위의 구간 에 도달하기 위해 필요한 지그재그의 수로 도식적으로 이해할 수 있다.
컴퓨터 과학에서는 자연 로그 대신 이진 로그를 반복하는 반복 로그 도 사용되고 있다. 수학적으로는, 나 뿐만 아니라, 보다 큰 임의의 밑에 대해 잘 정의된다.
2.1. 재귀적 정의
반복 로그는 (로그 스타 )으로 표기되며, 다음과 같이 재귀적으로 정의된다.
:
함수의 반복을 사용하면 다음과 같이 정의할 수도 있다.
:
양의 실수에서는 연속성의 초대수와 같다.
:
다시 말해, 를 반복 로그의 밑으로 하여, 이 구간 에 있을 때, 그 반복 로그는 로 표시된다. 여기서 는 테트레이션이다. 단, 음의 실수 에 대해 반복 로그의 값은 이지만, 이므로, 음의 실수에서는 앞서 제시한 관계는 성립하지 않게 된다.
반복 로그는 실수 전체에서 정의되며, 음이 아닌 정수를 값역으로 갖는다. 양의 실수에 대해서는, 평면에서 축 위의 구간 에 도달하기 위해 필요한 지그재그의 수로 도식적으로 이해할 수 있다.
컴퓨터 과학에서는 자연 로그 대신 이진 로그를 반복하는 반복 로그 도 사용되고 있다. 수학적으로는, 나 뿐만 아니라, 보다 큰 임의의 밑에 대해 잘 정의된다.
2.2. 반복적 정의
함수의 반복을 사용하여 다음과 같이 정의할 수도 있다.
:
2.3. 초대수와의 관계
양의 실수에서 반복 로그는 연속 초대수(super-logarithm)의 천장 함수와 같다. 즉, 를 반복 로그의 밑으로 할 때, 이 구간 에 있으면, 반복 로그는 로 표시된다. 여기서 는 테트레이션이다. 단, 음의 실수 에 대해 반복 로그의 값은 이지만, 이므로, 음의 실수에서는 앞서 제시한 관계가 성립하지 않는다.
3. 알고리즘 분석
반복 로그는 알고리즘 분석과 계산 복잡도 이론에서 일부 알고리즘의 시간 및 공간 복잡도를 나타내는 데 사용된다. 반복 로그는 로그 함수보다 훨씬 느리게 증가하며, 복잡도 이론에서 이보다 더 느리게 증가하는 유일한 함수는 역 아커만 함수이다.
3.1. 예시
반복 로그는 알고리즘 분석과 계산 복잡도 이론에서 일부 알고리즘의 시간 및 공간 복잡도를 나타내는 데 사용된다. 다음은 그 예시이다.
* 유클리드 최소 신장 트리가 알려진 점 집합에 대한 델로네 삼각분할 찾기: 무작위적 O(n log* n) 시간
* 정수 곱셈에서의 퓨러 알고리즘: O(n log n 2O(log* n))
* 근사 최댓값 (중앙값 이상인 요소) 찾기: log* n − 1 ± 3 병렬 연산
* 리차드 콜과 우지 비슈킨의 n-순환 그래프의 3색 색칠에 대한 분산 알고리즘: O(log* n) 동기 통신 라운드.
* 경로 압축을 사용한 가중 유니온-파인드(weighted quick-union) 알고리즘
실제로 다루는 모든 n 값(n ≤ 265536, 이는 알려진 우주의 원자 수 추정치보다 훨씬 크다)에 대해, 밑이 2인 반복 로그는 5 이하의 값을 가진다.
| x | log* x |
|---|---|
| (−∞, 1] | 0 |
| (1, 2] | 1 |
| (2, 4] | 2 |
| (4, 16] | 3 |
| (16, 65536] | 4 |
| (65536, 265536] | 5 |
3.2. 성장 속도
반복 로그는 로그 함수보다 훨씬 느리게 증가한다. 실제로 사용되는 범위 내에서(n ≤ 265536), 밑이 2인 반복 로그 값은 5를 넘지 않는다. 여기서 265536은 알려진 우주의 원자 개수의 추정치보다 훨씬 큰 값이다.
| x | x |
|---|---|
| (−∞, 1] | 0 |
| (1, 2] | 1 |
| (2, 4] | 2 |
| (4, 16] | 3 |
| (16, 65536] | 4 |
| (65536, 265536] | 5 |
더 큰 밑을 사용하면 반복 로그 값은 더 작아진다.
4. 기타 응용
반복 로그는 대칭 수준 지수 산술에서 사용되는 일반화된 로그 함수와 밀접하게 관련되어 있다. 숫자의 덧셈 지속성(어떤 수가 디지털 루트에 도달하기까지 숫자를 자릿수의 합으로 바꿔야 하는 횟수)은 이다.