맨위로가기

계승진법

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

계승진법은 자연수 a를 0부터 i-1까지의 숫자 ai를 사용하여 각 자릿수의 팩토리얼(i!)을 곱하여 나타내는 혼합 진법 기수법이다.

가장 오른쪽 자리는 항상 0이며, 계승진법은 순열과의 관계를 통해 자연수와 순열 간의 일대일 대응을 제공한다.

또한 소수를 표현하기 위해 확장될 수 있으며, 유리수는 유한 소수로, 무리수는 특징적인 소수 표시를 갖는다.

계승진법은 게오르크 칸토어에 의해 연구되었으며, 샤를앙주 레장에 의해 순열과의 관계가 밝혀졌다.

계승 진법은 레머 코드를 제공하며, 순열을 계산하고 두 순열군의 직접곱을 표현하는 데 활용된다. 소수 계승 진법은 계승 진법과 유사하며, 소수 계승을 사용하여 숫자를 표현한다.

더 읽어볼만한 페이지

  • 조합론 - 집합의 분할
    집합의 분할은 주어진 집합을 서로소인 부분 집합들로 나누는 것이며, 동치 관계와 밀접하게 관련되어 있고, 벨 수로 표현되며, 플레잉 카드를 나누는 것과 같은 예시가 있다.
  • 조합론 - 계승 (수학)
    계승은 음이 아닌 정수 n에 대해 1부터 n까지의 자연수를 곱한 값으로, 0의 계승은 1로 정의되며, 대칭군의 크기와 같다는 성질을 통해 기수로 확장될 수 있고, 다중 계승, 지수 계승 등으로 확장 및 응용되어 다양한 분야에서 활용된다.
  • 기수법 - 이진법
    이진법은 0과 1 두 개의 숫자를 사용하는 밑이 2인 위치 기수법으로, 컴퓨터 과학의 기초가 되었으며 현대 컴퓨터에서 데이터를 저장하고 처리하는 데 사용된다.
  • 기수법 - 구진법
    구진법은 9를 밑으로 하는 위치 기수법으로 0부터 8까지의 숫자를 사용하여 수를 나타내며, 3의 배수 표현이 간결하고 3의 역수는 유한소수로 표현되는 특징이 있다.
계승진법
개요
종류자리 표기법
기수계승
필요 숫자10진법에서는 0부터 9까지
위치 값..., 5!, 4!, 3!, 2!, 1!, 0!
사용조합론
예시
10진수 463(3, 4, 1, 1, 0, 0) = 3 × 5! + 4 × 4! + 1 × 3! + 1 × 2! + 0 × 1! + 0 × 0! = 463
알고리즘
계승진법에서 10진법으로 변환각 자리 숫자에 해당 자리의 계승값을 곱하여 모두 더한다.
10진법에서 계승진법으로 변환10진수를 계승으로 나누는 것을 반복하고 나머지를 기록한다. 나머지를 역순으로 나열한다.

2. 정의

자연수 a\in\mathbb N는 계승진법에서 다음과 같은 꼴로 표현된다.

:a = (\dotso a_4a_3a_2a_1)_! = \sum_{i=0}^\infty a_{i+1} i!

여기서

:a_i \in \{0,1,\dotsc,i-1\}

이다. 특히, 마지막 자리 a_1의 값은 항상 0이다.

예를 들어,

:341010_! = 3 \times 5! + 4 \times 4! + 1 \times 3! + 0 \times 2! + 1\times1! + 0\times 0! = 463

이다.

계승진법은 여러 밑이 혼재된 기수법이며, 아래에서부터 ''i''번째 자리의 가수가 0부터 ''i''-1, 밑이 ''i''가 된다.

자리수87654321
자리수의 가중치7!6!5!4!3!2!1!0!
자리수의 가중치 (십진법)5040720120246211
자리수의 가수76543210



