최근 수정 시각 : 2024-11-02 19:26:06

Bowers Exploding Array Function

BEAF에서 넘어옴

파일:나무위키+유도.png  
BEAF은(는) 여기로 연결됩니다.
BEEF의 일반적 의미에 대한 내용은 쇠고기 문서
번 문단을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
참고하십시오.

연산
Numbers and Operations
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px"
<colbgcolor=#765432> 수 체계 자연수 (홀수 · 짝수 · 소수 · 합성수) · 정수 · 유리수 (정수가 아닌 유리수) · 실수 (무리수 · 초월수) · 복소수 (허수) · 사원수
표현 숫자 (아라비아 숫자 · 로마 숫자 · 그리스 숫자) · 기수법(과학적 기수법 · E 표기법 · 커누스 윗화살표 표기법 · 콘웨이 연쇄 화살표 표기법 ·BEAF· 버드 표기법) · 진법 (십진법 · 이진법 · 8진법 · 12진법 · 16진법 · 60진법) · 분수 (분모 · 분자 · 기약분수 · 번분수 · 연분수 · 통분 · 약분) · 소수 {유한소수 · 무한소수 (순환소수 · 비순환소수)} · 환원 불능 · 미지수 · 변수 · 상수
연산 사칙연산 (덧셈 · 뺄셈 · 곱셈 구구단 · 나눗셈) · 역수 · 절댓값 · 제곱근 (이중근호) · 거듭제곱 · 로그 (상용로그 · 자연로그 · 이진로그) · 검산 · 연산자 · 교환자
방식 암산 · 세로셈법 · 주판 · 산가지 · 네이피어 계산봉 · 계산기 · 계산자
용어 이항연산(표기법) · 항등원과 역원 · 교환법칙 · 결합법칙 · 분배법칙
기타 수에 관련된 사항 (0과 1 사이의 수 · 음수 · 작은 수 · 큰 수) · 혼합 계산 (48÷2(9+3) · 111+1×2=224 · 2+2×2) · 0으로 나누기(바퀴 이론) · 0의 0제곱 }}}}}}}}}

파일:TRILATRI.jpeg.jpg
[math(\{3,3(0,3)2\})]의 이미지 표현. 그나마 [math(\{3,3(0,3)2\})]이라서 이미지 표현이 가능하다.

1. 개요2. 확장 연산자3. 배열 표기법
3.1. 선형 배열
3.1.1. 계산 예시
3.2. 차원 배열
3.2.1. 계산 예시
3.3. 초차원 배열
3.3.1. 계산 예시
3.4. 하이퍼 초차원 배열
3.4.1. 계산 예시
3.5. 다중 초차원 배열
3.5.1. 계산 예시
4. 배열 표기 표기법
4.1. 군단 배열
4.1.1. 계산 예시
4.2. 다중 군단 배열
4.2.1. 계산 예시
4.3. 초군단 배열
4.3.1. L2 이상의 초군단 배열
5. 성장률6. 오류7. 관련 항목

1. 개요

Bowers Exploding Array Function, 줄여서 BEAF는 2002년 조나단 바우어가 정의한 매우 큰 수들을 표기하는 표기법 중 하나이다.#

2. 확장 연산자

커누스 윗화살표 표기법을 사용하여, 확장 연산자를 다음과 같이 정의한다.

