람다 미적분의 "적용 순서"및 "정상 순서"


14

적용 순서 : 다음 과 같이 함수 자체를 평가하기 전에 항상 함수의 인수를 완전히 평가하십시오.

(λx.x2(λx.(x+1)  2)))(λx.x2(2+1)) (λx.x2(3)) 32  9

정상 순서 : 식은 다음 과 같이 외부에서 축소됩니다.

(λ엑스.엑스2(λ엑스.(엑스+1) 2)) (λ엑스.(엑스+1)   2)2 (2+1)2 2  9

하자 미디엄=(λ엑스.y (λx.(x  x) λx.(x  x)))

적용 순서, 무한 루프 에서 정상 순서, M y에서 왜?M
My


1
그것들을 전혀 평가 해 보셨습니까? 확실하지 않은 첫 번째 또는 두 번째 경우입니까?
Karolis Juodelė

@ KarolisJuodelė : 1st
URL87

1
람다 식을 괄호로 작성하여 첫 번째 람다 식의 끝과 인수의 시작을 표시 Let M = (λx.y) ((λx.(x x)) λx.(x x))
해서는 안됩니다

답변:


7

λ x 이므로 무한 루프 입니다. ( x x ) λ x . ( x x ) λ x . ( x x ) λ x . ( X , X ) 공지 사항은 λ X . ( x(λ엑스.와이 (λ엑스.(엑스  엑스) λ엑스.(엑스  엑스)))

λ엑스.(엑스  엑스) λ엑스.(엑스  엑스)λ엑스.(엑스  엑스) λ엑스.(엑스  엑스)
는 인수를 두 번 쓴다.λ엑스.(엑스  엑스)

15

가 감소하는 기간이다 K y는 상수 함수 λ X . y (항상 인수를 무시하고 y 반환 ) 및 Ω = ( λ x . ( x(케이와이Ω)케이와이λ엑스.와이와이Ω=(λ엑스.(엑스엑스)λ엑스.(엑스엑스))ΩΩΩ

Ω미디엄미디엄Ω미디엄Ω

케이와이케이와이(케이와이Ω)와이케이와이와이

이 경우는보다 일반적인 현상을 보여줍니다. 적용 차수 축소는 항이 강력하게 정규화되어있는 경우에만 정규 형태를 찾는 반면, 정규 차수 감소는 항상 정규 형태를 찾습니다. 이는 적용 순서가 항상 전체 인수를 먼저 평가하므로 인수가 사용되지 않는 것으로 판명 될 기회가 없기 때문에 발생합니다. 반면 정상 순서는 인수를 가능한 한 늦게 평가하므로 인수가 사용되지 않는 것으로 판명되면 항상 승리합니다.

(반면, 인수가 사용되지 않는 것이 상대적으로 드물기 때문에 실제로 적용 순서가 더 빠르다는 점이 있습니다. 반면에 인수를 여러 번 사용하는 것이 일반적이며 적용 순서에 따라 인수는 한 번만 평가됩니다. order는 인수가 사용 된 횟수만큼 자주, 0, 1 또는 여러 번 평가됩니다.)


케이와이와이
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.