Как я могу выразить следующую функцию с помощью лямбда-члена?
f(n) = T if n != 0. F if n = 0.
n обозначает число Черча.
Я знаю, что 0 := λf.λx.x, где λx.x — тождественная функция, а все остальные натуральные числа могут быть выражены как n := λf.λx.f (f ... (f x)), которое содержит f в n раз больше чем 0-член. Например. 3 := λf.λx.f (f (f x)).
Но как я могу получить действительный λ-член для функции выше? Думаю, мне тоже нужен y, чтобы получить T/F. Следовательно, я могу выразить число n через λf.(λxy.fxy), верно? А как же F и T? Является ли следующее правым λ-термом для указанной выше функции? λf.(λxy.fxy(yFT)) где T=λxy.x и F=λxy.y?