Function lambda_calculus::booleans::and
[−]
[src]
pub fn and() -> Term
Applied to two Church-encoded booleans it returns their Church-encoded conjunction.
AND := λpq.p q p = λ λ 2 1 2
Examples
use lambda_calculus::booleans::{and, tru, fls}; use lambda_calculus::reduction::beta_full; assert_eq!(beta_full(and().app(tru()).app(tru())), tru()); assert_eq!(beta_full(and().app(tru()).app(fls())), fls()); assert_eq!(beta_full(and().app(fls()).app(tru())), fls()); assert_eq!(beta_full(and().app(fls()).app(fls())), fls());