문제

첫 번째 질문 : 람다 미적분에서 무료 (언 바운드 된) 변수를 제거하고 바운드 변수 만 허용하면 전원이 줄어들지 않으려면 어떻게해야합니까?

두 번째 질문 : 위에서 주어진 명제가 정말 사실입니까?Lambda Calculus sans 무료 변수가 실제로 튜어링됩니다.

도움이 되었습니까?

해결책

Untelped Lambda Calculus를 언급하고 있다고 가정합니다.

그렇다면 $ \ newcommand {\nnum} [1] {\ ulcorner # 1 \ urcorner} \nnum {n} $ 의 교회 숫자 자연스러운 여성 클래스="수학 용기"> $ n $ .

폐쇄 된 용어 (즉, 자유 변수없이) $ TM $ 이 존재하는 것으로 알려져 있습니다. $$ tm \ \ num {i} \ \ num {n} \ _ _ {\ beta \ eta} \ \nnum {m} $$ IF, $ i $ -TH 튜닝 머신 (일부 표준 열거 형식)으로 입력 $ n \ \ mathbb n $ (평소처럼 인코딩) $ m $ 을 출력으로 반환합니다.

실제로 $ tm $ 은 람다 미적분에서 표준 "프로그래밍"운동입니다. 이를 위해서는 기호의 쌍 또는 쌍 쌍의 ... (일명 A 카닉 목록)으로 테이프를 나타낼 수 있습니다. 그런 다음 테이프를 발전시키는 "스테핑"서브 루틴과 TM 상태를 기록 할 수 있습니다. 마지막으로, 스텝핑 서브 루틴은 중지 상태에 도달 할 때까지 호출됩니다. 이 마지막 단계는 $ y $ 과 같은 고정 점 결합기를 사용하여 달성 할 수 있습니다.

튜링 머신을 시뮬레이션 할 수 있기 때문에 우리는 완전성을 튜링합니다.


대체 증거, (내 의견에서) 실제로 전체 세부 사항으로 실제로 수행하기가 쉽습니다 : 일반적인 재귀 적 함수가 $ \ lambda $ 일 수 있음을 증명하십시오. 닫힌 람다 용어. 이를 위해 일반 재귀 기능 정의에 대한 유도로 진행하십시오.

실제로, 폐쇄 된 용어를 목표로하지 않더라도,이 프로그래밍 운동에서는 자연스러운 방식으로 폐쇄 된 것을 얻을 수 있습니다. 결국 프로그래밍을 사용하면 미리 선언되지 않은 변수가 필요하지 않을 때

일반적인 재귀 기능은 튜링 머신에 의해 계산 될 수있는 것과 정확히 있기 때문에 닫힌 람다 미적분에 대한 완전성을 얻을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 cs.stackexchange
scroll top