Function lambda_calculus::combinators::K

source ·
pub fn K() -> Term
Expand description

K - the constant / discarding combinator; equivalent to boolean::tru.

K ≡ λxy.x ≡ λ λ 2 ≡ TRUE

Example

use lambda_calculus::combinators::K;
use lambda_calculus::*;

assert_eq!(beta(app!(K(), Var(1), Var(2)), NOR, 0), Var(1));
assert_eq!(beta(app!(K(), Var(2), Var(1)), NOR, 0), Var(2));