1. [math(a\{c\}b=a\uparrow^c b)]
2. [math(a\{c\}^db=\underbrace{a\{c-1\}​^da\{c-1\}​^da\{c-1\}​^da...a\{c-1\}​^da}_b)]
3. [math(a\{1\}^d b=\underbrace{a\{a\{a\{a\{....a\{a}_b\}^{d-1}a\}^{d-1}...a\}^{d-1}a\}^{d-1}a)]

예를 들어, [math(3\{4\}3)]은 [math(3\uparrow^43=3\uparrow \uparrow \uparrow \uparrow 3)] 이다.

그레이엄 수는 [math(3\uparrow^n3=3\{n\}3)]의 커누스 화살표 탑이 63개 쌓여있고 끝에 [math(3\uparrow^43=3\{4\}3)]이 있다고 생각할 수 있다. 즉 [math(\underbrace{3\{3\{3\{...3\{4\}3...\}3\}3\}3}_{63}\approx 3\{\{1\}\}64)]로 근사할 수 있다. [math(\{3, 65, 1, 2\})]보다는 조금(?) 크며[1], [math(\{3, 66, 1, 2\})]보다는 작다.[2] 더 정확하게 표현하면 G(64)는 [math(\{4, 65, 1, 2\})]보다 크고 [math(\{5, 65, 1, 2\})]보다 작다. G(1)을 전자는 [math(4 \uparrow \uparrow \uparrow 4)], 후자는 [math(5 \uparrow \uparrow \uparrow \uparrow 5)]로 넣고 64회 재귀했을 때의 값에 해당한다.

3. 배열 표기법

3.1. 선형 배열

1. [math(\{a,b\}=a^b)]

2. [math(\{a,1,c,d,...e\}=a)][3]

3. [math(\{a,b,c,d,e...f,1\}=\{a,b,c,d,e...f\})]

4. [math(\{a,b,1,..,1,d,e,..,k\} = \{a,a,a,..,\{a,b-1,1,..,1,d,e,..,k\},d-1,e,..,k\})][4]

5. [math(\{a,b,c,d, ..., k\} = \{a,\{a,b-1,c,d,...,k\},c-1,d,..,k\})]

여기서 [math(a\{c\}^db=\{a,b,c,d\})]임을 알 수 있다.

3.1.1. 계산 예시

끝부분의 f는 fgh이다.
  • 100억: [math(\{10, 2, 2\}=\{10, \{10, 1, 2\}, 1\}=\{10, 10\}={10}^{10}\approx f_{2}(28))]
  • tritri: [math(\{3, 3, 3\}=\{3, \{3, 2, 3\}, 2\}=\{3, \{3, \{3, 1, 3\}, 2\}, 2\}=\{3, \{3, 3, 2\}, 2\}=\{3, \{3, \{3, 2, 2\}, 1\}, 2\}=\{3, \{3, \{3, 2, 2\}\}, 2\}=\{3, \{3, \{3, \{3, 1, 2\}, 1\}\}, 2\}=\{3, \{3, \{3, 3\}\}, 2\}=\{3, \{3, 27\}, 2\}=\{3, 7625597484987, 2\}=\{3, \{3, 7625597484986, 2\}, 1\}=\{3, \{3, \{3, 7625597484985, 2\}, 1\}, 1\}=...=\underbrace{\{3, ...\{3, \{3, 1, 2\}, 1\}..., 1\}}_{7625597484987}=\underbrace{\{3, ...\{3, \{3, 1, 2\}\}...,\}}_{7625597484987}=\underbrace{\{3, ...\{3, 3\}...,\}}_{7625597484986}=\underbrace{\{3, ...\{3, 3^3\}...,\}}_{7625597484985}=\underbrace{\{3, ...\{3, 3^{3^3}\}...,\}}_{7625597484984}=...=\underbrace{3^{3^{3...^3}}}_{7625597484987}=3\uparrow \uparrow \uparrow 3\approx f_{4}(3))]
  • tridecal: [math(\{10, 10, 10\}=\{10, \{10, 9, 10\}, 9\}=...=\underbrace{\{10, ...\{10, \{10, 1, 10\}, 9\}..., 9\}}_{10}=\underbrace{\{10, ...\{10, \{10, 10, 9\}, 9\}..., 9\}}_{9}=10\uparrow^{10} 10\approx f_{11}(9))]
  • corporal: [math(\{10, 100, 1, 2\}=\{10, 10, \{10, 99, 1, 2\}, 1\}=\{10, 10, \{10, 99, 1, 2\}\}...=\underbrace{\{10, 10,...\{10, 10, \{10, 1, 1, 2\}\}...\}}_{100}=\underbrace{\{10, 10,...\{10, 10, \{10, 10, 10\}\}...\}}_{99}\approx f_{\omega+1}(99))][5]
  • biggol: [math(\{10, 10, 100, 2\}=\{10, \{10, 9, 100, 2\}, 99, 2\}=...=\underbrace{\{10, ...\{10, \{10, 1, 100, 2\}, 99, 2\}..., 99, 2\}}_{10}=\underbrace{\{10, ...\{10, \{10, 10, 99, 2\}, 99, 2\}..., 99, 2\}}_{9}\approx f_{\omega2}(100))][6]
  • general: [math(\{10, 10, 10, 10\}=\{10, \{10, 9, 10, 10\}, 9, 10\}=...=\underbrace{\{10, ...\{10, \{10, 1, 9, 10\}, 9, 10\}..., 9, 10\}}_{10}=\underbrace{\{10, ...\{10, \{10, 10, 9, 10\}, 9, 10\}..., 9, 10\}}_{9}\approx f_{\omega^2}(10))][7]
  • pentadecal: [math(\{10, 10, 10, 10 ,10\}=\{10, \{10, 9, 10, 10, 10\}, 9, 10, 10\}=...=\underbrace{\{10, ...\{10, \{10, 1, 9, 10, 10\}, 9, 10, 10\}..., 9, 10, 10\}}_{10}=\underbrace{\{10, ...\{10, \{10, 10, 9, 10, 10\}, 9, 10, 10\}..., 9, 10, 10\}}_{9}\approx f_{\omega^3}(10))][8]

3.2. 차원 배열

전체적인 계산 순서는 배열 [math(\{A,B(C)D\})]에서 A/B->D->(1)->C이다. 즉 A 부분의 배열 수를 B를 통해 늘리고, A,B의 배열 수는 D가 된다. D가 커져 배열로 나타낼 수 있게 되면 (1)이 추가되고, 이것이 중첩되어 C를 키울 수 있게 된다.
  • [math(\{a,b(1)2\}=\underbrace{\{a,a,a,a,a,a....a\}}_b)]
  • [math(\{a,b,1(1)2\}=\{a,b(1)2\})]
  • [math(\{a,b,m+1(1)2\}=\underbrace{\{a,\{a,...\{a,b,m(1)2\}}_b,m...(1)2\},m(1)2\})]
  • [math(\{a,b(1)n+1\}=\underbrace{\{a,a,a,a,a,a....a}_b(1)n\})]
  • [math(\{a(1)a,1\}=\{a(1)a\})]
  • [math(\{a(1)a,b,m+1\}=\underbrace{\{a(1)a,\{a(1)a,...\{a(1)a,b,m\}}_b...,m\},m\})]
  • [math(\{a,b(1)(1)2\}=\{\underbrace{a,a,a,...a}_b(1)\underbrace{a,a,a...a}_b\})]
  • [math(\{a,b(c+1)2\}=\{a,b\underbrace{(c)(c)(c)...(c)}_b2\})]

3.2.1. 계산 예시

  • iteral: [math(\{10, 10(1)2\}=\underbrace{\{10, 10, ..., 10 ,10\}}_{10}\approx f_{\omega^8}(10))]
  • gibbol: [math(\{10, 100, 2(1)2\}=\underbrace{\{10, ...\{10, \{10, 100(1)2\}(1)2\}...(1)2\}}_{100}\approx f_{\omega^\omega+1}(100))][9]
  • gootrol: [math(\{10, 100(1)3\}=\{\underbrace{10, 10, ..., 10}_{100}(1)2\}\approx f_{(\omega^\omega)2}(100))]
  • gossol: [math(\{10, 100(1)100\}=\{\underbrace{10, 10, ..., 10}_{100}(1)99\}\approx f_{\omega^{\omega+1}}(100))]
  • mossol: [math(\{10, 10(1)10, 100\}=\underbrace{\{10, 10(1)\{10, 10(1) ...\{10, 10(1)10\}...\}\}}_{100}\approx f_{\omega^{\omega+2}}(100))][10][11]
  • dubol: [math(\{10, 100(1)(1)2\}=\{\underbrace{10, 10, ..., 10}_{100}(1)\underbrace{10, 10, ..., 10}_{100}\}\approx f_{\omega^{\omega2}}(100))][12]
  • xappol: [math(\{10, 10(2)2\}=\{10, 10\underbrace{(1)(1)...(1)}_{10}2\}\approx f_{\omega^{\omega^2}}(10))][13][14]

3.3. 초차원 배열

  • [math(\{a,b(b)2\}=\{a,b(0,1)2\})]
이제 소괄호 안쪽이 (n)에서 (0,1)으로 바뀐 배열이 되는데, 여기서 a,b 부분의 배열이 늘어나면 다시[math(b(1)2)]꼴로 나타낼 수 있다.
  • [math(\{a,b(1)2(0,1)2\}=\{\underbrace{a,a,a,...,a}_b(0,1)2\})]
  • [math(\{a,b(0,1)c+1\}=\{a,b(0,1)2(0,1)c\})]
  • [math(\{a,b(0,1)(1)2\}=\{a,b(0,1)\underbrace{a,a,a,...a}_b\})]
  • [math(\{a,b(c+1,1)2\}=\{a,b\underbrace{(c,1)(c,1)...(c,1)}_b2\})]
다시 소괄호를 추가해 중첩한다.
  • [math(\{a,b(0,2)2\}=\{a,b(b,1)2\})]
이제 다시 (n,1)이 (0,2)로 바뀐다. 앞 과정과 마찬가지로 (0,2)가 여러 개면 (1,2), 계속 하면 (n,2)가 (0,3)이 되고 이걸 계속 할 수 있게 된다.

3.3.1. 계산 예시

  • dimendecal: [math(\{10, 10(0, 1)2\}=\{10, 10(10)2\}=\{10, 10\underbrace{(9)(9)...(9)}_{10}2\}\approx f_{\omega^{\omega^\omega}}(10))]
  • gongulus: [math(\{10, 100(0, 1)2\}=\{10, 100(100)2\}=\{10, 100\underbrace{(99)(99)...(99)}_{100}2\}\approx f_{\omega^{\omega^\omega}}(100))]
  • gingulus: [math(\{10, 100(0, 2)2\}=\{10, 100(100, 1)2\}=\{10, 100\underbrace{(99, 1)(99, 1)...(99,1)}_{100}2\}\approx f_{\omega^{\omega^\omega2}}(100))][15]

3.4. 하이퍼 초차원 배열

  • [math(\{a,b(0,0,1)2\}=\{a,b(0,b)2\})]
소괄호 안에 배열이 또 추가된다
  • [math(\{a,b(c+1,0,1)2\}=\{a,b\underbrace{(c,0,1)(c,0,1)...(c,0,1)}_b2\})]
  • [math(\{a,b(0,c+1,1)2\}=\{a,b(b,c,1)2\})]
  • [math(\{a,b(0,0,c+1)2\}=\{a,b(0,b,c)2\})]
전부 이전 규칙을 반복한 정의이다.
  • [math(\{a,b(\underbrace{0,0,0,...,1}_{c+1})2\}=\{a,b(\underbrace{0,0,0,...,b}_c)2\})]
이런 식으로 괄호안 배열을 늘릴 수 있다.

3.4.1. 계산 예시

  • bongulus: [math(\{10, 100(0, 0, 1)2\}=\{10, 100(0, 100)2\}=\{10, 100(100, 99)2\}=\{10, 100\underbrace{(99, 99)(99, 99)...(99, 99)}_{100}2\}\approx f_{\omega^{\omega^{\omega^2}}}(100))]
  • bingulus: [math(\{10, 100(0, 0, 2)2\}=\{10, 100(0, 100, 1)2\}=\{10, 100(100, 99, 1)2\}=\{10, 100\underbrace{(99, 99, 1)(99, 99, 1)...(99, 99, 1)}_{100}2\}\approx f_{\omega^{\omega^{(\omega^2)2}}}(100))]
  • trongulus: [math(\{10, 100(0, 0, 0, 1)2\}=\{10, 100(0, 0, 100)2\}=\{10, 100(100, 99, 99)2\}=\{10, 100\underbrace{(99, 99, 99)(99, 99, 99)...(99, 99, 99)}_{100}2\}\approx f_{\omega^{\omega^{\omega^3}}}(100))][16]

3.5. 다중 초차원 배열

  • [math(\{a,b((1)1)2\}=\{a,b(\underbrace{0,0,0,...,1}_b)2\})]
소괄호 안 배열을 축약하여 나타낸다. 이 단계도 이전 단계들의 배열 규칙을 전부 사용하며, 같은 방식으로 ((1)1)을 여러 개 만들 수 있다.
  • [math(\{a,b(1(1)1)2\}=\{a,b\underbrace{((1)1)((1)1)((1)1)...((1)1)}_b2\})]
  • [math(\{a,b(c+1(1)1)2\}=\{a,b\underbrace{(c(1)1)(c(1)1)(c(1)1)...(c(1)1))}_b2\})]
  • [math(\{a,b(0,1(1)1)2\}=\{a,b(b(1)1)2\})]
