что лямбда-выражение не syntacticly правильно, я думаю, что ты хотел написать:
(λx.λy.y x) z
Или
(λxy.y x) z
Это важно, поскольку действительный лямбда-expession находится в виде Хх. M, а не λx M, или используя синтаксический сахар, вы можете написать λxy.M, но не λxλy.M, и это (λx.λy.yx) запутывает, потому что оно похоже на приложение.
Я уменьшит как (λx.λy.y x) z
и (λx.λy.yx) z
1) (λx.λy.y x) z
2) уменьшают (λx.λy.y x)
путем применения х к λx.λy.y
, поэтому (λx.λy.y x) z
сводится к λy.y z
3) снизить λy.y z
путем применения г к λy.y z
, то результат будет be z.
А если вы имеете в виду (λx.λy.yx)
г
1) (λx.λy.yx) z
2) λx.(λy.yx) z
3) Нанести г на первой абстракции: λy.yz
4) Ничто, чтобы уменьшить результат не является: λy.yz
Я рекомендую вам посмотреть на определение лямбда-исчисления и понять разницу между приложением, абстракцией и переменной.
Также на ранних этапах лучше использовать() и всегда писать лямбда-выражения расширенным образом, поэтому вы будете делать меньше ошибок.