맨위로가기

일진법

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

1. 개요

일진법은 수를 나타내는 기수법 중 하나로, 일반적으로 세로 막대(|)를 반복하여 수를 표현하는 방식이다. 탤리 마크(tally mark)는 일진법의 대표적인 예시로, 스포츠 경기 득점 집계 등 진행 중인 결과를 기록하는 데 유용하다. 덧셈과 뺄셈은 간단하게 수행되지만, 곱셈은 복잡하다. 일진법은 계산 복잡도 이론에서 특정 문제의 실행 시간을 "인위적으로" 줄이는 데 사용되기도 하며, 데이터 압축, 수리 논리학, 람다 대수, 스팸 필터 등 다양한 분야에서 활용된다.

더 읽어볼만한 페이지

  • 1 - 단위
    단위는 특정 양을 측정하거나 수량을 세는 기준을 의미하며, 불교 용어에서 유래하였으나 수학, 과학, 의학 등 다양한 분야에서 각기 다른 의미와 기준으로 사용된다.
  • 1 - 항등 함수
    항등 함수는 집합 X의 각 원소를 자기 자신에게 대응시키는 함수로서, 정의역과 공역이 같은 집합 X에서 단사 함수이자 전사 함수이며, 함수 합성에서 항등원의 역할을 수행하는 중요한 개념이다.
  • 초등 수학 - 거리
    거리는 수학에서 두 점 사이를 측정하는 함수, 물리학에서 물체의 위치 변화량, 일상생활에서 두 지점 사이의 길이를 의미하며, 국제단위계에서는 길이로 표현된다.
  • 초등 수학 - 제곱근
    제곱근은 x² = a를 만족하는 x 값으로, a가 양수일 때 두 개의 제곱근을 가지며, 수학, 물리학, 기하학 등 다양한 분야에서 중요한 개념이고, 무리수와도 관련되어 행렬이나 연산자에도 확장된다.
  • 기수법 - 이진법
    이진법은 0과 1 두 개의 숫자를 사용하는 밑이 2인 위치 기수법으로, 컴퓨터 과학의 기초가 되었으며 현대 컴퓨터에서 데이터를 저장하고 처리하는 데 사용된다.
  • 기수법 - 구진법
    구진법은 9를 밑으로 하는 위치 기수법으로 0부터 8까지의 숫자를 사용하여 수를 나타내며, 3의 배수 표현이 간결하고 3의 역수는 유한소수로 표현되는 특징이 있다.
일진법
일진법 (단항 기수법)
유형비위치 기수법
1
기호임의의 단일 기호 (예: Ⅰ, |, 막대)
용도아주 작은 수를 표현하거나, 어떤 물건의 개수를 세는 데 사용됨
예시3 = ⅠⅠⅠ
5 = |||||
특징
장점표현이 매우 단순함
덧셈과 뺄셈이 간단함 (기호 추가 또는 제거)
단점큰 수를 표현하기에는 매우 비효율적임
곱셈과 나눗셈이 매우 복잡함
활용 예시
고대고대 이집트 숫자
로마 숫자 (초기 형태)
현대죄수들이 벽에 금을 그어 날짜를 세는 경우
스포츠 경기에서 점수를 세는 경우 (예: 야구 스트라이크 카운트)
설문 조사에서 응답자 수를 표시하는 경우
참고 사항
기타 진법과의 관계다른 진법의 기초가 되는 가장 단순한 형태의 기수법임
수학적 의미페아노 공리계에서 자연수를 정의하는 데 사용될 수 있음
튜링 완전성을 갖는 계산 모델을 만드는 데 사용될 수 있음

2. 역사 및 문화적 배경