소괄호 안쪽의 숫자를 다시 키워, 배열로 만든다.
  • [math(\{a,b(1(1)c+1)2\}=\{a,b(\underbrace{0,0,0,..,1}_b(1)c)2\})]
  • [math(\{a,b((1)0,1)2\}=\{a,b((1)b)2\})]
이전 규칙으로 안쪽의 배열을 다시 늘린다. ((1)0,1)이 될 때 두번째 소괄호 앞의 1이 사라지는 걸 알 수 있는데, 이는 (0,0,...,1)이 ((1)1)이기 때문이다.
  • [math(\{a,b((1)(1)1)2\}=\{a,b((1)\underbrace{0,0,0,...,1}_b)2\})]
  • [math(\{a,b((c+1)1)2\}=\{a,b(\underbrace{(c)(c)(c)...(c)}_b)2\})]
  • [math(\{a,b((0,1)1)2\}=\{a,b((b)1)2\})]
소괄호 안에서 소괄호를 다시 중첩 할 수 있는데, 눈썰미 좋은 사람이라면 이걸 계속할 수도 있다는 사실을 알아챘을 것이다.
  • [math(\{a,b(((1)1)1)2\}=\{a,b((\underbrace{0,0,0,...,1}_b)1)2\})]
계속 안으로 중첩하면 [math(\{a,b(((...((1)1)...)1)1)2\})]와 같은 형태가 되고, 이것이 BEAF의 일반적인 배열의 한계이다.

