Source

Prelude


  1. let fix f = f (fix f) fact = fix $ \ f n -> if n == 0 then 1 else n * f (n - 1) in fact 4
  2. let fix f = f (fix f) fact = fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) in fact 4
  3. let fix f = f (fix f) fact = (\ f n -> if n == 0 then 1 else n * f (n - 1)) (fix (\ f n -> if n == 0 then 1 else n * f (n - 1))) in fact 4
  4. let fix f = f (fix f) fact = \ n -> if n == 0 then 1 else n * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (n - 1) in fact 4
  5. let fix f = f (fix f) in (\ n -> if n == 0 then 1 else n * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (n - 1)) 4
  6. let fix f = f (fix f) in if 4 == 0 then 1 else 4 * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1)
  7. let fix f = f (fix f) in if False then 1 else 4 * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1)
  8. let fix f = f (fix f) in 4 * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1)
  9. let fix f = f (fix f) in 4 * (\ f n -> if n == 0 then 1 else n * f (n - 1)) (fix (\ f n -> if n == 0 then 1 else n * f (n - 1))) (4 - 1)
  10. let fix f = f (fix f) in 4 * if 4 - 1 == 0 then 1 else (4 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1)
  11. let fix f = f (fix f) in 4 * if 3 == 0 then 1 else (4 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1)
  12. let fix f = f (fix f) in 4 * if False then 1 else (4 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1)
  13. let fix f = f (fix f) in 4 * ((4 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1))
  14. let fix f = f (fix f) in 4 * (3 * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1))
  15. let fix f = f (fix f) in 4 * (3 * (\ f n -> if n == 0 then 1 else n * f (n - 1)) (fix (\ f n -> if n == 0 then 1 else n * f (n - 1))) (4 - 1 - 1))
  16. let fix f = f (fix f) in 4 * (3 * if 4 - 1 - 1 == 0 then 1 else (4 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1))
  17. let fix f = f (fix f) in 4 * (3 * if 3 - 1 == 0 then 1 else (4 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1))
  18. let fix f = f (fix f) in 4 * (3 * if 2 == 0 then 1 else (4 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1))
  19. let fix f = f (fix f) in 4 * (3 * if False then 1 else (4 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1))
  20. let fix f = f (fix f) in 4 * (3 * ((4 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1)))
  21. let fix f = f (fix f) in 4 * (3 * ((3 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1)))
  22. let fix f = f (fix f) in 4 * (3 * (2 * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1)))
  23. let fix f = f (fix f) in 4 * (3 * (2 * (\ f n -> if n == 0 then 1 else n * f (n - 1)) (fix (\ f n -> if n == 0 then 1 else n * f (n - 1))) (4 - 1 - 1 - 1)))
  24. let fix f = f (fix f) in 4 * (3 * (2 * if 4 - 1 - 1 - 1 == 0 then 1 else (4 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1)))
  25. let fix f = f (fix f) in 4 * (3 * (2 * if 3 - 1 - 1 == 0 then 1 else (4 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1)))
  26. let fix f = f (fix f) in 4 * (3 * (2 * if 2 - 1 == 0 then 1 else (4 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1)))
  27. let fix f = f (fix f) in 4 * (3 * (2 * if 1 == 0 then 1 else (4 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1)))
  28. let fix f = f (fix f) in 4 * (3 * (2 * if False then 1 else (4 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1)))
  29. let fix f = f (fix f) in 4 * (3 * (2 * ((4 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1))))
  30. let fix f = f (fix f) in 4 * (3 * (2 * ((3 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1))))
  31. let fix f = f (fix f) in 4 * (3 * (2 * ((2 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1))))
  32. let fix f = f (fix f) in 4 * (3 * (2 * (1 * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1))))
  33. let fix f = f (fix f) in 4 * (3 * (2 * (1 * (\ f n -> if n == 0 then 1 else n * f (n - 1)) (fix (\ f n -> if n == 0 then 1 else n * f (n - 1))) (4 - 1 - 1 - 1 - 1))))
  34. let fix f = f (fix f) in 4 * (3 * (2 * (1 * if 4 - 1 - 1 - 1 - 1 == 0 then 1 else (4 - 1 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1 - 1))))
  35. let fix f = f (fix f) in 4 * (3 * (2 * (1 * if 3 - 1 - 1 - 1 == 0 then 1 else (4 - 1 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1 - 1))))
  36. let fix f = f (fix f) in 4 * (3 * (2 * (1 * if 2 - 1 - 1 == 0 then 1 else (4 - 1 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1 - 1))))
  37. let fix f = f (fix f) in 4 * (3 * (2 * (1 * if 1 - 1 == 0 then 1 else (4 - 1 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1 - 1))))
  38. let fix f = f (fix f) in 4 * (3 * (2 * (1 * if 0 == 0 then 1 else (4 - 1 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1 - 1))))
  39. let fix f = f (fix f) in 4 * (3 * (2 * (1 * if True then 1 else (4 - 1 - 1 - 1 - 1) * fix (\ f n -> if n == 0 then 1 else n * f (n - 1)) (4 - 1 - 1 - 1 - 1 - 1))))
  40. 4 * (3 * (2 * (1 * 1)))
  41. 4 * (3 * (2 * 1))
  42. 4 * (3 * 2)
  43. 4 * 6
  44. 24