일진법은 인류가 수를 세기 시작하면서 자연스럽게 사용한 가장 오래된 기수법 중 하나이다. 자연수를 표현하는 가장 단순한 기수법으로, 임의의 기호를 N번 반복하여 수 N을 나타낸다. 예를 들어 기호로 1을 사용하는 경우, 십진법의 1, 2, 3, 4, 5는 일진법으로 1, 11, 111, 1111, 11111과 같이 표현된다. 일진법에는 0을 나타내는 기호가 없으며, 0은 공백 문자열(아무것도 쓰지 않음)로 나타낸다.

2. 1. 탤리 마크 (Tally marks)

서구에서 가장 일반적인 방법으로, 단위가 되는 마크는 읽기 쉽도록 홀수( 개 또는 다섯 개)씩 그룹으로 묶는 경우가 많다. 짝수의 경우에는 개 또는 여섯 개씩 그룹으로 묶는 경우도 있다. 그룹 안의 첫 번째, 세 번째(세 개씩 묶는 경우), 다섯 번째(다섯 개씩 묶는 경우) 마크는 쉽게 구별할 수 있도록 다른 마크에 비해 비스듬히 쓰거나 가로선을 넣는 경우가 있다.

5개씩 구분한 탤리 마크


5개씩 묶는 경우에는 5를 나타내는 마크는 five-bar gate|파이브바 게이트영어라고도 불리며, "세로선 4개에 가로선 1개를 넣는" 방법으로 표현한다. 3개씩 묶는 경우에는 3을 "H"의 가로선을 양쪽으로 늘리는 방법으로 표현한다. 짝수도 마찬가지로, 4개씩 묶는 경우에는 "♯"이나 "口", 6개씩 묶는 경우에는 "세로선 4개에 가로선 2개를 넣는" 또는 "⊠"(네모 안에 ×) 등의 방법으로 표현한다.

2. 2. 획선법



'''|'''(탤리 마크, tally mark영어)를 사용하는 것은 서구에서 가장 일반적인 방법이다. 단위가 되는 마크는 읽기 쉽도록 홀수( 개 또는 다섯 개)씩 그룹으로 묶는 경우가 많다. 짝수의 경우에는 개 또는 여섯 개씩 그룹으로 묶는 경우도 있다. 이것은 십진법 등 다양한 N진법에서 "100,000,000"으로 표현되는 큰 수를 읽기 쉽게 하기 위해 스페이스나 구분 기호(쉼표 등)를 사용하는 것과 비슷하다. 그룹 안의 첫 번째, 세 번째(세 개씩 묶는 경우), 다섯 번째(다섯 개씩 묶는 경우) 마크는 쉽게 구별할 수 있도록 다른 마크에 비해 비스듬히 쓰거나 가로선을 넣는 경우가 있다.

5개씩 묶는 경우에는, 5를 나타내는 마크는 'five-bar gate영어'라고도 불리며, "세로선 4개에 가로선 1개를 넣는" 방법으로 표현한다. 3개씩 묶는 경우에는, 3은 "H"의 가로선을 양쪽으로 늘리는 방법으로 표현한다. 짝수도 마찬가지로, 4개씩 묶는 경우에는 "♯"이나 "口", 6개씩 묶는 경우에는 "세로선 4개에 가로선 2개를 넣는" 또는 "⊠"(네모 안에 ×) 등의 방법으로 표현한다.

홀수(세 개 또는 다섯 개)씩 묶는 경우에는, 그룹을 두 개씩 묶어 원으로 둘러싸거나 (3×26, 5×2=10), 네 개씩 묶어 원으로 둘러싸기도 한다 (3×412, 5×420). 마찬가지로, 네 개씩 묶는 경우에는, 세 개 또는 다섯 개로 묶어 원으로 둘러싸고 (4×3=12, 4×5=20), 여섯 개씩 묶는 경우에는 6의 거듭제곱으로 묶어 원으로 둘러싸기도 한다 (6236, 63216).

정자


일본이나 중국에서는 다섯 획의 한자인 '''正'''을 써서 세는 방법이 있는데, 이것도 5개씩 그룹으로 묶는 일진법이다.

아르헨티나 등에서 사용되는 획선법