단, 최하위 자리는 항상 0이므로 생략되는 경우도 있다. 또한, 아래에서부터 11번째 자리 이후의 자리에는 10 이상의 수가 들어가므로 알파벳이 사용되는 경우가 많다.

이 문서에서 계승진법 표기는 아래 첨자 "!"로 표시된다. 예를 들어 3:4:1:0:1:0!는 다음과 같다.

: 3×5! + 4×4! + 1×3! + 0×2! + 1×1! + 0×0!

: ((((3×5 + 4)×4 + 1)×3 + 0)×2 + 1)×1 + 0

: 46310

3. 성질

계승진법은 혼합 진법 기수법의 일종으로, 각 자릿수의 가중치가 팩토리얼로 증가하는 특징을 가진다. 즉, 오른쪽에서 ''i''번째 자릿수는 밑(기수)이 ''i''가 되며, 해당 자릿수에 올 수 있는 수는 0부터 ''i''-1까지이다. 각 자릿수의 값은 (''i'' − 1)! (해당 자리 값)을 곱한 값이다.

자리수87654321
자리수의 가중치7!6!5!4!3!2!1!0!
자리수의 가중치 (십진법)5040720120246211
자리수의 가수76543210



가장 오른쪽 자릿수는 항상 0이고, 두 번째 자릿수는 0 또는 1, 세 번째 자릿수는 0, 1, 2 중 하나가 되는 식이다. 팩토리얼 진법은 0! 자리가 항상 0이기 때문에 이 자리를 생략하여 정의하기도 한다.

예를 들어, 3:4:1:0:1:0!는 3×5! + 4×4! + 1×3! + 0×2! + 1×1! + 0×0! = 46310을 의미한다.

혼합 기수 숫자 시스템의 일반적인 속성은 팩토리얼 숫자 시스템에도 적용된다. 예를 들어, 십진수를 팩토리얼 표현으로 변환하거나, 그 반대로 변환하는 것이 가능하다.

3. 1. 계승진법으로의 변환

자연수 a의 계승진법 표기는 다음과 같은 재귀적 알고리즘으로 구할 수 있다.

  • b_0 = a
  • a_i \equiv b_{i-1} \pmod i
  • b_i = \lfloor b_{i-1} / i \rfloor


예를 들어, 463을 계승진법으로 표현하면 다음과 같다.

bi−1=bi×i+ai
463=463×1+0
463=231×2+1
231=77×3+0
77=19×4+1
19=3×5+4
3=0×6+3
0=0×7+0
0=0×8+0



따라서 463 = 341010!이다.

46310을 계승진법으로 변환하는 과정은 다음과 같이 나타낼 수도 있다.



몫이 0이 될 때까지 나눗셈을 반복하고, 나머지를 역순으로 나열하면 341010!를 얻는다.

십진법 428을 계승진법으로 변환하는 과정은 다음과 같다.



마찬가지로 나머지를 아래에서부터 읽으면 42810=323100!이 된다.

3. 2. 순열과의 관계

계승진법은 크기 n의 알파벳의 순열들과 자연수 집합 \{0,1,\dotsc,k!-1\} 사이에 전단사 함수를 정의하는 데 사용될 수 있다.

자연수 0 \le m \le k! - 1k자릿수의 계승진법으로 표기하면

:m=(m_km_{k-1}\dotsc m_2m_1)_!

가 된다. 이때 m에 대응하는 순열은 다음 알고리즘으로 구할 수 있다.

  • 크기 k의 집합 \Sigmam_k번째 원소가 \sigma(\mathtt x_0)이다.
  • 크기 k-1의 집합 \Sigma\setminus\sigma\{\mathtt x_0\}m_{k-1}번째 원소가 \sigma(\mathtt x_1)이다.
  • 일반적으로, 크기 k-p의 집합 \Sigma\setminus\sigma\{\mathtt x_0,\mathtt x_1,\dotsc,\mathtt x_{p-1}\}m_{k-p}번째 원소가 \sigma(\mathtt x_p)이다.
  • 크기 2의 집합 \Sigma\setminus\sigma\{\mathtt x_0,\dotsc,\mathtt x_{k-3}\}m_2번째 원소가 \sigma(\mathtt x_{k-2})이다.
  • 크기 1의 집합 \Sigma\setminus\sigma\{\mathtt x_0,\dotsc,\mathtt x_{k-2}\}m_1=0번째 원소가 \sigma(\mathtt x_{k-1})이다.


