김 테이블은 수학의 표준 공리 시스템에 종료 표시되지 않은 프로그램의 예를 제공 ZFC 하나가 매우 큰 추기경 공리를 가정 할 때 종료 않지만.
소개
고전 김 테이블 세트를 기본으로 고유의 유한 대수 있습니다 및 작업 만족 신원 과 에 와 .An
{1,...,2n}
*
x * (y * z)=(x * y) * (x * z)
x*1=x+1
x<2n
2n*1=1
클래식 김 테이블에 대한 자세한 정보는 Patrick Dehornoy의 Braids and Self-Distributivity 책에서 찾을 수 있습니다.
도전
1*32
고전적인 Laver 테이블에서 계산 하고 n
with를 찾으면 정확하게 종료 되는 가장 짧은 코드 (바이트)는 무엇입니까 ? 다시 말해, 프로그램은 with를 찾은 경우에만 종료되고 그렇지 않으면 영원히 실행됩니다.1*32<2n
n
1*32<2n
자극
순위에 랭크 추기경 (또한 I3-추기경라고는) 매우 큰 무한대의 수준 과 하나가 순위에 랭크 추기경의 존재를 가정하면, 다음 하나 하나를하지 않는 경우보다 더 많은 정리를 증명할 수있다 순위 대 추기경의 존재를 가정합니다. 랭크 랭킹 추기경이 있으면 클래식 Laver 테이블 이 있습니다. 그러나 ZFC 에는 알려진 증거가 없습니다 . 또한, 가장 작은 곳 은 Ackermann 함수 가 빠르게 증가하는 함수이므로 매우 큰 숫자 인 것으로 알려져 있습니다. 따라서 그러한 프로그램은 매우 오랫동안 지속됩니다.An
1*32<2n
1*32<2n
n
1*32<2n
Ack(9,Ack(8,Ack(8,254)))
Ack
프로그램이 표준 axiomatic 시스템 ZFC를 사용하여 종료되는지 알지 못하지만 프로그램이 결국 더 강한 axiomatic 시스템, 즉 ZFC + I3에서 종료된다는 것을 알 수 있도록 프로그램을 얼마나 짧게 작성할 수 있는지 알고 싶습니다. 이 질문은 Scott Aaronson의 최근 게시물 에서 Aaronson과 Adam Yedidia가 8000 개 이하의 상태로 튜링 머신을 구성하여 ZFC가 튜링 머신이 종료되지 않는다는 것을 증명할 수는 없지만 큰 기본 가설을 가정 할 때 종료되지 않는 것으로 알려져 있습니다.
클래식 김 테이블을 계산하는 방법
김 테이블을 계산할 때 대수에 있다는 사실 사용하는 것이 편리하다 , 우리가 모든 의를 .An
2n * x=x
x
An
다음 코드는 클래식 Laver 테이블을 계산합니다 An
# table (n, x, y)는 A n 에서 x * y를 반환합니다. 테이블 : = 함수 (n, x, y) x = 2 ^ n이면 y를 반환합니다. elif y = 1은 x + 1을 반환합니다. 그렇지 않으면 반환 테이블 (n, table (n, x, y-1), x + 1); fi; 종료;
예를 들어 입력 table(4,1,2)
은을 반환 12
합니다.
에 대한 코드 table(n,x,y)
는 다소 비효율적이며 합리적인 시간 내에 Laver 테이블에서만 계산할 수 있습니다 . 운 좋게도, 기존의 Laver 테이블을 계산하는 알고리즘은 위에 주어진 것보다 훨씬 빠릅니다.A4
Ack(9,Ack(8,Ack(8,254)))
가 첫 번째 행에 기간이 32 인 첫 번째 테이블의 하한 임을 증명하지 않았습니까 1*16 < 2^n
?
table(n,x,y)
상태가 있으며 상수와 외부 루프를 설정하는 데 25 ~ 30 개의 상태가 필요하다고 생각합니다. esolangs.org에서 찾을 수있는 유일한 직접 TM 표현은 esolangs.org/wiki/ScripTur 이며 실제로 그렇게 골프가 아닙니다.