아르헨티나브라질에서는, Trucopt라는 게임을 할 때 등에 일진법이 널리 사용된다.

2. 3. 아시아권의 표기

일본이나 중국에서는 다섯 획의 한자인 '''正'''을 써서 수를 세는 방법이 있는데, 이것도 5개씩 그룹으로 묶는 일진법이다. 이는 한국에서도 흔히 볼 수 있는 표기 방식이다.

2. 4. 남아메리카의 표기

아르헨티나브라질에서는 Trucopt라는 게임을 할 때 등에 일진법이 널리 사용된다.

3. 연산

일진법에서 덧셈과 뺄셈은 문자열 연결과 거의 같아 매우 간단하다.[9] 비트열에서 0이 아닌 비트 수를 세는 해밍 가중치(Hamming weight) 또는 개체 수 계산 연산은 일진법에서 이진법으로의 변환으로 해석할 수 있다.[10]

3. 1. 덧셈

일진법에서 덧셈은 두 수를 나타내는 기호를 단순히 이어 붙이는 방식으로 이루어진다.[9]

3. 2. 뺄셈

뺄셈은 빼는 수만큼 기호를 제거하면 된다.[9]

3. 3. 곱셈

곱셈은 더 복잡하며, 종종 튜링 기계 설계의 시험 사례로 사용되어 왔다.[11][12][13]

4. 계산 복잡도

위치 기수법과 비교하여 일진법은 큰 수를 표현하기 불편하여 대규모 계산에는 실제로 사용되지 않는다. 하지만 계산 이론에서 일부 결정 문제(예: 일부 P-완전 문제) 설명에 나타나는데, 여기서는 문제의 실행 시간 또는 공간 요구 사항을 "인위적으로" 줄이는 데 사용된다.[14]

N진법 표기에서

:a_{n-1}\ldots a_0는 자연수

:\sum_{i=0}^{n-1}a_iN^i를 나타낸다.

형식적으로

:N=1,\; a_{n-1}=\cdots=a_0=1이라 하면, 표기 :1\cdots 1(1을 N개 나열한 것)는

:\sum_{i=0}^{n-1}1\cdot 1^i=n을 나타내게 되고, 일진법 표기와 일치한다. 이것이 「일진법」이라고 불리는 연유이다.

4. 1. 정수 인수분해 문제

정수 인수분해 문제는 입력이 이진법으로 주어질 때 실행 시간이 입력 길이의 다항 함수보다 더 많은 시간이 필요할 것으로 예상되지만, 입력이 일진법으로 주어지면 선형 시간만 필요하다.[14] 그러나 이것은 오해의 소지가 있다. 일진법 입력을 사용하는 것이 이진법보다 빠르지 않다. 차이점은 이진법(또는 더 큰 기수) 입력은 숫자의 2를 밑으로 하는 로그(또는 더 큰 기수의 로그)에 비례하는 반면, 일진법 입력은 숫자 자체에 비례한다는 것이다. 따라서 일진법에서 실행 시간과 공간 요구 사항이 입력 크기의 함수로 더 좋아 보이지만, 더 효율적인 솔루션을 나타내는 것은 아니다.[15]

4. 2. 강하게 NP-완전 문제

계산 복잡도 이론에서 일진법 표기는 강하게 NP-완전한 문제와 NP-완전하지만 강하게 NP-완전하지 않은 문제를 구분하는 데 사용된다. 입력에 숫자 매개변수가 포함된 문제는 매개변수를 일진법으로 표현하여 입력 크기를 인위적으로 크게 만들더라도 NP-완전으로 남아 있으면 강하게 NP-완전하다. 이러한 문제의 경우 모든 매개변수 값이 다항식 크기 이하인 어려운 인스턴스가 존재한다.[16]

5. 응용