이 알고리즘에서 '집합의 〜번째 원소'는 0번째부터 센다.

예를 들어 n=3일 때, 수 {0, 1, 2, 3, 4, 5}와 알파벳 \{\mathtt x_0,\mathtt x_1,\mathtt x_2\} 위의 순열 사이의 대응은 다음과 같다.

계승진법순열
0000!\begin{pmatrix}
1010!\begin{pmatrix}
2100!\begin{pmatrix}
3110!\begin{pmatrix}
4200!\begin{pmatrix}
5210!\begin{pmatrix}



레머 코드를 이용하면 순열의 사전식 순서를 쉽게 계산할 수 있다. n=3일 때의 레머 코드는 다음 표와 같다.

10진법계승진법순열
0100:0:0!(0,1,2)
1100:1:0!(0,2,1)
2101:0:0!(1,0,2)
3101:1:0!(1,2,0)
4102:0:0!(2,0,1)
5102:1:0!(2,1,0)


4. 소수 (Fractional values)

계승 진법은 유리수를 표현하기 위해 소수점 아래 자릿값을 사용할 수 있다. 소수점 아래 n번째 자릿값은 \frac{1}{n!} 형태이다. 예를 들어, 1/2 = 0.0\ 1_!, 1/3 = 0.0\ 0\ 2_! 등과 같이 표현된다.

다음은 십진법으로 표현된 유리수와 계승 진법으로 표현된 유리수를 비교한 표이다.

십진법계승 진법
1/20.0\ 1_!
1/30.0\ 0\ 2_!
2/30.0\ 1\ 1_!
1/40.0\ 0\ 1\ 2_!
3/40.0\ 1\ 1\ 2_!
1/50.0\ 0\ 1\ 0\ 4_!
1/60.0\ 0\ 1_!
5/60.0\ 1\ 2_!
1/70.0\ 0\ 0\ 3\ 2\ 0\ 6_!
1/80.0\ 0\ 0\ 3_!
1/90.0\ 0\ 0\ 2\ 3\ 2_!
1/100.0\ 0\ 0\ 2\ 2_!
1/110.0\ 0\ 0\ 2\ 0\ 5\ 3\ 1\ 4\ 0\ A_!
2/110.0\ 0\ 1\ 0\ 1\ 4\ 6\ 2\ 8\ 1\ 9_!
9/110.0\ 1\ 1\ 3\ 3\ 1\ 0\ 5\ 0\ 8\ 2_!
10/110.0\ 1\ 2\ 1\ 4\ 0\ 3\ 6\ 4\ 9 \ 1_!
1/120.0\ 0\ 0\ 2_!
5/120.0\ 0\ 2\ 2_!
7/120.0\ 1\ 0\ 2_!
11/120.0\ 1\ 2\ 2_!
1/150.0\ 0\ 0\ 1\ 3_!
1/160.0\ 0\ 0\ 1\ 2\ 3_!
1/180.0\ 0\ 0\ 1\ 1\ 4_!
1/200.0\ 0\ 0\ 1\ 1_!
1/240.0\ 0\ 0\ 1_!
1/300.0\ 0\ 0\ 0\ 4_!
1/360.0\ 0\ 0\ 0\ 3\ 2_!
1/600.0\ 0\ 0\ 0\ 2_!
1/720.0\ 0\ 0\ 0\ 1\ 4_!
1/1200.0\ 0\ 0\ 0\ 1_!
1/1440.0\ 0\ 0\ 0\ 0\ 5_!
1/2400.0\ 0\ 0\ 0\ 0\ 3_!
1/3600.0\ 0\ 0\ 0\ 0\ 2_!
1/7200.0\ 0\ 0\ 0\ 0\ 1_!



