답변:
"동일한 가치"를 고려하는 데는 약간의 자유가 있습니다. "동일한 값"이 "관측 적으로 동등한"을 의미하는 경우 그러한 알고리즘이 없음을 보여 드리겠습니다. 나는 건축 미적분학 조각, 즉 Gödel의 System T (간단히 미적분, 자연수 및 원시 재귀)를 사용하므로 인수는 이미 훨씬 약한 미적분학에 적용됩니다.
숫자 주어지면 , ¯ n 은 그것을 나타내는 대응하는 숫자, 즉 s u c c ~ 0 의 n 응용이라고 하자 . 튜링 mahcine M이 주어지면 , ⌈ M ⌉ 은 적당한 방식으로 M 을 인코딩하는 숫자가되게하십시오 .
말 두 폐쇄 용어 것을 된다 당량 , 기록 t ≃ 유 때 모든 N ∈ N , t 과s 둘 다 같은 숫자로 정규화합니다 (우리는 강력하게 정규화되어 있기 때문에 숫자로 정규화합니다).
우리가 알고리즘을 가지고 있다고 가정 해 봅시다. 형의 닫힌 용어가 주어지면 → n a t 는 최소한의 동등한 항을 계산합니다. 그러면 다음과 같이 Halting 오라클을 해결할 수 있습니다.
기말있다 모두,되도록 N ∈ N 모든 튜링 기계 M , S는 ( ⌈ M ⌉ , ¯ N ) 로 정규화 ¯ 한 경우, T의 내부가 정지 N 단계 그렇지 않으면 ¯ 0으로 정규화됩니다 . 고정 된 수의 단계 n 에 대한 튜링 머신의 시뮬레이션 은 원시 재귀 이기 때문에 이것은 잘 알려져있다 .
유한 한 많은 폐쇄 용어있다 동등한 최소 조건한다 λ X : N t는 . . 우리의 최소화 알고리즘은 λ x : n a t을 주면 그중 하나를 반환합니다 . 이며, λ x : n a t 일 수도 있습니다.실제로 0 은 유일한 최소 용어입니다. 이 모든 것이 중요하지 않습니다. 중요한 것은 λ x : n a t 와 동일한 최소 항이 무한히 많다는 것입니다 . .
이제 어떤 기계 주어지면 u : = λ x : n a t 항을 고려하십시오 .M 이 영원히 실행 되면 u ¯ n 은 모든 n에 대해 ¯ 0으로 정규화되고 λ x : n a t와 같습니다 .
동등성 개념이 약한 (예 : 환원성) 작동하는 주장을 아는 것이 좋습니다.
Andrej가 말했듯이, 한 용어를 다른 용어로, 확장 적으로 같은 용어로 바꾸도록 허용하면 문제를 결정할 수 없습니다. 그러나, 당신은에 관심이있을 수있는 최적의 공유 다음과 같은 의미에서, 표현의 : 감소를 주어 그것은 분명 그 용어의 발생 유 할 수 있습니다 에서 공유 메모리 에 적용되며, 하나에 적용된 모든 축소는 다른 하나에 적용될 수 있습니다.
이러한 의미에서 유형이 지정되지 않은 용어를 최적의 방식으로 줄이는 방법은 가능한 한 공유를 줄이는 방법으로 알려져 있습니다. 이에 대한 설명은 https://stackoverflow.com/a/41737550/2059388 이며 관련 인용은 J입니다. Lamping 's 최적의 람다 미적분학 감소를위한 알고리즘 . 형식화되지 않은 미적분학에 대한 정리가 CIC로 확장 될 수 있다는 것은 의심의 여지가 없습니다.
다른 관련 질문은 유형 변환을 수행 할 때 지울 수있는 유형 정보의 양 또는 실제로 효과적인 연구 분야 인 효율적인 변환을 수행하는 방법입니다 (예 : Mishra-Linger 's thesis 참조) .
코디의 대답에 닿은 관점을 고집합시다.
아시다시피, 다른 λ- 말단에 해당 하는 가장 작은 말단 을 찾는 문제는 그것을 계산하는 알고리즘이 있더라도 실제로 흥미롭지는 않습니다. 사실, 대부분의 프로그램은 당신이 쓸 λ -calculus (또는 무엇이든의 미적분학 λ 는 변하지 않는다) 정상적인 형태로 이미, 또는 적어도 머리 정상적인 형태에서, 그들이 당신이 설명하는 의미에서 그들의 "작은"이미 그래서. 게다가, "작은"이라는 것이이 질문 에서 논의 된 것처럼 더 효율적이라는 의미는 아닙니다 .
따라서 지적하는 문제 (정규화로 인해 크기가 커짐)는 함수를 인수에 적용하고 결과를 얻기 위해 일반 형식으로 축소하려는 경우에만 실제 문제입니다. 예를 들어, 이진 문자열 에서 함수 f 를 계산하는 용어 이 있다고 가정하십시오 . 그럼 당신은 M이 여기서l(|x|)은 가장 왼쪽에있는 축소를 사용하는 축소 단계 수이며, CoC에서는 항상 정상적인 형태를 찾습니다 (CoC에서는 항상 존재하지만 내가 말하는 것은 유형이없는 경우에도 적용됩니다). 현재 가정, 또한, 그L(N)=O(NK)일부에 대한 상수K. f가 다항식 시간 계산 가능하다는 결론을 내릴 수 있습니까?
이 같은 구문은 반대로 순진 직관에, 그것을 증명하기 위해 사용될 수있다, 위의 질문에 대한 대답은 참으로 '예 : 정상적인 형태로 왼쪽 최 외곽 단계의 수는 이다 , 합리적인 가격 측정도 크기 폭발 때문에 경우 실제로 다음과 같은 동일한 계산을 나타내는 다른 방법이 있습니다 (선형 명시 적 대체 사용).
이 모든 것은 Accattoli와 Dal Lago의 논문 "베타 감소는 변하지 않는다"(LICS 2014)에 설명되어 있습니다 (저는 최신 저널 버전이 있다고 생각합니다).