3.5.1. 계산 예시

  • goplexulus: [math(\{10, 100((1)1)2\}=\{10, 100(\underbrace{0, 0,...,0}_{100}, 1)2\}\approx f_{\omega^{\omega^{\omega^\omega}}}(100))]
  • boplexulus: [math(\{10, 100((2)1)2\}=\{10, 100(\underbrace{(1)(1)(1)...(1)}_{100}1)2\}\approx f_{\omega^{\omega^{\omega^{\omega^2}}}}(100))]
  • goduplexulus: [math(\{10, 100((0, 1)1)2\}=\{10, 100((100)1)2\}=\{10, 100(\underbrace{(99)(99)...(99)}_{100}1)2\}\approx f_{\omega\uparrow\uparrow5}(100))][17]
  • gotriplexulus: [math(\{10, 100(((1)1)1)2\}=\{10, 100((\underbrace{0, 0,...,0}_{100}, 1)1)2\}\approx f_{\omega\uparrow\uparrow6}(100))]


4. 배열 표기 표기법

군단 배열로 나아가기 전에, 일단 [math(\&)] 표기법에 대해 알아야 한다. [math(a\&b)]는 a에 대한 b의 배열 이라는 뜻이다. 즉, 배열을 표기하는 표기법으로써, 정의는 다음과 같다. & 표기가 얼마나 컸으면 문단 번호도 3에서 4가 되는지...
[math(a\ \&\ b=\{\underbrace{b,b,b,...,b}_a\})]
예를 들어, [math(5\ \&\ 6=\{6,6,6,6,6\})]이다.
이제 연산을 할 수 있는 문자인 X가 등장한다. n&a를 X&a로 두고 X를 연산하여 X의 연산으로 BEAF의 배열들을 나타낼 수 있게 되고, 이를 배열 구조(Array Structure)라고 한다.
  • [math(X\ \&\ a=\{a,a(1)2\})]
  • [math(X+1\ \&\ a=\{a,a,...,a(1)a\})]
  • [math(X+2\ \&\ a=\{a,a,...,a(1)a,a\})]
  • [math(2X\ \&\ a=\{a,a(1)(1)a\}=\{a,a,...,a(1)a,a,...,a\})]
  • [math(3X\ \&\ a=\{a,a(1)(1)(1)2\})]
  • [math(X^2\ \&\ a=\{a,a(2)2\})]
  • [math(X^3\ \&\ a=\{a,a(3)2\})]
  • [math(X^X\ \&\ a=\{a,a(0,1)2\})]
  • [math(X^{X+1}\ \&\ a=\{a,a(1,1)2\})]
  • [math(X^{2X}\ \&\ a=\{a,a(0,2)2\})]
  • [math(X^{3X}\ \&\ a=\{a,a(0,3)2\})]
  • [math(X^{X^2}\ \&\ a=\{a,a(0,0,1)2\})]
  • [math(X^{X^X}\ \&\ a=\{a,a((1)1)2\})]
  • [math(X^{X^{X^X}}\ \&\ a=\{a,a((0,1)1)2\})]
  • [math(X\uparrow\uparrow X\ \&\ a=\{a,a(((...((1)1)...)1)1)2\})]
이렇게 지수 탑 만으로 순식간에 BEAF의 이전 모든 단계들을 나타낼 수 있다. 그러나 X는 그 이상도 나아갈 수 있다. 테트레이션은 물론, 팬테이션, 헥세이션... 등등의 n차 연산을 모두 사용하여 [math(X\uparrow^X X)]에 다다르면, 일반적으로는 더 이상 나아갈 수 없을 것이다. 하지만 BEAF가 무엇인가? 바로 커누스 윗화살표 표기법을 확장한 연산이다. 즉, X를 다시 BEAF로 나타내서 BEAF의 배열을 BEAF의 배열로 나타내는 것이 가능해진다!

