{Browse {Run [lambda(x x) y]}} %y {Browse {Run [[lambda(x x) lambda(x x)] lambda(y y)] }} %lambda(y y) {Browse {Run [lambda(x y) z]}} %y {Browse {Run [lambda(x y) x]}} %y {Browse {Run [lambda(x x) x]}} %x %%%%%%%%%% %Numbers % %%%%%%%%%% % 0 {Browse {Run lambda(x x)}} %lambda(x x) % Succ 0 {Browse {Run [lambda(n lambda(x n)) lambda(x x)] }} %lambda(x lambda(x x)) % Pred Succ 0 {Browse {Run [lambda(n [n lambda(x x)]) [lambda(n lambda(x n)) lambda(x x)]] }} %lambda(x x) % Succ Succ 0 {Browse {Run [lambda(n lambda(x n)) [lambda(n lambda(x n)) lambda(x x)]] }} %lambda(x lambda(x lambda(x x))) % Succ Pred Succ 0 {Browse {Run [lambda(n lambda(x n)) [lambda(n [n lambda(x x)]) [lambda(n lambda(x n)) lambda(x x)]]] }} %lambda(x lambda(x x)) %%%%%%%%%%% %Booleans % %%%%%%%%%%% % false {Browse {Run lambda(x lambda(y y))}} %lambda(x lambda(y y)) % true {Browse {Run lambda(x lambda(y x))}} %lambda(x lambda(y x)) % if {Browse {Run lambda(b lambda(t lambda(e [[b t] e])))}} %lambda(b b) % if true 0 1 {Browse {Run [[[lambda(b lambda(t lambda(e [[b t] e]))) lambda(x lambda(y x))] lambda(x x)] lambda(x lambda(x x))] }} %lambda(x x) % if false 0 1 {Browse {Run [[[lambda(b lambda(t lambda(e [[b t] e]))) lambda(x lambda(y y))] lambda(x x)] lambda(x lambda(x x))] }} %lambda(x lambda(x x))