open Num let fib n = let rec fib_aux f0 f1 count = match count with | 0 -> f0 | 1 -> f1 | _ -> fib_aux f1 (f1 +/ f0) (count - 1) in fib_aux (num_of_int 0) (num_of_int 1) n