예를 들어, Goppatoth는 [math(10\uparrow\uparrow100 \& 10=\{10, 10\underbrace{((...((0, 1)1)...1)1)}_{50}2\}\approx f_{\epsilon_0}(100))]로 정의된다. 괄호 중첩 수가 100이 아니고 50인 이유는 X가 지수 하나가 올라가면 (0, 1)의 초차원 배열이 되고, X가 지수 2개가 올라가야 ((1)1)의 다중 초차원 배열이 되기 때문에, 중첩 하나당 2가 테트레이션되기 때문에 X의 지수탑이 100개라면 괄호 중첩 수는 50회가 된다.

위에서는 배열을 X로 나타냈지만, [math(10\uparrow \uparrow 100\ \&\ 10)]나 [math(\{3,3,3,3\}\ \&\ 3)]처럼 일반 수로 배열을 나타내는 것도 가능하다.[18]
  • [math(a\ \&\ a\ \&\ a=\{\underbrace{a,a,a,...,a}_a\}\ \&\ a)]
더욱 나아가서, 배열을 나타내는 배열을 다시 &로 표기해 배열을 표기하는 배열을 표기하는 배열을 만들 수도 있다.

예를 들어, triakulus는 [math(3\uparrow\uparrow\uparrow3 \& 3=3 \& 3 \&3=\{3, 3/2\}\approx f_{\phi(\epsilon_0, 0)}(3))]처럼 배열화 하여 나타낼 수 있다. 보다시피 배열이 늘어남에 따라 fgh에서 엡실론 단계에서 베블런 함수 단계를 통과한다.

4.1. 군단 배열

  • [math(\{a,b/2\}=\underbrace{a\ \&\ a\ \&\ a...a\ \&\ a}_b)]
&을 계속 사용하면, 드디어 군단 배열이 된다. 예를 들어, {10,5/2}=10&10&10&10&10={10,10,10,10,10,10,10,10,10,10}&10&10&10가 되는 것이다. 이 수는 TREE(3)보다도 훨씬 크며, SCG(n), SSCG(n)과 성장률이 비슷하다.[19]
  • [math(\{a,b,1/2\}=\{a,b/2\})]
  • [math(\{a,b,c+1/2\}=\underbrace{\{a,\{a,...\{a,b,c/2\}}_b,c.../2\},c/2\})]
이전 단계를 사용하여, 앞 배열을 늘린다.
  • [math(\{a,b/c+1\}=\{\underbrace{a\ \&\ a\ \&\ a...a\ \&\ a}_b/c\})]
이런 식으로 뒤 배열도 늘릴 수 있고, 계속 확장하여 [math(\{3,3/3,3/3,3\})]과 같이 군단 배열이 중첩된 형태도 만들 수 있다.

4.1.1. 계산 예시

  • the whopper[20]: [math(\{10, 100/2\}=\underbrace{10 \& 10 \& 10...10 \& 10}_{100}\approx f_{\theta(\Omega^{\omega}_{98})}(100)\approx f_{\theta(\Omega_\omega)}(99))]
  • big boowa: [math(\{3, 3, 3/2\}=\{3, \{3, \{3, 3, 2/2\}, 2/2\}, 2/2\}\approx f_{\vartheta(\Omega_\omega)+2}(3))]

4.2. 다중 군단 배열

다중 군단 배열은 앞에서 배열을 표기하는 배열인 군단 배열을 다시 배열로 나타내는 배열이다. 군단 배열이 배열을 나타내는 표기법 [math(\&)]를 썼듯이, 다중 군단 배열은 군단 배열을 나타내는 표기법 [math(\&\&)]를 쓴다. 당연히 &의 개수는 물론, /의 개수마저도 상상이 안가는 만큼 필요하다.
  • [math(a\ \&\&\ b=\{\underbrace{\underbrace{b,b,...,b}_a/\underbrace{b,b,...,b}_a/.../\underbrace{b,b,...,b}_a}_a\})]
