Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.58 KB | None | 0 0
  1. zero = lambda s.lambda z.z;
  2. one = lambda s.lambda z.s z;
  3. two = lambda s.lambda z.s (s z);
  4. three = lambda s.lambda z.s (s (s z));
  5.  
  6. succ = lambda n.lambda s.lambda z.s (n s z);
  7. plus = lambda n.lambda m.lambda s.lambda z.n s (m s z);
  8. times = lambda n.lambda m.lambda s.lambda z.n (m s) z;
  9.  
  10. true = lambda x.lambda y.x;
  11. false = lambda x.lambda y.y;
  12.  
  13. if = lambda p.lambda a.lambda b.p a b;
  14.  
  15. pair = lambda x.lambda y.lambda f.f x y;
  16. fst = lambda p.p true;
  17. snd = lambda p.p false;
  18.  
  19. pred = lambda n.fst (n (lambda p.pair (snd p) (succ (snd p))) (pair zero zero));
  20.  
  21. iszero = lambda n.n (lambda x.false) true;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement