Function lambda_calculus::arithmetic::is_zero
[−]
[src]
pub fn is_zero() -> Term
Applied to a Church-encoded number it produces a Church-encoded boolean, indicating whether its argument is equal to zero.
IS_ZERO := λn.n (λx.FALSE) TRUE = λ 1 (λ FALSE) TRUE
Example
use lambda_calculus::arithmetic::{zero, is_zero}; use lambda_calculus::booleans::tru; let mut expr = is_zero().app(zero()); expr.beta_full(); assert_eq!(expr, tru());