[math(\&\&)]이 이전의 [math(\&)]처럼 군단 배열을 배열하는 것을 알 수 있다.
  • [math(\{a,b//2\}=\underbrace{a\ \&\&\ a\ \&\&\ ...a\ \&\&\ a}_b)]
다시 군단 배열의 군단 배열의....군단 배열을 나타낸다.
  • [math(\{a,b(1)/2\}=\{a,b\underbrace{///.../}_b2\})]
이걸 계속해서, /를 여러 개로 만들 수 있다.

4.2.1. 계산 예시

  • guapamonga: [math(10^{100} \&\& (10^{100} \& 10)=\{10, 10(/100)2\}\approx f_{\vartheta(\Omega_\omega)^{\omega^\omega}}(100))]
  • big hoss[21]: [math(\{100, 100(1)/2\}=\{100, 100\underbrace{///..//}_{100}2\}\approx f_{\psi_0(\Phi_1(0))}(100))]

4.3. 초군단 배열

이제부터는 군단 배열들을 일반화한 L 구조(L structure)로 넘어간다.
  • [math(\{L,n\}_{a,b}=\{a,b\underbrace{///.../}_n2\})]
예를 들어 [math(\{3,4///2\}=\{L,3\}_{3,4})]이다. 원래 배열 안에 있던 숫자들이 밑첨자로 빠지는 것을 알 수 있는데, 이건 L 구조의 배열 확장을 원활히 하게 하기 위함이다.
  • [math(\{L,X\}_{a,b}=\{a,b(1)/2\})]
  • [math(\{L,X+1\}_{a,b}=\{a,b/(1)/2\})]
  • [math(\{L,2X\}_{a,b}=\{a,b(1)//2\})]
  • [math(\{L,3X\}_{a,b}=\{a,b(1)///2\})]
  • [math(\{L,X^2\}_{a,b}=\{a,b(1)(1)/2\})]
  • [math(\{L,X^X\}_{a,b}=\{a,b(2)/2\})]
  • [math(\{L,X^{X^X}\}_{a,b}=\{a,b(0,1)/2\})]
  • [math(\{L,X\uparrow\uparrow X\}_{a,b}=\{a,b(((..(1)1)...)1)1)/2\})]
L 배열 안에서 X구조를 이용해 확장하는데, 이러한 양상이 &의 X 구조와 상당히 유사함을 알 것이다. 따라서 저 X 구조가 다시 군단 배열이 되고, 다중 군단 배열이 되고, 다시 L 구조가 될 수 있다.
  • [math(\{L,\{L,1\}\}_{a,b}=\{L,\{a,b/2\}\}_{a,b})]

예를 들어, bukuwaha는 [math(\{L,X^X\}_{100,100})]으로 정의되며, 전개하면 [math(\{100, 100(2)/2\}=\{100, 100\underbrace{(1)(1)...(1)}_{100}/2\})]가 된다. fgh로 근사하려면 접근 불가능 기수를 이용해야 하며, 대략 [math(f_{\psi(I^{I^\omega})}(100))]이다.

4.3.1. L2 이상의 초군단 배열

이미 빨랐지만 L2부턴 극도로 빠른 성장률을 보이게 된다. L 구조의 원소 갯수가 늘어나 다변수 초군단 배열이 되고,[22] 이게 모두 L 되면서, L이 여러 개 모이면 L2, L3처럼 L 뒤에 숫자가 붙고 계속 나아가면 LL이 되고 계속해서 뒤에 L을 L개 이상으로 여러 개 붙이는데 이렇게 계속하면 BEAF의 성장 한계치에 도달한다. L 탑을 쌓는 즉 재귀하는 것은 크기 대비 크게 성장하지 않는다. L2 이상의 배열은 성장률이 워낙 빨라 fgh 근삿값이 정확하게 알려져 있지 않다. 다만 fgh 가산서수 세계의 최강, 최후의 함수인 Tar 함수보다는 느리게 증가한다.
  • goshiomity: [math(\{L2, 100\}_{100, 100}=\{L, L, L, L..../2\}_{100,100}=\{a,b(2){\backslash}2\}=\{100, 100\underbrace{\backslash\backslash...\backslash}_{100}2\})]
  • Big bukuwaha: [math(\{L2, Bukuwaha\}_{100, 100}=\{100, 100\underbrace{\backslash\backslash...\backslash}_{bukuwaha}2\})]
  • meameamealokkapoowa: [math(\{L100, 10\}_{10, 10})]
  • meameamealokkapoowa oompa: [math(\{\{L100, 10\}_{10, 10}\&L, 10\}_{10, 10})]: 바로 위의 meameamealokkapoowa에 해당하는 만큼 L을 배열한 값으로 L 탑을 쌓은 값이다. 현재 BEAF 상에서 정의된 가장 큰 수이다.

5. 성장률

※ 각 단계별 fgh 성장률이다.
  • 선형 배열: 최대 [math(f_{\omega^\omega}(n))]
    • 3 entry array: [math(\{a, b, c\}=f_{c+1}(b))][23]
    • 4 and over entry array: [math(\{a, b, c, d, e..., \}=f^{b-1}_{...+\omega^2(e-1)+\omega(d-1)+(c-1)}(a))][24]
  • 차원 배열: 최대 [math(f_{\omega^{\omega^{\omega}}}(n))]
    • 1차원: [math(\{a_1, a_2, a_3, ..., a_m(1)b_1, b_2, ...,b_n \}=f^{a_2-1}_{(\omega^{\omega+n-1})(b_n-1)+...+(\omega^{\omega+1})(b_2-1)+(\omega^{\omega})(b_1-1)+\omega^{m-3}(a_m-1)+...+\omega^2(a_5-1)+\omega(a_4-1)+(a_3-1)}(a_1))]
    • 2차원 이상: [math(\{a, b\underbrace{(e)(e)...(e)}_{d}c \}=f^{b-1}_{(\omega^{\omega^ed})(c-1)}(a))]
  • 초차원 배열: [math(f_{\omega^{\omega^{\omega^2}}}(n))]
    • 하이퍼 초차원 배열: [math(f_{\omega^{\omega^{\omega^{\omega}}}}(n))]
    • 다중 초차원 배열: [math(f_{\epsilon_0}(n))]
  • & 표기법
    • [math(X\uparrow \uparrow X^2)]: [math(f_{\zeta_0}(n))]
    • [math(X\uparrow \uparrow X^3)]: [math(f_{\eta_0}(n))]
    • [math(X\uparrow\uparrow X^X)]: [math(f_{\varphi_\omega(0)}(n))]
    • [math(X\uparrow \uparrow \uparrow X)]: [math(f_{\Gamma_0}(n))]
    • [math(X\{X\}X)]: [math(f_{\varphi(\omega,0,0)}(n))]
    • [math(\{X,X(1)2\})]: [math(f_{\psi(\Omega^{\Omega^\omega})}(n))][25]
  • 군단 배열: [math(f_{\psi(\Omega_\omega)}(n))]

6. 오류

사실 BEAF의 [math(\&)] 표기법을 비롯한 군단 배열 이상의 모든 배열들은 모두 잘못 정의되었는데, 그 이유는 다중 초차원 이하 배열들이 &를 사용함으로써 의미가 번복되기 때문이다.

예를 들어, [math(10^2 \& 10)]이라 하면, 102 파트를 먼저 계산할 경우 [math(100 \& 10)]이 되는데, 이는 [math(\{10,100(1)2\})][26]가 된다. 그러나 앞의 10 자체를 하나의 배열로 보고 X를 이용한 계산대로 하면 [math(\{10,10(2)2\})], 즉 xappol이 되어 훨씬 큰 수가 된다.
X가 배열 정도 되면 차이는 더더욱 두드러지는데, [math(\{10,10(1)100\}\ \&\ 10)]같은 경우 원래 정의대로라면 [math(\{\underbrace{10,10,10,....,10}_{\{10,10(1)100\}}\})], 즉 10이 {10,10(1)100}개가 되어야 한다. 하지만 실제 BEAF에서는 [math(\{10,10(1)100\})]라는 배열에 대해서 10을 배열해야 하는데, 위에서 보았듯이 10이 {10,10(1)100}개 있는 것과 10을 {10,10(1)100}에 해당하는 만큼 배열하는 것은 엄청난 차이가 있다. 이때 후자의 경우 gossablossla라 부르고, 크기는 대략 [math(f_{\psi(\Omega^{\Omega^\Omega}2)}(100))], TREE(3)은 물론 SSCG(3)보다도 큰 값이 나오지만[27], 전자는 약 [math(f_{\omega^\omega}(f_{\omega^\omega 99}(100)))]으로 {10, 10(1){10, 10(1)100}}[28]조차 넘지 못한다. 그레이엄 함수로 따라잡기에는 {4,4,4,4}는 물론, {n,n,n,...n}(n의 개수가 n개)에서 n의 값을 다시 {4,4,4,4}로 넣는 것보다도 한참 커서 못 따라잡겠지만 그래도 무려 피쉬 수의 초반부와 비교해야 할 정도로 저 수와는 비교도 안되게 작은데, 실로 엄청난 오차가 발생한다.

이렇듯 & 표기법을 사용하면 규칙 사이에 충돌이 발생하게 되어 모순이 일어나 &를 사용할 수 없다. 그럼 그냥 a를 b에 해당하는 만큼 배열하는 것으로만 따지지 할 수도 있겠지만[29][30] 따라서 &로 정의되는 군단 배열, 군단 배열로 정의되는 다중 군단 배열...등등의 모든 상위 배열들이 연쇄적으로 잘못 정의되게 된다. 그렇기 때문에 많은 사람들은 BEAF 대신 BEAF와 비슷하나 이해하기가 어렵지만, 잘 정의된 BAN, SAN 같은 배열들을 이용한다. 이는 BEAF의 최상한 값보다 훨씬 큰 수를 정의할 수 있는데, BEAF보다 정의가 복잡하고, 아까 말한대로 BEAF가 잘못 정의되었기 때문에 BEAF의 한계치 보다 더 큰 값들을 정의할 수 있다. 사실 BAN은 BEAF가 잘 정의된 숫자의 한계(엡실론 단계)훨씬 너머 까지 수를 정의 할 수 있기는 하지만 BEAF가 원래 의도한 숫자의 한계에는 한참 미치지 못하고 SAN으로는 상당히 큰 숫자를 나타낼 수 있긴 한데 이것도 정의가 확실하지 않다. 그래서 사실 굳이 따지면 그냥 FGH로 판단하는게 가장 확실할 것이다. 다만 FGH에서 omega fixed point 이상의 숫자들은 rathjen의 함수로 표기하는데 꽤나 이해하기 어렵다. googology 사이트에서도 이 부분 부터는 잘 못 기술된 부분이 많다.

물론 단순히 큰 숫자를 보고 싶다면 그냥 바로 바쁜 비버 함수 항목부터 보면 된다. 계산 가능한 함수로 아무리 별의별 쇼를 해봐야 계산 불가능 함수에는 압도될 수 밖에 없다. 다만 현재 정의된 계산 가능한 함수 범주에서도 로더의 수[31]와 같이 충분히 빠르게 증가하는 함수가 존재한다.

사실 BEAF가 잘못 정의된 가장 큰 이유는 원 제작자인 조나단 바우어가 다중 초차원 배열 이상의 배열 정의를 명확히 하지 않았던 이유이기도 하다. 수학적으로 엄밀하지 못한 정의를 했거니와, 개념조차도 제대로 정립해두지 않았음에도 불구하고, 이를 인지하지 못하고 & 표기법이나 군단 배열의 강함을 자기 마음대로 추측하거나 Googology에서 베껴와[32] 유튜브에 올리는 사람들이 꽤 있다.[33] BEAF에서 실질적으로 의미가 있는 부분은 다중 초차원 배열까지니 그 이후부터는 걸러서 보도록 하자. 제대로 정의된 큰 수는 TREE(3)이나, SCG(13), 라요 수, 거대수 정원수정도다.

7. 관련 항목



[1] 이 수치는 G'(1)=[math(3 \uparrow \uparrow 3=3^{27})]로 가정하고 그레이엄 함수와 같은 방식으로 G'(n)을 정의했을 때 G'(64)와 동일하며, G(63)보다는 훨씬 크다. 그 단계에서는 조금이라 할 지라도 화살표 몇개 추가해봐야 G 함수로는 비교가 무의미해진다.[2] 이 수치는 2개의 구골 사이에 화살표 4개 넣고 64회 재귀한 수와 비슷한 값을 가진다.[3] a, b, c는 커누스 윗화살표 베이스이고, d 이후로는 c의 확장으로 추가되는 배열이기 때문에 배열에 숫자가 3개 이하인 경우와 4개 이상인 경우 규칙이 다르다.[4] 이 규칙으로 인해 배열에 숫자가 4개 이상인 경우 a=2인 경우 배열이 궁극적으로 {2, 2}가 되어 그 값은 항상 4가 되며, a가 3 이상이어야 유의미하게 숫자가 커지는 배열을 만들 수 있다. 3개 이하에서는 a가 b 자리로 복제될 일이 없기 때문에 a=2여도 상관없다.[5] 그레이엄 수와 성장률이 같은 배열이다. 그레이엄 수는 {4,65,1,2}로 근사된다. 이 수는 G(99)보다는 크고, G(100)보다는 작다.[6] giggol에 접두사 bi-를 붙인 수이다. 첫 음절의 모음이 변함에 따라 배열의 맨 마지막 수가 바뀌는데, 모음이 oo이면 1, i이면 2, a이면 3, ee이면 4, i이면서 두번째 자음이 단자음이면 5, o이면 6, a이면서 두번째 자음이 단자음이면 7이 된다. 또 100 앞의 10의 개수에 따라 접두사 b-, tr-, quadr-, quint- 등이 붙는다.[7] 후술할 군단 배열로는 4&10으로 쓸 수도 있다.[8] 10을 배열한 갯수에 따라 decal 앞에 접두사를 붙인다. 위의 general 또한 tetradecal로 적을 수도 있다.[9] googol에서 두번째 음절의 자음에 수를 나타내는 접사 b-, tr- 등을 붙일 때마다 배열의 개수가 증가한다. 궁극적으로 배열이 100개가 되면 아래의 gossol이라는 별도의 이름을 붙인다.[10] 발음이 모쏠인데, 위의 gossol에 접두사 mi-를 붙인 것이다. 이후 배열 수 자체에 배열의 갯수가 늘어날 때마다 gossol에 bi-, tri- 따위의 접두사를 붙인다.[11] 이 배열은 피쉬 함수 3과 성장률이 동일하다. 100 대신 63을 대입하면 피쉬 수 3과 비슷한 값이 된다.[12] 이후 (1)의 중첩 개수에 따라 접두사 -tri, -tetru 등이 붙는다.[13] 이후 차원이 올라갈 때마다 gossol에 -colo, -tero, -peto 등의 접두사가 붙는다.[14] 이후 n차원의 배열에 대해 fgh로 [math(f_{\omega^{\omega^n}}(10))]에 근사한다.[15] 위의 gongulus에 googol 파생 접두사를 붙이는 것과 동일한 방식으로 확장할 수 있다. 모음에 따라 소괄호 안의 배열의 맨 마지막 수가 올라가고, 맨 앞에 접두사 bi-, tri- 등을 붙이면 소괄호 내의 배열의 갯수가 증가하며 아래의 하이퍼 초차원 배열로 넘어간다.[16] 이후 소괄호 내의 0의 수가 n개이면 fgh로 [math(f_{\omega^{\omega^{\omega^n}}}(100))]에 근사한다.[17] goplexulus에서 첫 번째 음절의 자음에 -bi, -tri 등이 붙으면 맨 안쪽 괄호의 수가 늘어나며, 두 번째 음절의 자음에 -du, -tri 등이 붙으면 중첩 수가 늘어난다. 이때 중첩을 한번 하면 초차원 배열이, 중첩을 두번 해야 다중 초차원 배열이 된다. 따라서 중첩 수가 n이면 fgh에서 오메가의 테트레이션 횟수는 2n이 된다.[18] 후술하겠지만 이것이 BEAF가 잘못 정의된 원인이다.[19] 물론 조금이라도 차이가 있다면 저 단계에서는 단순히 몇 배 차이도, TREE(n)에서 n의 값을 TREE(3)만큼 작게 하냐 크게 하냐의 차이도 아니다.[20] 버거킹의 햄버거 와퍼에서 따온 이름 맞다. 와퍼가 그만큼 맛있다는 뜻이 아니다.[21] 제작자의 할아버지의 별명에서 따왔다고 한다.[22] BIGG가 [math(\{L,X,2\}_{200,200})]에 근사하므로, 여기에 해당된다.[23] 배열에 숫자가 3개만 있을 때는 a의 값은 성장률을 유의미하게 변화시키지 않는다.[24] 배열에 숫자가 4개 이상인 경우 b 및 c 이후 위치에 a의 값이 복제되면서 a의 값 역시 중요해진다. 물론 b 및 c 이후 배열의 숫자에 비해서는 현저히 성장률이 낮다.[25] TREE(3)의 근사치[26] goobol이라 부른다.[27] TREE(n)은 {n, n(1)2}에 해당하는 만큼 배열한 것과 비슷한 성장률로 gossablossla와 비슷해지기는 어렵지만 성장률이 군단 배열 수준인 SCG(n)보다는 성장률이 낮아 적당히 작은 n에 대해 SCG(n), SSCG(n)으로 근사할 수 있다.[28] gossolplex. BEAF상에서 gossol 다음으로 정의된 수다.[29] 물론 지수 탑만 해도 위에서부터 계산하냐 밑에서부터 계산하냐에 따라 오차가 크다. 위에서부터 계산하는 게 바른 계산법이다. 다만 이쪽은 워낙 차이가 큰 데다가 마땅히 둘 중 하나만 올바르다는 정의가 성립되지 않았기 때문에 문제가 된다.[30] 아니면 그냥 문자 X로 나타내고 X의 값을 알려주면 된다[31] 이 수는 현재까지 정의된 계산 가능한 수 가운데 가장 큰 수로, fgh의 끝판왕인 타르 함수보다 빠르게 증가한다.[32] Googology에서도 BEAF가 잘못 정의되었다고 설명하였다.[33] 특히, 현재까지 잘 정의된 가장 큰 수인 거대수 정원수보다 크게 잘못 정의된 오블리비언, 어터 오블리비언이 더 크다고 하는 영상도 꽤 있다.

분류