답변:
실제로하고 싶을 수도 있고 람다 미적분법으로 직접 표현할 수없는 것들이 몇 가지 있습니다.
SF 미적분학이 예입니다. 그 표현력은 뉴스가 아닙니다. 이 논문의 흥미로운 부분 (슬라이드에는 표시되지 않음)은 그 뒤에있는 범주 이론입니다. 당신이 좋아하는 일을 쓸 수 있도록 - SF의 수학은 함수가 인수의 표현을 검사 할 수 혀짤배기 구현과 유사하다 (print (lambda (x) (+ x 2)))
⟹ "(lambda (x) (+ x 2))"
.
또 다른 중요한 예는 Plotkin의 평행 또는 입니다. 직관적으로 말하면, 람다 미적분학이 순차적이라는 일반적인 결과가 있습니다. 두 개의 인수를 취하는 함수가 먼저 평가하기 위해 하나를 선택해야합니다. or
( or
⊤ ⊥) ⟹ ⊤
, ( or
⊥ ⊤) ⟹ ⊤ 및 or
⊥ ⊥ ⟹ ⊥ (여기서 ⊥는 종료되지 않은 용어이고 ⊤는 종료 용어 임) 와 같은 람다 용어를 쓰는 것은 불가능합니다 . 병렬 구현은 각 축소의 한 단계를 만들고 인수 중 하나가 종료 될 때마다 중지 할 수 있기 때문에 이것을 "병렬"이라고합니다.
람다 미적분에서 할 수없는 또 다른 것은 입력 / 출력입니다. 추가 프리미티브를 추가해야합니다.
물론, 이러한 모든 예는 기본적으로 람다 항을 데이터로 나타내는 하나의 간접 레벨을 추가하여 람다 미적분학으로 표현할 수 있습니다. 그러나 모델이 덜 흥미로워집니다. 모델링 된 언어의 함수와 람다 추상화 간의 관계가 손실됩니다.
질문에 대한 답변은 "계산"및 "표현"을 정의하는 방법에 따라 다릅니다. 반면 에 sclv가 언급 한 LtU 의 스레드 는 다양한 용어의 잘못 정렬 된 정의로 인해 서로 과거를 이야기하는 사람들로 구성됩니다.
구별은 확실히 계산 능력의 하나가 아니며, 고려중인 모든 시스템은 Turing-equivalent입니다. 문제는 단지 Turing-equivalence만이 표현의 구조 또는 의미에 대해 아무 말도하지 않는다는 것입니다. 이를 위해 복잡한 인코딩이나 사소한 초기 상태가 필요한 매우 미니멀 한 계산 모델에서 시스템 이 보편적 인 계산이 가능한지 또는 누군가가 시스템을 해석하여 보편적 인 환상이 만들어 지는지 확실하지 않을 수도 있습니다. . 예를 들어, 2- 상태, 3- 기호 튜링 기계, 특히 Vaughan Pratt가 제기 한 문제에 관한 이 메일 링리스트 토론을 참조하십시오 .
어쨌든 그려진 차이점은 다음과 같습니다.
튜링 동등성은 시스템이 계산 가능한 기능에 대한 세 번째 기준을 충족한다는 것을 암시하지만, 공식적인 논리 시스템이나 프로그래밍 언어 (실제로 다른 정도)에서 우리가 가장 먼저 관심을 갖는 기준입니다.
그것은 매우 비공식적 인 설명이지만, 핵심 아이디어는보다 정확하게 설명 될 수 있습니다. 위에서 언급 한 LtU 스레드는 유사한 라인을 따라 기존 작업에 대한 몇 가지 참조 를 찾을 수 있습니다 .
Schönfinkel의 조합 논리와 Church의 λ- 미적분은 초기에 논리적 추론의 추출 된 추상화로 고안되었으며, 따라서 그들의 구조는 논리적 추론에 매우 깔끔하게 매핑되며 그 반대도 마찬가지입니다. 그들은 또한의 가정 수행 extensionality ETA를 감소 규칙에 의해 기술 등을, : λx. f x
어디 x
에서 발생하지 않습니다 f
, 단지에 해당 f
혼자.
실제로, 확장 성의 매우 엄격한 개념은 너무 제한적일 수 있지만, 제한되지 않은 강렬 성은 하위 표현에 대한 국소 추론을 어렵거나 불가능하게 만듭니다.
SF- 미적분은 수정 된 결합 조합 미적분으로, 기본 연산으로 제한된 형태의 강렬 분석을 제공합니다. 부분적으로 적용되는 표현은 해체 할 수 있지만 기본 값이나 정규화되지 않은 표현은 해체 할 수 없습니다. 이것은 ML 스타일 프로그래밍 언어 나 Lisps에서 볼 수있는 매크로와 같은 패턴 매칭과 같은 아이디어에 잘 맞지만, "intensal"용어를 평가하기위한 인터프리터를 효과적으로 구현하지 않으면 SK- 또는 λ- 미적분학에서는 설명 할 수 없습니다.
요약하자면, SF- 미적분학은 SF- 미적분학 해석기를 구현하는 것이 가장 가능성있는 표현이라는 의미에서 λ- 미적분학으로 직접 표현 될 수 없으며, 그 이유는 근본적인 의미 론적 차이입니다. 구조, 또는 외부 행동에 의해 순전히 정의 되는가?
배리 제이의 SF 미적분학은 그것이 적용되는 용어의 구조를 조사 할 수 있는데, 이는 기능하지 않습니다. 람다 미적분학과 전통적인 조합 논리는 순전히 기능적이므로 그렇게 할 수 없습니다.
순도를 위반하는 작업을 수행하는 람다 미적분의 많은 확장이 있으며, 대부분 상태, 컨트롤 (예 : 연속을 통해) 또는 논리 변수를 추가하는 등 재 작성 전략을 어느 정도 수정해야합니다.