일진법은 계산 이론에서 계산량을 "인위적으로" 줄이기 위해 응용되기도 한다. 예를 들어, 자연수의 소인수분해 문제는 입력이 이진법으로 주어지는 경우, 입력 길이 ''n''의 다항식 시간으로는 풀기 어렵다고 알려져 있다(소인수분해 가정). 그러나 입력이 일진법으로 주어지면, 입력 길이의 다항식 시간으로 푸는 것이 가능하다(에라토스테네스의 체로 충분하다). 이진법에서 입력 길이 ''n''은 입력 수 ''N''의 로그 log ''N''에 비례하지만, 일진법에서 입력 길이는 입력 수 ''N'' 자체에 비례하기 때문이다.

그 외에도 컴퓨터 과학 등에 여러 응용 사례가 있다. 예를 들어, 튜링 기계의 초보적인 예제에서는 테이프 위에 숫자를 나열하여 위치 기수법으로 다루는 것은 상당히 번잡하지만, 일진법을 사용하면 "오른쪽으로 가서 1이 있으면 0으로 바꾸고, 왼쪽으로 간다"와 같은 간단한 절차로 처리할 수 있다.

5. 1. 데이터 압축

골롬 부호화와 같은 일부 데이터 압축 알고리즘에서 일진법이 사용된다.[17]

5. 2. 수리 논리학

페아노 공리의 기초를 형성하는 데 사용된다.[18]

5. 3. 람다 대수

처치 부호화는 람다 대수 내에서 숫자를 표현하는 데 사용되는 일진 표기법의 한 형태이다.[19]

5. 4. 스팸 필터

일부 이메일 스팸 필터는 'X-Spam-Bar' 또는 'X-SPAM-LEVEL'과 같은 이메일 헤더에 여러 개의 별표를 사용하여 메시지를 태깅한다. 숫자가 클수록 이메일이 스팸일 가능성이 높다. 10진수 대신 일진 표현을 사용하면 사용자는 특정 등급 이상의 메시지를 검색할 수 있다. 예를 들어, ''''''를 검색하면 등급이 4 이상인 메시지가 나타난다.[20]

참조

[1] 서적 One to Nine: The Inner Life of Numbers https://books.google[...] Anchor Canada
[2] 서적 Computability, Complexity, and Languages: Fundamentals of Theoretical Computer Science https://books.google[...] Academic Press
[3] 서적 Programming Structures: Machines and Programs Prentice Hall
[4] 간행물 Third Base http://www.americans[...] 2013-07-28
[5] 간행물 On efficiency of notations for natural numbers
[6] 간행물 The Evolution of Modern Numerals from Ancient Tally Marks https://books.google[...]
[7] 간행물 Chinese Tally Mark
[8] 문서 Unicode Consortium https://www.unicode.[...] 2016-01-27
[9] 서적 Logic and computational complexity (Indianapolis, IN, 1994) https://archive.org/[...] Springer, Berlin
[10] 서적 Computer Science and Statistics--Tenth Annual Symposium on the Interface https://books.google[...] U.S. Department of Commerce / National Bureau of Standards
[11] 서적 Introduction to Automata Theory, Languages, and Computation https://archive.org/[...] Addison Wesley
[12] 서적 The New Turing Omnibus: Sixty-Six Excursions in Computer Science https://books.google[...] Computer Science Press
[13] 서적 Turing Machine Universality of the Game of Life https://books.google[...] Springer
[14] 서적 Computational Complexity: A Modern Approach Cambridge University Press 2017-05-10
[15] 서적 The Nature of Computation https://books.google[...] Oxford University Press
[16] 간행물 'Strong' NP-completeness results: Motivation, examples, and implications
[17] 간행물 Run-length encodings http://urchin.earth.[...]
[18] 서적 Types for proofs and programs (Durham, 2000) Springer, Berlin
[19] 서적 The Beauty of Functional Code Springer-Verlag
[20] 웹사이트 Email, Spam Control, How to get service for departmental email servers http://answers.uilli[...]
[21] 간행물 システムの進化と創造性 青土社 1994-05-01



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

문의하기 : help@durumis.com