プログラミング言語意味論(2012年度)テスト解答例(一部)
Ⅰ
(1)
(λx y. x y (λu v. v)) (λx y. y) (λx y. x)
(λy. (λx y. y) y (λu v. v)) (λx y. x)
(λx y. y) (λx y. x) (λu v. v)
(λy. y) (λu v. v)
λu v. v
(2)
(λa b. b a) (λf x. f (f x)) (λf x. f (f x))
(λb. b (λf x. f (f x))) (λf x. f (f x))
(λf x. f (f x)) (λf x. f (f x))
λx. (λf x. f (f x)) ((λf x. f (f x)) x)
λx y. (λf x. f (f x)) x ((λf x. f (f x)) x y)
λx y. (λy. x (x y)) ((λf x. f (f x)) x y)
λx y. x (x ((λf x. f (f x)) x y))
λx y. x (x ((λy. x (x y)) y))
λx y. x (x (x (x y)))