모든 유리수는 유한한 계승 진법 소수로 표현 가능하다.

일부 무리수는 계승 진법으로 변환했을 때 특징적인 소수 표시를 가진다. 예를 들어 다음과 같다.


  • e = 1\ 0.0\ 1\ 1\ 1\ 1\ 1\ 1\ 1\ 1\ 1\ 1\ 1\ 1\ 1\ 1..._!
  • e^{-1} = 0.0\ 0\ 2\ 0\ 4\ 0\ 6\ 0\ 8\ 0\ A\ 0\ C\ 0\ E..._!
  • \sin(1) = 0.0\ 1\ 2\ 0\ 0\ 5\ 6\ 0\ 0\ 9\ A\ 0\ 0\ D\ E..._!
  • \cos(1) = 0.0\ 1\ 0\ 0\ 4\ 5\ 0\ 0\ 8\ 9\ 0\ 0\ C\ D\ 0..._!
  • \sinh(1) = 1.0\ 0\ 1\ 0\ 1\ 0\ 1\ 0\ 1\ 0\ 1\ 0\ 1\ 0\ 1\ 0..._!
  • \cosh(1) = 1.0\ 1\ 0\ 1\ 0\ 1\ 0\ 1\ 0\ 1\ 0\ 1\ 0\ 1\ 0\ 1..._!

5. 역사

게오르크 칸토어가 1869년에 이미 자릿수마다 진법이 바뀌는 수 표기법에 대하여 연구하였다.[6] 1888년에 샤를앙주 레장(Charles-Ange Laisant|샤를 앙주 레장프랑스어, 1841〜1920)이 구체적으로 다루었으며, 순열과의 관계를 밝혔다.[7]

샤를앙주 레장

6. 활용

계승진법은 순열의 조합론적 성질을 연구하는 데 활용된다. 정수가 계승진법으로 표현되었을 때, 정수 0, ..., n!−1 (또는 계승진법으로 n자리 수)과 사전식 순서에서의 n개 요소의 순열 사이에는 자연스러운 사상이 있으며, 이 사상은 레머 부호라고 불린다.[1] 예를 들어 n=3인 경우, 사상은 다음 표와 같다.

10진법계승진법순열
0100:0:0!(0,1,2)
1100:1:0!(0,2,1)
2101:0:0!(1,0,2)
3101:1:0!(1,2,0)
4102:0:0!(2,0,1)
5102:1:0!(2,1,0)



계승진법은 컴퓨터 과학에서 순열 생성 알고리즘 등에 응용될 수 있다.

7. 소수 계승 진법

소수 계승 진법은 계승 진법과 유사한 기수법으로, n번째 자릿수의 가중치를 p_{n-1}\#로 하는 것이다.

자릿수87654321
자릿수 가중치(p7=17)#(p6=13)#(p5=11)#(p4=7)#(p3=5)#(p2=3)#(p1=2)#(p0=1)#
자릿수 가중치 (10진법)51051030030231021030621
자릿수 계수181612106421



이 기수법의 유일성은 다음 항등식에 의해 보장된다.

: \sum_{i=0}^{n} (p_{i+1} - 1) \cdot p_i\# = p_{n+1}\# - 1

단, n\#소수 계승을 나타낸다.

참조

[1] 서적 The Art of Computer Programming Addison-Wesley
[2] 간행물 Zeitschrift für Mathematik und Physik
[3] 서적 The Art of Computer Programming Addison-Wesley
[4] 간행물 Sur la numération factorielle, application aux permutations http://www.numdam.or[...]
[5] 간행물 Using Permutations in .NET for Improved Systems Security http://msdn2.microso[...] Microsoft Developer Network
[6] 저널
[7] 저널



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com